@charset "utf-8";
/* ==========================================================================
   storeFound.css
   用途：訪山茶店專用樣式＋兩個門市頁面共用樣式。
   因本檔在 storeStar.css 之後載入，共用修正統一放在本檔底部。
   HTML 載入順序請維持：storeStar.css → storeFound.css
   ========================================================================== */
.bg_found {
  background: url("../images/allBg.jpg") #0f0f0f;
}
.view_storeFound {
  background: none;
  overflow-x: hidden;
  /*  background: url(../images/wine.png) 114vh 54% no-repeat;
  background-size: 15%;*/
}
.view_storeFound .poem {
  color: #393939;
  line-height: 3em;
  margin-top: 0;
}
.view_storeFound .poem p {
  position: relative;
  margin: 0 0 10px 0;
  padding-left: 12px; /* 留空間給線 */
}
.view_storeFound .poem p::before {
  content: "";
  position: absolute;
  left: 26px; /* 線靠最左邊 */
  top: 0;
  bottom: 0;
  width: 1px;
  background: #7f7f7f; /* 線的顏色 */
}
.view_storeFound .star_area {
  margin-top: 10%;
}
.view_storeFound .meals_title h2 {
  color: #393939;
  font-weight: bold;
}
.view_storeFound .star_title .tms_title .tms_titleWord {
  color: #393939;
}
.view_storeFound .hatch_title h2 {
  color: #393939;
  font-family: 'Noto Serif TC', serif;
  font-size: 28px;
  font-weight: bold;
}
.view_storeFound .hatch_space_box p {
  color: #393939;
}
.view_storeFound .storeFound_page {
  background: url("../images/cup_img.png") no-repeat top right;
  background-size: 32%;
  width: 100%;
  max-width: 100%;
}
.view_storeFound .star_area_poem {
  display: flex;
  left: 6%;
  margin-top: 10%;
  /* height: 620px;*/
}
.view_storeFound .visit_link span {
  opacity: 0.8;
  color: #C59644;
}
.slick-dots li button:before {
  color: #8d6e39;
}
.cup_img {
  display: flex;
  justify-content: center;
  margin: 5% auto;
  position: relative;
  z-index: 2;
}
.venus_cup {
  background: url(../images/venus_cup.png) no-repeat center center;
  background-size: contain;
  width: 270px;
  height: 355px;
  margin: 0 auto;
  position: relative;
  top: 35vh;
  left: -10vh;
  z-index: 1;
  pointer-events: none;
}
.view_storeFound .add_bt_wr .bt-chain_b input {
  font-size: 14px;
  background: #4994C4;
  color: #fff;
  width: 180px;
  padding: 14px 60px;
  border-radius: 4px;
  letter-spacing: 1px;
}
.view_storeFound .add_bt_wr .bt-chain_b input:hover {
  background: #C59644;
  cursor: pointer;
}
.view_storeFound .star_tag {
  width: 600px;
  right: -76vh;
}
.view_storeFound .star_address li {
  color: #393939;
}
.view_storeFound .meals_pageBg {
  background: url(../images/wine.png) no-repeat;
  background-size: 16%;
  background-position: 116vh 6vh;
}
.view_storeFound .hatch_page {
  background: url("../images/flower-3-op.png") no-repeat right 72%;
}
/* 更新 店家連結*/
.view_storeFound .visit_link {
  border-top: 1px solid #bbb7af;
  border-bottom: 1px solid #bbb7af;
}
.view_storeFound .link_modle_s {
  color: #C59644;
  font-family: 'Noto Serif TC', serif, "微軟正黑體";
  font-size: 21px;
  line-height: 21px;
  font-weight: bold;
  letter-spacing: 2px;
}
.view_storeFound .icon-arrow-right-circle {
  color: #C59644;
}
/* 滑入整個超連結時變紅色 */
.view_storeFound .visit_link:hover .link_modle_s, .view_storeFound .visit_link:hover .icon-arrow-right-circle {
  color: #007bff;
}
.view_storeFound .link_modle li {
  font-weight: bold;
  color: #C59644;
}
.view_storeFound .link_modle li:hover {}
.view_storeFound .link_modle a {
  color: #C59644;
}
.view_storeFound .link_modle a:hover {
  color: #007bff;
}
.view_storeFound .link_modle span.modle_line {
  background-color: #C59644;
}
@media (max-width: 1336px) {
  .view_storeFound .star_tag {
    background: #fff;
    width: 100%;
    padding: 3% 7%;
    text-align: center;
    border-radius: 8px;
    position: relative;
    top: 0;
    right: 0;
    z-index: 2;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
  }
  .view_storeFound .meals_pageBg {
    background-size: 22%;
    background-position: 100vh 0vh;
  }
}
@media (max-width: 1280px) {
  .view_storeFound .meals_pageBg {
    background-size: 22%;
    background-position: 133vh 4vh;
  }
  .view_storeFound .hatch_space {
    margin-left: 105vh;
  }
  .view_storeFound .hatch_img2 {
    width: 20%;
    margin-left: 146vh;
    height: 300px;
    margin-top: -4vh;
  }
}
/* (max-width: 1180px) and (orientation: landscape)這裡的樣式只會在手機橫式且寬度 ≤1180 時套用 */
@media (max-width: 1180px) and (orientation: landscape) {
  .view_storeFound .hatch_space {
    margin-left: 90vh;
  }
  .view_storeFound .hatch_img2 {
    margin-left: 118vh;
  }
}
@media (max-width: 1024px) {
  .view_storeFound .meals_pageBg {
    background-size: 22%;
    background-position: 145vh 0vh;
  }
}
@media (max-width: 820px) {
  .view_storeFound .storeFound_page {
    background-size: 46%;
  }
  .view_storeFound .star_area {
    margin-top: 22%;
  }
  .view_storeFound .hatch_spaceWrap {
    margin-top: 60%;
  }
  .view_storeFound .meals_pageBg {
    background-size: 35%;
    background-position: 51vh 0vh;
  }
  .view_storeFound .hatch_page {
    width: 90%;
    margin: 0 auto;
    background: url(../images/flower-3-op.png) no-repeat 31vh 10%;
  }
  .view_storeFound .hatch_space {
    position: relative;
    z-index: 10;
    width: 90%;
    margin: 0 auto;
  }
  .view_storeFound .hatch_spaceWrap {
    margin-top: 42vh;
    z-index: 2;
    margin: 5% auto;
    margin-top: 56%;
  }
  .view_storeFound .hatch_img1 {
    width: 100%;
    margin-top: 0;
    margin-left: 0;
  }
  .view_storeFound .hatch_img2 {
    width: 30%;
    margin-left: 48vh;
    height: 267px;
    margin-top: 10%;
  }
  .view_storeFound .hatch_img3 {
    margin-top: -16vh;
    margin-left: 0;
    transform: translateX(-10%);
  }
}
@media (max-width: 500px) {
  .view_storeFound .hatch_spaceWrap {
    margin-top: 80%;
  }
  .venus_cup {
    width: 155px;
  }
  .view_storeFound .star_area_poem {
    display: flex;
    left: 6%;
    margin-top: 10%;
    height: 400px;
  }
  .view_storeFound .add_bt_wr .bt-chain input, .view_storeFound .add_bt_wr .bt-chain_b input {
    /*  width: 100%;*/ width: 150px;
  }
  .view_storeFound .hatch_page {
    width: 90%;
    margin: 0 auto;
    background: url(../images/flower-3-op.png) no-repeat right 100%;
  }
  .view_storeFound .hatch_img1 {
    width: 90%;
    margin-top: 0;
    margin-left: 0;
  }
  .view_storeFound .hatch_img2 {
    width: 35%;
    margin-left: 36vh;
    height: 174px;
    margin-top: 10%;
  }
  .view_storeFound .hatch_img3 {
    width: 75%;
    height: 216px;
    margin-top: 10%;
    margin-left: 0;
  }
}
/* ===== 2026-07 hatch_page RWD 修正 =====
   990px 以下直接使用原 820px 的版型邏輯，並移除 vh 位移造成的橫式跑版。 */
@media (max-width: 990px) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    box-sizing: border-box;
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 56px 0;
    overflow: hidden;
  }

  body.bg_star .hatch_pageWrap,
  body.bg_found .hatch_pageWrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    position: relative;
    z-index: 10;
    width: 90%;
    margin: 0 auto 36px;
  }

  body.bg_star .hatch_spaceWrap,
  body.bg_found .hatch_spaceWrap {
    position: relative;
    z-index: 2;
    width: 100%;
    margin: 0 auto;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(150px, .75fr);
    grid-template-rows: repeat(2, minmax(0, auto));
    gap: 14px;
    align-items: stretch;
    width: 100%;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1,
  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2,
  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    position: relative;
    inset: auto;
    transform: none;
    margin: 0;
    max-width: none;
    overflow: hidden;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    grid-column: 1;
    grid-row: 1 / 3;
    width: 100%;
    min-height: 100%;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    grid-column: 2;
    grid-row: 1;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 5;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 3;
  }

  body.bg_star .hatch_img1 img,
  body.bg_found .hatch_img1 img,
  body.bg_star .hatch_img2 img,
  body.bg_found .hatch_img2 img,
  body.bg_star .hatch_img3 img,
  body.bg_found .hatch_img3 img {
    position: static;
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    object-fit: cover;
  }
}

/* 手機橫式：文字與圖片左右排列，避免 vh 位移、內容重疊與頁面過長。 */
@media (max-width: 990px) and (orientation: landscape) and (max-height: 600px) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    width: 94%;
    padding: 32px 0;
  }

  body.bg_star .hatch_pageWrap,
  body.bg_found .hatch_pageWrap {
    display: grid;
    grid-template-columns: minmax(230px, .82fr) minmax(0, 1.45fr);
    gap: 28px;
    align-items: center;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    width: 100%;
    margin: 0;
  }

  body.bg_star .hatch_music,
  body.bg_found .hatch_music {
    width: min(230px, 100%);
  }

  body.bg_star .hatch_title,
  body.bg_found .hatch_title {
    margin: 18px 0;
  }

  body.bg_star .hatch_title h2,
  body.bg_found .hatch_title h2 {
    font-size: clamp(24px, 3.5vw, 32px);
  }

  body.bg_star .hatch_title span,
  body.bg_found .hatch_title span {
    font-size: clamp(30px, 4vw, 38px);
  }

  body.bg_star .hatch_space_box,
  body.bg_found .hatch_space_box {
    margin: 18px 0 0;
  }

  body.bg_star .hatch_space_box p,
  body.bg_found .hatch_space_box p {
    font-size: 14px;
    line-height: 1.75;
  }

  body.bg_star .hatch_spaceWrap,
  body.bg_found .hatch_spaceWrap {
    width: 100%;
    margin: 0;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: minmax(0, 1.45fr) minmax(105px, .72fr);
    gap: 10px;
  }
}

/* 直式小手機：主圖置頂，另外兩張並排，維持可閱讀尺寸。 */
@media (max-width: 600px) and (orientation: portrait) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    width: 90%;
    padding: 40px 0;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    width: 100%;
    margin-bottom: 26px;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto auto;
    gap: 10px;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    grid-column: 1 / 3;
    grid-row: 1;
    min-height: 0;
    aspect-ratio: 16 / 10;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    grid-column: 1;
    grid-row: 2;
    aspect-ratio: 4 / 5;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    grid-column: 2;
    grid-row: 2;
    aspect-ratio: 4 / 5;
  }
}

/* ===== 2026-07-17 hatch_page 直式／橫式最終修正 ===== */
/* 平板與手機直式：文字在上，主圖完整呈現，下方兩張錯落排列。 */
@media (max-width: 990px) and (orientation: portrait) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    width: 100%;
    padding: clamp(42px, 7vw, 72px) clamp(24px, 5vw, 54px);
    margin: 0 auto;
    overflow: visible;
  }

  body.bg_star .hatch_pageWrap,
  body.bg_found .hatch_pageWrap {
    display: block;
    width: 100%;
    margin: 0;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    width: 100%;
    max-width: 720px;
    margin: 0 auto clamp(34px, 6vw, 56px);
  }

  body.bg_star .hatch_spaceWrap,
  body.bg_found .hatch_spaceWrap {
    width: 100%;
    margin: 0 auto;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(150px, .72fr);
    grid-template-rows: auto auto;
    column-gap: clamp(14px, 3vw, 28px);
    row-gap: clamp(24px, 5vw, 50px);
    width: 100%;
    align-items: start;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1,
  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2,
  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    position: relative;
    inset: auto;
    transform: none;
    margin: 0;
    overflow: hidden;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    grid-column: 1 / 3;
    grid-row: 1;
    width: 100%;
    aspect-ratio: 16 / 10;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    aspect-ratio: 3 / 4;
    margin-top: clamp(0px, 3vw, 28px);
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    grid-column: 1;
    grid-row: 2;
    width: min(100%, 520px);
    aspect-ratio: 4 / 3;
  }

  body.bg_star .hatch_img1 img,
  body.bg_found .hatch_img1 img,
  body.bg_star .hatch_img2 img,
  body.bg_found .hatch_img2 img,
  body.bg_star .hatch_img3 img,
  body.bg_found .hatch_img3 img {
    position: static;
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    object-fit: cover;
  }
}

/* 小手機直式：保持相同視覺順序，但縮小間距，避免圖片過窄。 */
@media (max-width: 560px) and (orientation: portrait) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    padding: 38px 20px 52px;
  }

  body.bg_star .hatch_title,
  body.bg_found .hatch_title {
    margin: 24px 0;
  }

  body.bg_star .hatch_title h2,
  body.bg_found .hatch_title h2 {
    font-size: 27px;
  }

  body.bg_star .hatch_title span,
  body.bg_found .hatch_title span {
    font-size: 32px;
  }

  body.bg_star .hatch_space_box p,
  body.bg_found .hatch_space_box p {
    font-size: 14px;
    line-height: 1.85;
    letter-spacing: .5px;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: minmax(0, 1fr) minmax(110px, .55fr);
    column-gap: 12px;
    row-gap: 22px;
  }
}

/* 手機橫式：左文右圖，不使用 vh 位移，不產生水平捲軸。 */
@media (max-width: 990px) and (orientation: landscape) and (max-height: 620px) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    width: 100%;
    padding: 28px 34px 34px;
    overflow: hidden;
  }

  body.bg_star .hatch_pageWrap,
  body.bg_found .hatch_pageWrap {
    display: grid;
    grid-template-columns: minmax(220px, .82fr) minmax(0, 1.45fr);
    gap: clamp(22px, 4vw, 48px);
    align-items: center;
    width: 100%;
    margin: 0;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space,
  body.bg_star .hatch_spaceWrap,
  body.bg_found .hatch_spaceWrap {
    width: 100%;
    margin: 0;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(90px, .58fr);
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
    height: min(68vh, 410px);
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    grid-column: 1;
    grid-row: 1 / 3;
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    grid-column: 2;
    grid-row: 1;
    width: 100%;
    height: 100%;
    margin: 0;
    aspect-ratio: auto;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    height: 100%;
    margin: 0;
    aspect-ratio: auto;
  }

  body.bg_star .hatch_img1 img,
  body.bg_found .hatch_img1 img,
  body.bg_star .hatch_img2 img,
  body.bg_found .hatch_img2 img,
  body.bg_star .hatch_img3 img,
  body.bg_found .hatch_img3 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/* ===== 2026-07-17 手機直式沿用平板錯落構圖 ===== */
@media (max-width: 560px) and (orientation: portrait) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    box-sizing: border-box;
    width: 100%;
    padding: 38px 18px 54px;
    overflow: hidden;
  }

  body.bg_star .hatch_pageWrap,
  body.bg_found .hatch_pageWrap,
  body.bg_star .hatch_spaceWrap,
  body.bg_found .hatch_spaceWrap {
    width: 100%;
    max-width: none;
    margin-left: auto;
    margin-right: auto;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    width: 100%;
    margin: 0 0 30px;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(0, .92fr);
    grid-template-rows: auto auto;
    column-gap: 16px;
    row-gap: 34px;
    width: 100%;
    align-items: start;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    grid-column: 1 / -1;
    grid-row: 1;
    width: 100%;
    aspect-ratio: 1.53 / 1;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    aspect-ratio: 1.08 / 1;
    margin: 62px 0 0 -18px;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    aspect-ratio: .78 / 1;
    margin: 0;
  }

  body.bg_star .hatch_img1 img,
  body.bg_found .hatch_img1 img,
  body.bg_star .hatch_img2 img,
  body.bg_found .hatch_img2 img,
  body.bg_star .hatch_img3 img,
  body.bg_found .hatch_img3 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
}

/* 更窄手機維持同構圖，只縮小留白，不改成單欄。 */
@media (max-width: 390px) and (orientation: portrait) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    padding-left: 14px;
    padding-right: 14px;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, .9fr);
    column-gap: 12px;
    row-gap: 28px;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    margin-top: 44px;
    margin-left: -14px;
  }
}


/* ===== 2026-07-17 hatch_page 最終版型修正 v8 =====
   990 以下（含平板直式／手機直式）統一採用：
   上方 hatch_img1 大橫圖置中、右中 hatch_img2 直圖、下方左 hatch_img3 橫圖。
*/
@media (max-width: 990px) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    height: auto !important;
    min-height: 0 !important;
    padding: 56px 24px 90px !important;
    overflow: hidden;
  }

  body.bg_star .hatch_pageWrap,
  body.bg_found .hatch_pageWrap {
    display: block !important;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    width: 100%;
    margin: 0 0 34px;
  }

  body.bg_star .hatch_spaceWrap,
  body.bg_found .hatch_spaceWrap {
    width: 100%;
    margin: 0 auto;
    z-index: 2;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    display: grid !important;
    grid-template-columns: minmax(0, 1.42fr) minmax(0, 0.9fr);
    grid-template-areas:
      "img1 img1"
      "img3 img2";
    column-gap: 22px;
    row-gap: 34px;
    width: 100%;
    align-items: start;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1,
  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2,
  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    position: relative;
    height: auto !important;
    margin: 0 !important;
    transform: none !important;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    grid-area: img1;
    width: min(100%, 760px);
    justify-self: start;
    aspect-ratio: 1.6 / 1;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    grid-area: img2;
    width: min(100%, 240px);
    justify-self: end;
    align-self: start;
    margin-top: 10px !important;
    aspect-ratio: 0.72 / 1;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    grid-area: img3;
    width: min(100%, 520px);
    justify-self: start;
    align-self: start;
    margin-top: 56px !important;
    aspect-ratio: 1.08 / 1;
  }

  body.bg_star .hatch_img1 img,
  body.bg_found .hatch_img1 img,
  body.bg_star .hatch_img2 img,
  body.bg_found .hatch_img2 img,
  body.bg_star .hatch_img3 img,
  body.bg_found .hatch_img3 img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

@media (max-width: 820px) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    padding-left: 18px !important;
    padding-right: 18px !important;
    padding-bottom: 76px !important;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: minmax(0, 1.34fr) minmax(0, 0.86fr);
    column-gap: 16px;
    row-gap: 28px;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    width: 100%;
    aspect-ratio: 1.58 / 1;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    width: 100%;
    max-width: 210px;
    margin-top: 2px !important;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    width: 100%;
    max-width: 430px;
    margin-top: 38px !important;
  }
}

@media (max-width: 500px) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    padding-top: 44px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 64px !important;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    margin-bottom: 28px;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: minmax(0, 1.36fr) minmax(0, 0.82fr);
    column-gap: 14px;
    row-gap: 24px;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    aspect-ratio: 1.58 / 1;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    max-width: 160px;
    margin-top: 6px !important;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    max-width: 360px;
    margin-top: 44px !important;
  }
}

@media (max-width: 390px) {
  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: minmax(0, 1.28fr) minmax(0, 0.8fr);
    column-gap: 12px;
    row-gap: 22px;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    max-width: 142px;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    max-width: 320px;
    margin-top: 36px !important;
  }
}


/* ===== 2026-07-17 hatch_page 橫式裝置修正 v9 =====
   修正手機／平板橫式圖片互壓：
   hatch_img1 上方大橫圖置中、hatch_img2 右中直圖、hatch_img3 左下橫圖。
*/
@media (max-width: 1024px) and (orientation: landscape) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    height: auto !important;
    min-height: 0 !important;
    padding: 40px 18px 64px !important;
    overflow: hidden;
  }

  body.bg_star .hatch_pageWrap,
  body.bg_found .hatch_pageWrap {
    display: block !important;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    width: 100%;
    margin: 0 0 22px;
  }

  body.bg_star .hatch_spaceWrap,
  body.bg_found .hatch_spaceWrap {
    width: 100%;
    margin: 0 auto !important;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    display: grid !important;
    grid-template-columns: minmax(0, 1.36fr) minmax(0, 0.78fr);
    grid-template-areas:
      "img1 img1"
      "img3 img2";
    column-gap: 14px;
    row-gap: 18px;
    width: 100%;
    align-items: start;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1,
  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2,
  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    position: relative;
    margin: 0 !important;
    transform: none !important;
    overflow: hidden;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    grid-area: img1;
    width: 100%;
    justify-self: center;
    aspect-ratio: 1.9 / 1;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    grid-area: img2;
    width: 100%;
    max-width: 175px;
    justify-self: end;
    align-self: start;
    margin-top: 0 !important;
    aspect-ratio: 0.72 / 1;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    grid-area: img3;
    width: 100%;
    max-width: 440px;
    justify-self: start;
    align-self: start;
    margin-top: 28px !important;
    aspect-ratio: 1.18 / 1;
  }

  body.bg_star .hatch_img1 img,
  body.bg_found .hatch_img1 img,
  body.bg_star .hatch_img2 img,
  body.bg_found .hatch_img2 img,
  body.bg_star .hatch_img3 img,
  body.bg_found .hatch_img3 img {
    position: static !important;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    object-fit: cover;
    display: block;
  }
}

@media (max-width: 820px) and (orientation: landscape) {
  body.bg_star .hatch_page,
  body.bg_found .hatch_page {
    padding: 24px 12px 46px !important;
  }

  body.bg_star .hatch_space,
  body.bg_found .hatch_space {
    margin-bottom: 16px;
  }

  body.bg_star .hatch_title,
  body.bg_found .hatch_title {
    margin: 8px 0 12px;
  }

  body.bg_star .hatch_title h2,
  body.bg_found .hatch_title h2 {
    font-size: clamp(24px, 4vw, 30px);
  }

  body.bg_star .hatch_space_box p,
  body.bg_found .hatch_space_box p {
    font-size: 14px;
    line-height: 1.7;
  }

  body.bg_star .hatch_spaceImg,
  body.bg_found .hatch_spaceImg {
    grid-template-columns: minmax(0, 1.32fr) minmax(0, 0.74fr);
    column-gap: 12px;
    row-gap: 14px;
  }

  body.bg_star .hatch_img1,
  body.bg_found .hatch_img1 {
    aspect-ratio: 2.05 / 1;
  }

  body.bg_star .hatch_img2,
  body.bg_found .hatch_img2 {
    max-width: 145px;
  }

  body.bg_star .hatch_img3,
  body.bg_found .hatch_img3 {
    max-width: 360px;
    margin-top: 20px !important;
  }
}

/* ========================================================================== */
/*  STORE PAGES｜兩個門市頁面共用的 Meals 輪播                              */
/*  storeStar.html 與 storeFound.html 皆會載入本檔，請勿再複製到 storeStar.css */
/* ========================================================================== */

#myCarousel .carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

#myCarousel .carousel-item img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 8px;
}

#myCarousel.carousel-fade .carousel-item,
#myCarousel .carousel-fade .carousel-item {
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

#myCarousel.carousel-fade .carousel-item.active,
#myCarousel.carousel-fade .carousel-item-next.carousel-item-left,
#myCarousel.carousel-fade .carousel-item-prev.carousel-item-right,
#myCarousel .carousel-fade .carousel-item.active,
#myCarousel .carousel-fade .carousel-item-next.carousel-item-left,
#myCarousel .carousel-fade .carousel-item-prev.carousel-item-right {
  opacity: 1;
}

/* 左右箭頭區域增加淡黑漸層，避免亮色照片讓白色箭頭不明顯。 */
#myCarousel .carousel-control-prev,
#myCarousel .carousel-control-next {
  width: 15%;
  opacity: 1;
  z-index: 5;
  overflow: hidden;
}

#myCarousel .carousel-control-prev::before,
#myCarousel .carousel-control-next::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

#myCarousel .carousel-control-prev::before {
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.5) 0%,
    rgba(0, 0, 0, 0.22) 45%,
    rgba(0, 0, 0, 0) 100%
  );
}

#myCarousel .carousel-control-next::before {
  background: linear-gradient(
    to left,
    rgba(0, 0, 0, 0.5) 0%,
    rgba(0, 0, 0, 0.22) 45%,
    rgba(0, 0, 0, 0) 100%
  );
}

#myCarousel .carousel-control-prev-icon,
#myCarousel .carousel-control-next-icon {
  position: relative;
  z-index: 2;
  width: 24px;
  height: 24px;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.9));
}

@media (max-width: 500px) {
  #myCarousel .carousel-control-prev,
  #myCarousel .carousel-control-next {
    width: 18%;
  }

  #myCarousel .carousel-control-prev-icon,
  #myCarousel .carousel-control-next-icon {
    width: 18px;
    height: 18px;
  }
}


/* ===== hatch_page 最終 RWD（Vue 整合） =====
   768–990px：平板版，直式／橫式共用。
   767px 以下：手機版，直式／橫式共用。
   直接寫在原 storeFound.css，不另加覆蓋檔。 */
@media (min-width: 768px) and (max-width: 990px) {
  .view_storeFound .hatch_page {
    box-sizing: border-box;
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 56px 0;
    overflow: hidden;
  }
  .view_storeFound .hatch_pageWrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
  }
  .view_storeFound .hatch_space {
    position: relative;
    z-index: 10;
    width: 90%;
    margin: 0 auto 36px;
  }
  .view_storeFound .hatch_spaceWrap {
    position: relative;
    z-index: 2;
    width: 100%;
    margin: 0 auto;
  }
  .view_storeFound .hatch_spaceImg {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(180px, 1fr);
    grid-template-areas:
      "main main"
      "wide tall";
    gap: 20px;
    width: 100%;
    align-items: stretch;
  }
  .view_storeFound .hatch_img1,
  .view_storeFound .hatch_img2,
  .view_storeFound .hatch_img3 {
    position: relative;
    inset: auto;
    box-sizing: border-box;
    margin: 0;
    transform: none;
    overflow: hidden;
  }
  .view_storeFound .hatch_img1 { grid-area: main; width: 100%; height: auto; }
  .view_storeFound .hatch_img3 { grid-area: wide; width: 100%; height: clamp(220px, 31vw, 300px); }
  .view_storeFound .hatch_img2 { grid-area: tall; width: 100%; height: clamp(220px, 31vw, 300px); }
  .view_storeFound .hatch_img1 img,
  .view_storeFound .hatch_img2 img,
  .view_storeFound .hatch_img3 img {
    position: static;
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    object-fit: cover;
  }
  .view_storeFound .hatch_img1 img { height: auto; }
}

@media (max-width: 767px) {
  .view_storeFound .hatch_page {
    box-sizing: border-box;
    display: block;
    width: 90%;
    margin: 0 auto;
    padding: 40px 0;
    overflow: hidden;
  }
  .view_storeFound .hatch_pageWrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
  }
  .view_storeFound .hatch_space {
    position: relative;
    width: 100%;
    margin: 0 0 28px;
  }
  .view_storeFound .hatch_spaceWrap {
    position: relative;
    width: 100%;
    margin: 0;
  }
  .view_storeFound .hatch_spaceImg {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
  }
  .view_storeFound .hatch_img1,
  .view_storeFound .hatch_img2,
  .view_storeFound .hatch_img3 {
    position: relative;
    inset: auto;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    margin: 0;
    transform: none;
    overflow: hidden;
  }
  .view_storeFound .hatch_img1 img,
  .view_storeFound .hatch_img2 img,
  .view_storeFound .hatch_img3 img {
    position: static;
    display: block;
    width: 100%;
    height: auto;
    min-width: 0;
    min-height: 0;
    object-fit: cover;
  }
}

/* ===== hatch_page 最終斷點修正（2026-07-23） =====
   768–990px：平板直式／橫式共用。
   767px 以下：手機直式／橫式共用。
   此區塊放在檔案最末端，清除舊版 absolute、float、負位移與固定高度。 */
@media screen and (min-width: 768px) and (max-width: 990px) {
  body.bg_found .view_storeFound .hatch_page,
  body.bg_star .view_storeStar .hatch_page {
    width: 90%;
    height: auto;
    min-height: 0;
    margin: 0 auto;
    padding: 56px 0;
    overflow: hidden;
    box-sizing: border-box;
  }

  body.bg_found .view_storeFound .hatch_pageWrap,
  body.bg_star .view_storeStar .hatch_pageWrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
  }

  body.bg_found .view_storeFound .hatch_space,
  body.bg_star .view_storeStar .hatch_space {
    position: relative;
    float: none;
    clear: both;
    width: 90%;
    height: auto;
    min-height: 0;
    margin: 0 auto 36px;
    transform: none;
  }

  body.bg_found .view_storeFound .hatch_spaceWrap,
  body.bg_star .view_storeStar .hatch_spaceWrap {
    position: relative;
    float: none;
    clear: both;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    transform: none;
  }

  body.bg_found .view_storeFound .hatch_spaceImg,
  body.bg_star .view_storeStar .hatch_spaceImg {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(180px, 1fr);
    grid-template-areas:
      "main main"
      "wide tall";
    gap: 20px;
    float: none;
    clear: both;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    transform: none;
    overflow: visible;
    box-sizing: border-box;
  }

  body.bg_found .view_storeFound .hatch_img1,
  body.bg_found .view_storeFound .hatch_img2,
  body.bg_found .view_storeFound .hatch_img3,
  body.bg_star .view_storeStar .hatch_img1,
  body.bg_star .view_storeStar .hatch_img2,
  body.bg_star .view_storeStar .hatch_img3 {
    position: relative;
    inset: auto;
    float: none;
    clear: none;
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
    padding: 0;
    transform: none;
    overflow: hidden;
    box-sizing: border-box;
  }

  body.bg_found .view_storeFound .hatch_img1,
  body.bg_star .view_storeStar .hatch_img1 {
    grid-area: main;
    height: auto;
  }

  body.bg_found .view_storeFound .hatch_img3,
  body.bg_star .view_storeStar .hatch_img3 {
    grid-area: wide;
    height: clamp(220px, 31vw, 300px);
  }

  body.bg_found .view_storeFound .hatch_img2,
  body.bg_star .view_storeStar .hatch_img2 {
    grid-area: tall;
    height: clamp(220px, 31vw, 300px);
  }

  body.bg_found .view_storeFound .hatch_img1 img,
  body.bg_found .view_storeFound .hatch_img2 img,
  body.bg_found .view_storeFound .hatch_img3 img,
  body.bg_star .view_storeStar .hatch_img1 img,
  body.bg_star .view_storeStar .hatch_img2 img,
  body.bg_star .view_storeStar .hatch_img3 img {
    position: static;
    display: block;
    float: none;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 0;
    margin: 0;
    transform: none;
    object-fit: cover;
  }

  body.bg_found .view_storeFound .hatch_img1 img,
  body.bg_star .view_storeStar .hatch_img1 img {
    height: auto;
  }
}

@media screen and (max-width: 767px) {
  body.bg_found .view_storeFound .hatch_page,
  body.bg_star .view_storeStar .hatch_page {
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 36px 16px 44px;
    overflow: hidden;
    box-sizing: border-box;
  }

  body.bg_found .view_storeFound .hatch_pageWrap,
  body.bg_star .view_storeStar .hatch_pageWrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
  }

  body.bg_found .view_storeFound .hatch_space,
  body.bg_star .view_storeStar .hatch_space {
    position: relative;
    float: none;
    clear: both;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0 0 24px;
    transform: none;
  }

  body.bg_found .view_storeFound .hatch_spaceWrap,
  body.bg_star .view_storeStar .hatch_spaceWrap {
    position: relative;
    float: none;
    clear: both;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    transform: none;
  }

  body.bg_found .view_storeFound .hatch_spaceImg,
  body.bg_star .view_storeStar .hatch_spaceImg {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 14px;
    float: none;
    clear: both;
    width: 100%;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 0;
    transform: none;
    overflow: visible;
    box-sizing: border-box;
  }

  body.bg_found .view_storeFound .hatch_img1,
  body.bg_found .view_storeFound .hatch_img2,
  body.bg_found .view_storeFound .hatch_img3,
  body.bg_star .view_storeStar .hatch_img1,
  body.bg_star .view_storeStar .hatch_img2,
  body.bg_star .view_storeStar .hatch_img3 {
    position: relative;
    inset: auto;
    display: block;
    flex: 0 0 auto;
    float: none;
    clear: both;
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    margin: 0;
    padding: 0;
    transform: none;
    overflow: hidden;
    box-sizing: border-box;
  }

  body.bg_found .view_storeFound .hatch_img1 img,
  body.bg_found .view_storeFound .hatch_img2 img,
  body.bg_found .view_storeFound .hatch_img3 img,
  body.bg_star .view_storeStar .hatch_img1 img,
  body.bg_star .view_storeStar .hatch_img2 img,
  body.bg_star .view_storeStar .hatch_img3 img {
    position: static;
    display: block;
    float: none;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: auto;
    min-height: 0;
    max-height: none;
    margin: 0;
    transform: none;
    object-fit: cover;
  }
}

@media screen and (max-width: 767px) and (orientation: landscape) {
  body.bg_found .view_storeFound .hatch_page,
  body.bg_star .view_storeStar .hatch_page {
    padding-top: 28px;
    padding-bottom: 36px;
  }

  body.bg_found .view_storeFound .hatch_space,
  body.bg_star .view_storeStar .hatch_space {
    margin-bottom: 20px;
  }

  body.bg_found .view_storeFound .hatch_spaceImg,
  body.bg_star .view_storeStar .hatch_spaceImg {
    gap: 12px;
  }
}
