/* 東京おやこナビ トップページ調整 v1.2 */
.oyako-hide { display:none !important; }

/* キーワード / エリア / 条件を同じ幅にする */
.oyako-search-top-row {
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:20px !important;
  align-items:end !important;
}
.oyako-search-top-row > * { min-width:0 !important; }
.oyako-equal-field {
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
}
.oyako-equal-field input,
.oyako-equal-field select {
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}

/* 「この条件で探す」を昼夜どちらでも高コントラストに */
.oyako-search-submit {
  background:linear-gradient(135deg,#1da1ff,#0879e6) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.35) !important;
  font-weight:800 !important;
  text-shadow:0 1px 1px rgba(0,0,0,.2) !important;
  box-shadow:0 8px 24px rgba(0,123,255,.28) !important;
}
.oyako-search-submit:hover,
.oyako-search-submit:focus {
  filter:brightness(1.08) !important;
  color:#fff !important;
  box-shadow:0 10px 30px rgba(0,153,255,.38) !important;
}
.oyako-search-submit:focus-visible {
  outline:3px solid #fff !important;
  outline-offset:3px !important;
}

/* ヒーロー */
.oyako-refreshed-hero {
  position:relative !important;
  isolation:isolate;
  overflow:hidden;
  min-height:365px;
}
.oyako-refreshed-hero > :not(.oyako-park-illustration) {
  position:relative;
  z-index:2;
}
.oyako-refreshed-hero h1,
.oyako-refreshed-hero h2 { max-width:58%; }
.oyako-refreshed-tagline {
  font-weight:700;
  letter-spacing:.02em;
  max-width:52%;
}
.oyako-park-illustration {
  position:absolute;
  z-index:1;
  right:0;
  top:0;
  width:52%;
  height:100%;
  object-fit:cover;
  object-position:center;
  pointer-events:none;
  opacity:.98;
  -webkit-mask-image:linear-gradient(to right, transparent 0%, rgba(0,0,0,.55) 15%, #000 32%);
  mask-image:linear-gradient(to right, transparent 0%, rgba(0,0,0,.55) 15%, #000 32%);
  transition:opacity .2s ease;
}

/* 今日の公園：静的セクションでも使えるフォールバックカード */
.oyako-today-park-card {
  display:grid;
  grid-template-columns:minmax(160px, 34%) 1fr;
  gap:18px;
  margin:18px 0;
  padding:14px;
  border:1px solid rgba(126,199,255,.25);
  border-radius:18px;
  text-decoration:none !important;
  color:inherit !important;
  background:rgba(255,255,255,.035);
}
.oyako-today-park-card img {
  width:100%;
  height:160px;
  object-fit:cover;
  border-radius:13px;
}
.oyako-today-park-card strong {
  display:block;
  font-size:1.2rem;
  margin-bottom:8px;
}
.oyako-today-park-card p { opacity:.82; }
.oyako-today-park-card span {
  display:inline-block;
  margin-top:6px;
  font-weight:800;
  color:#68c8ff;
}

@media (max-width:900px) {
  .oyako-refreshed-hero h1,
  .oyako-refreshed-hero h2,
  .oyako-refreshed-tagline { max-width:62%; }
  .oyako-park-illustration { width:55%; }
}

@media (max-width:760px) {
  .oyako-search-top-row {
    grid-template-columns:1fr !important;
    gap:14px !important;
  }
  .oyako-refreshed-hero {
    min-height:500px;
    padding-bottom:205px !important;
  }
  .oyako-refreshed-hero h1,
  .oyako-refreshed-hero h2,
  .oyako-refreshed-tagline { max-width:100%; }
  .oyako-park-illustration {
    width:100%;
    height:210px;
    top:auto;
    bottom:0;
    -webkit-mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.65) 18%, #000 40%);
    mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.65) 18%, #000 40%);
  }
  .oyako-today-park-card { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) {
  .oyako-park-illustration { transition:none; }
}
