/* ==========================================================================
   BestThailandHoneymoon — Homepage V2 (mobile-first)
   Sections: hero · trust · destinations · compare · eeat · latest
   Classes: .bth-section .bth-hero .bth-grid .bth-card .bth-trust .bth-author
            .bth-eeat .bth-latest
   ========================================================================== */

/* ---------- Section shell ---------- */
.bth-section{padding:48px 20px;}
.bth-section > .gb-inside-container{max-width:var(--bth-maxw);margin-inline:auto;width:100%;}
.bth-section__title{
  font-size:clamp(1.5rem,5vw,2.25rem);line-height:1.2;font-weight:800;
  letter-spacing:-.02em;text-align:center;margin:0 0 .5em;color:var(--bth-ink);
}
.bth-section__intro{
  text-align:center;max-width:680px;margin:0 auto 2rem;
  color:var(--bth-muted);font-size:1.05rem;line-height:1.6;
}

/* Background rhythm */
.bth-dest{background:var(--bth-bg);}
.bth-compare{background:var(--bth-bg-alt);}
.bth-eeat{background:var(--bth-bg-soft);}
.bth-latest{background:var(--bth-bg);}

/* ---------- Buttons (modern, pill) ---------- */
.bth-hero .gb-button,
.bth-card .gb-button,
.bth-eeat .gb-button{
  display:inline-flex;align-items:center;justify-content:center;gap:.4em;
  padding:.85rem 1.5rem;border-radius:999px;font-weight:700;font-size:1rem;
  line-height:1.1;text-decoration:none;border:0;cursor:pointer;
  background:var(--bth-teal);color:#fff;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
.bth-hero .gb-button:hover,
.bth-card .gb-button:hover,
.bth-eeat .gb-button:hover{background:var(--bth-teal-dark);transform:translateY(-1px);box-shadow:var(--bth-shadow);}
.bth-hero .gb-button:focus-visible,
.bth-card .gb-button:focus-visible,
.bth-eeat .gb-button:focus-visible{outline:3px solid rgba(13,148,136,.4);outline-offset:2px;}
.bth-eeat .gb-button{background:#fff;color:var(--bth-teal-dark);border:1px solid var(--bth-border);}
.bth-eeat .gb-button:hover{background:#fff;color:var(--bth-teal-darker);}

/* ---------- Hero ---------- */
.bth-hero{
  position:relative;display:flex;align-items:center;justify-content:center;
  text-align:center;color:#fff;min-height:78vh;padding:72px 20px;overflow:hidden;
  background:
    linear-gradient(180deg,rgba(15,23,42,.35) 0%,rgba(15,23,42,.55) 100%),
    url("https://bestthailandhoneymoon.com/wp-content/uploads/2026/06/hero1.webp") center/cover no-repeat;
}
.bth-hero > .gb-inside-container{max-width:780px;}
.bth-hero__title{
  font-size:clamp(2rem,8vw,3.5rem);line-height:1.08;font-weight:800;
  letter-spacing:-.02em;color:#fff;margin:0 0 .5em;text-shadow:0 2px 18px rgba(0,0,0,.25);
}
.bth-hero__sub{
  font-size:clamp(1.05rem,3.5vw,1.3rem);line-height:1.55;color:#f1f5f9;
  margin:0 auto 1.8em;max-width:620px;
}
.bth-hero__cta{display:flex;flex-direction:column;gap:.75rem;align-items:stretch;}
.bth-hero__cta .gb-button{width:100%;}

/* ---------- Trust bar ---------- */
.bth-trust{background:var(--bth-bg-soft);padding:32px 20px;}
.bth-trust .bth-grid.gb-grid-wrapper{gap:1rem;}
.bth-trust__item{text-align:center;}
.bth-trust__item p{margin:0;font-weight:600;color:var(--bth-teal-darker);line-height:1.5;}
.bth-trust__item a{color:var(--bth-teal-dark);text-decoration:underline;}

/* ---------- Grid (override GenerateBlocks .gb-grid-wrapper flex layout) ---------- */
.bth-grid.gb-grid-wrapper{display:grid;grid-template-columns:1fr;gap:1.25rem;}
.bth-grid.gb-grid-wrapper > .gb-grid-column{width:auto;flex:initial;}

/* ---------- Cards (destinations + compare) ---------- */
.bth-card{
  background:var(--bth-bg);border:1px solid var(--bth-border);border-radius:var(--bth-radius);
  overflow:hidden;display:flex;flex-direction:column;height:100%;
  box-shadow:var(--bth-shadow);transition:transform .18s ease,box-shadow .18s ease;
}
.bth-card:hover{transform:translateY(-4px);box-shadow:var(--bth-shadow-lg);}
.bth-card > .gb-inside-container{display:flex;flex-direction:column;gap:.6rem;padding:1.5rem;flex:1;}
.bth-card__img{margin:0;}
.bth-card__img img{display:block;width:100%;height:200px;object-fit:cover;}
.bth-card__title{font-size:1.35rem;font-weight:800;letter-spacing:-.01em;margin:0;color:var(--bth-ink);}
.bth-card__text{margin:0;color:var(--bth-body);line-height:1.55;}
.bth-card__cta{margin-top:auto;padding-top:.5rem;}
.bth-card__cta .gb-button{width:100%;}

/* ---------- EEAT / author ---------- */
.bth-author{
  background:var(--bth-bg);border:1px solid var(--bth-border);border-radius:var(--bth-radius);
  box-shadow:var(--bth-shadow);
}
.bth-author > .gb-inside-container{padding:1.75rem;text-align:center;}
.bth-author__img{margin:0 auto 1rem;width:96px;height:96px;}
.bth-author__img img{width:96px;height:96px;border-radius:50%;object-fit:cover;}
.bth-author__name{font-size:1.2rem;font-weight:800;margin:0;color:var(--bth-ink);}
.bth-author__role{margin:.15rem 0 .6rem;color:var(--bth-teal-dark);font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em;}
.bth-author__bio{margin:0;color:var(--bth-body);line-height:1.55;}
.bth-author__bio a{color:var(--bth-teal-dark);font-weight:600;}
.bth-eeat__cta{display:flex;flex-direction:column;gap:.75rem;align-items:stretch;max-width:360px;margin:2rem auto 0;}

/* ---------- Latest guides (core query loop) ---------- */
.bth-latest__loop .wp-block-post-template{display:grid;grid-template-columns:1fr;gap:1.25rem;margin:0;padding:0;list-style:none;}
.bth-latest__loop li{
  border:1px solid var(--bth-border);border-radius:var(--bth-radius);overflow:hidden;
  background:var(--bth-bg);box-shadow:var(--bth-shadow);transition:transform .18s ease,box-shadow .18s ease;
}
.bth-latest__loop li:hover{transform:translateY(-4px);box-shadow:var(--bth-shadow-lg);}
.bth-latest__loop img{width:100%;height:180px;object-fit:cover;display:block;}
.bth-latest__loop .wp-block-post-title{font-size:1.15rem;font-weight:800;margin:.85rem 1.1rem .3rem;line-height:1.3;}
.bth-latest__loop .wp-block-post-title a{text-decoration:none;color:var(--bth-ink);}
.bth-latest__loop .wp-block-post-title a:hover{color:var(--bth-teal-dark);}
.bth-latest__loop .wp-block-post-excerpt{margin:0 1.1rem 1.1rem;color:var(--bth-muted);font-size:.95rem;line-height:1.55;}
.bth-latest__loop .wp-block-post-excerpt__more-link{color:var(--bth-teal-dark);font-weight:600;}

/* ==========================================================================
   Breakpoints (min-width = scale up)
   ========================================================================== */
@media (min-width:600px){
  .bth-section{padding:64px 24px;}
  .bth-grid.gb-grid-wrapper{grid-template-columns:repeat(2,1fr);gap:1.5rem;}
  .bth-hero__cta{flex-direction:row;flex-wrap:wrap;justify-content:center;}
  .bth-hero__cta .gb-button,
  .bth-card__cta .gb-button{width:auto;}
  .bth-eeat__cta{flex-direction:row;flex-wrap:wrap;justify-content:center;max-width:none;}
  .bth-eeat__cta .gb-button{width:auto;}
  .bth-latest__loop .wp-block-post-template{grid-template-columns:repeat(2,1fr);}
}

@media (min-width:992px){
  .bth-section{padding:88px 24px;}
  .bth-grid.gb-grid-wrapper{grid-template-columns:repeat(3,1fr);gap:1.75rem;}
  .bth-eeat .bth-grid.gb-grid-wrapper{grid-template-columns:repeat(2,1fr);max-width:820px;margin-inline:auto;}
  .bth-hero{min-height:82vh;}
  .bth-latest__loop .wp-block-post-template{grid-template-columns:repeat(3,1fr);}
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .bth-card,.bth-latest__loop li,
  .bth-hero .gb-button,.bth-card .gb-button,.bth-eeat .gb-button{transition:none;}
  .bth-card:hover,.bth-latest__loop li:hover{transform:none;}
}
