/* =========================================================
  home.css (Brand Home ONLY)
  Rule:
  - Home page only: body.hk-brand.home
  - Use ONLY .hkdp-home__* (and home-specific blocks)
  - Do NOT style generic .hkdp / h2 / wp-block-heading here
========================================================= */

/* ---------------------------------------------------------
  Home wrapper: small helpers
--------------------------------------------------------- */
body.hk-brand.home .entry-title{ display:none; }

/* Section spacing (home only) */
body.hk-brand.home .hkdp-home__section{ margin-top:120px; }
body.hk-brand.home .hkdp-home__section:first-of-type{ margin-top:60px; }

@media (max-width: 768px){
  body.hk-brand.home .hkdp-home__section{ margin-top:100px; }
  body.hk-brand.home .hkdp-home__section:first-of-type{ margin-top:40px; }
}

/* ---------------------------------------------------------
  HERO
--------------------------------------------------------- */
body.hk-brand.home .hkdp-home__hero{
  position: relative;
  overflow: hidden;
}

body.hk-brand.home .hkdp-home__heroMedia{
  margin: 0;
}

body.hk-brand.home .hkdp-home__heroImg{
  display: block;
  width: 100%;
  height: min(62vh, 520px);
  object-fit: cover;
  opacity: .82;
}

/* overlay */
body.hk-brand.home .hkdp-home__hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background: radial-gradient(1200px 520px at 20% 20%, rgba(0,0,0,.20), rgba(0,0,0,.68));
  pointer-events:none;
}

/* copy */
body.hk-brand.home .hkdp-home__heroCopy{
  position:absolute;
  inset:0;
  z-index:2;

  display:flex;
  align-items:flex-end;

  padding: 28px 0 22px;
}

body.hk-brand.home .hkdp-home__heroInner{
  width: min(1040px, calc(100% - 36px));
  margin: 0 auto;
}

body.hk-brand.home .hkdp-home__title{ margin:0 0 10px; }
body.hk-brand.home .hkdp-home__lead{ margin:0 0 14px; }

@media (max-width: 480px){
  body.hk-brand.home .hkdp-home__heroCopy{ padding: 22px 0 18px; }
  body.hk-brand.home .hkdp-home__heroInner{ width: calc(100% - 28px); }
}

/* ---------------------------------------------------------
  Split layout (home only)
--------------------------------------------------------- */
body.hk-brand.home .hkdp-home__split{
  display:grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap:20px;
  align-items:start;
}
body.hk-brand.home .hkdp-home__splitMedia,
body.hk-brand.home .hkdp-home__splitCopy{ min-width:0; }
body.hk-brand.home .hkdp-home__splitMedia{ display:grid; gap:20px; }

@media (max-width: 768px){
  body.hk-brand.home .hkdp-home__split{ grid-template-columns: 1fr; }
}

/* framed media blocks */
body.hk-brand.home .hkdp-home__frame{
  margin:0;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.65);
}

body.hk-brand.home .hkdp-home__frame img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  aspect-ratio:16 / 9;
  object-fit:cover;
}

/* ---------------------------------------------------------
  ONLINE SHOP grid (home only)
--------------------------------------------------------- */
body.hk-brand.home .hkdp-home__shopGrid{
  display:grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap:24px;
  align-items:center;
}
body.hk-brand.home .hkdp-home__shopCopy,
body.hk-brand.home .hkdp-home__shopMedia{ min-width:0; }

body.hk-brand.home .hkdp-home__shopMedia{
  margin:0;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.28);
}

body.hk-brand.home .hkdp-home__shopMedia img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  aspect-ratio:1000 / 666;
  object-fit:cover;
}

@media (max-width: 768px){
  body.hk-brand.home .hkdp-home__shopGrid{ grid-template-columns: 1fr; }
}

/* ---------------------------------------------------------
  Home SNS (outside hero) - home only
--------------------------------------------------------- */
body.hk-brand.home .hkdp-home__sns{ margin-top:18px; }
body.hk-brand.home .hkdp-home__sns .hkdp-card{ padding:14px; }
body.hk-brand.home .hkdp-home__sns .hkdp-snsbar{ margin-top:0; }

/* ---------------------------------------------------------
  hk_events helper row (home only)
--------------------------------------------------------- */
body.hk-brand.home .hk-events__btns{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}

/* ---------------------------------------------------------
  Mobile: make hero taller (home only)
--------------------------------------------------------- */
@media (max-width: 768px){

  /* parent figure needs height */
  body.hk-brand.home .hkdp-home__heroMedia{
    height: 50vh;
    max-height: 720px !important;
    min-height: 380px !important;
    margin: 0 !important;
  }

  /* image fits parent height */
  body.hk-brand.home .hkdp-home__heroImg{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: 50% 50% !important;
    display: block !important;
  }
}