/* ===== gift-detail.html page-specific ===== */

/* white article card */
.detail{
  max-width:900px;margin:30px auto 0;background:#fff;border-radius:10px;
  padding:56px 64px;box-shadow:0 8px 30px rgba(0,0,0,.05);
}
.detail__shop{font-size:12px;color:#888;margin-bottom:12px}
.detail__title{font-size:26px;font-weight:700;line-height:1.5;margin-bottom:18px}
.detail__reg{display:flex;align-items:center;gap:12px;margin-bottom:30px}
.detail__reg .tag{background:#efeeea;color:#555;font-size:11px;padding:4px 10px;border-radius:2px;letter-spacing:.04em}
.detail__reg .price{font-size:20px;font-weight:700}
.detail__hero{border-radius:6px;overflow:hidden;margin-bottom:36px}
.detail__hero img{width:100%;display:block}
.detail__name{text-align:center;font-size:20px;font-weight:700;line-height:1.6;margin-bottom:24px}

/* two price row */
.detail__prices{
  display:flex;justify-content:center;gap:50px;
  border-top:1px solid #ececec;border-bottom:1px solid #ececec;
  padding:22px 0;margin-bottom:34px;
}
.dprice{display:flex;align-items:center;gap:12px}
.dprice__badge{background:#2b2b2b;color:#fff;font-size:11px;padding:5px 12px;border-radius:3px;letter-spacing:.04em}
.dprice__val{font-size:20px;font-weight:700}

.detail__lead{font-size:12.5px;color:#8a8a8a;line-height:2;margin-bottom:44px}

.detail h2.dhead{font-size:19px;font-weight:700;border-bottom:1px solid #e6e6e6;padding-bottom:12px;margin:40px 0 22px}
.detail p.dbody{font-size:12.5px;color:#555;line-height:2.1;margin-bottom:22px}
.detail p.dbody .hl{background:#e6ecff;color:#3a4bd8}

/* action buttons */
.dbtns{display:flex;flex-direction:column;gap:16px;margin:44px 0 10px}
.dbtn{
  position:relative;display:flex;align-items:center;justify-content:center;
  background:var(--btn);color:#fff;border-radius:44px;padding:20px;
  font-size:13.5px;letter-spacing:.06em;
}
.dbtn__ic{
  position:absolute;left:22px;width:30px;height:30px;border-radius:50%;
  background:#fff;color:#3d3936;display:flex;align-items:center;justify-content:center;font-size:14px;
}

/* other gift */
.other-head{text-align:center;margin-bottom:44px}
.other-head__title{font-family:var(--latin);font-size:44px;letter-spacing:.14em}
.other-head__sub{font-size:13px;color:#555;margin-top:12px;letter-spacing:.06em}
.gift-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 40px}
.ggcard__media{position:relative;border-radius:4px;overflow:hidden;aspect-ratio:271/300;margin-bottom:14px}
.ggcard__media img{width:100%;height:100%;object-fit:cover}
.ggcard__badge{position:absolute;top:0;right:0;background:#2b2b2b;color:#fff;font-size:11px;letter-spacing:.04em;padding:5px 14px;border-radius:0 0 0 6px}
.ggcard__shop{font-size:11px;color:#888;margin-bottom:6px}
.ggcard__title{font-size:14px;font-weight:700;line-height:1.7;margin-bottom:8px}
.ggcard__price{font-size:15px;font-weight:700}

/* APPLICATION cta card (shared) */
.app-cta{max-width:1100px;margin:0 auto;background:#eeeeeb;border-radius:8px;padding:56px 64px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.app-cta__title{font-family:var(--latin);font-size:40px;letter-spacing:.12em;margin-bottom:10px}
.app-cta__sub{font-size:13px;font-weight:700;margin-bottom:22px}
.app-cta__body{font-size:13px;color:#4a4a4a;line-height:2;margin-bottom:26px;max-width:400px}
.app-cta__phone{display:flex;justify-content:center}

@media(max-width:900px){
  .detail{padding:34px 24px}
  .detail__prices{flex-direction:column;gap:16px;align-items:center}
  .gift-grid,.app-cta{grid-template-columns:1fr}
}

/* ===== MOBILE (SP) max-width:820px ===== */
@media(max-width:820px){
  /* detail article card */
  .detail{max-width:none;margin:16px auto 0;padding:28px 20px;border-radius:8px}
  .detail__title{font-size:20px;line-height:1.55;margin-bottom:16px}
  .detail__reg{gap:10px;margin-bottom:24px}
  .detail__reg .price{font-size:18px}
  .detail__hero{margin-bottom:28px}
  .detail__name{font-size:17px;margin-bottom:22px}

  /* stacked price rows: badge left / value right */
  .detail__prices{gap:14px;padding:18px 0;margin-bottom:28px;align-items:stretch}
  .dprice{width:100%;justify-content:space-between;gap:12px}
  .dprice__val{font-size:18px}

  .detail__lead{margin-bottom:34px}
  .detail h2.dhead{font-size:17px;margin:32px 0 18px}

  /* action buttons */
  .dbtns{gap:14px;margin:34px 0 6px}
  .dbtn{padding:17px 44px;font-size:12.5px}
  .dbtn__ic{left:16px;width:26px;height:26px;font-size:13px}

  /* other gift: single full-width column */
  .other-head{margin-bottom:32px}
  .other-head__title{font-size:34px}
  .gift-grid{gap:30px}
  .ggcard__title{font-size:13.5px}

  /* application cta */
  .app-cta{max-width:none;padding:36px 22px;gap:28px}
  .app-cta__title{font-size:32px}
  .app-cta__body{max-width:none}
}
