/* ===================== v7：表紙＝レシピカードそのものを置く（5案） ===================== */
/* 文字は「名称・コピー・日程の1行・ボタン」だけ。カードは角丸14px・影1種類。
   参考：Recipe Kit の6種のカード（Classic=写真が上／Compact=写真が横／Hero=写真の上に題名／Editorial=段組み）、旧案 d（写真の上のカード） */
.fv7{--card-r:14px;--card-sh:0 50px 90px -50px rgba(10,20,15,.55),0 2px 6px rgba(10,20,15,.06);
  position:relative;min-height:100svh;padding:calc(var(--hd) + 40px) var(--gut) 48px;display:flex;align-items:center;justify-content:center;background:#e9ece8;color:var(--v6-ink);overflow:hidden}
.fv7__bd{position:absolute;inset:0;display:none}
.fv7__bd img{width:100%;height:100%;object-fit:cover}
.fv7__card{position:relative;z-index:1;background:#fff;border-radius:var(--card-r);box-shadow:var(--card-sh);overflow:hidden}
.fv7__ph{margin:0;overflow:hidden}
.fv7__ph img{width:100%;height:100%;object-fit:cover}
.fv7__t{font-size:clamp(34px,3.6vw,52px);font-weight:700;line-height:1.25;letter-spacing:.01em}
.fv7__t span{display:block}
.fv7__t em{font-style:normal;font-family:var(--f-en);font-weight:500;font-size:.66em;color:var(--c1);margin-left:.4em;letter-spacing:.02em}
.fv7__copy{margin-top:18px;font-size:clamp(16px,1.3vw,19px);font-weight:500;letter-spacing:.06em}
.fv7__info{margin-top:22px;font-size:14px;font-weight:500;color:var(--v6-ink2);letter-spacing:.04em}
.fv7__info i{display:inline-block;width:1px;height:.9em;background:var(--v6-hair);margin:0 12px;vertical-align:-1px}
.fv7__cta{display:flex;align-items:center;gap:26px;margin-top:30px;flex-wrap:wrap}
.fv7__btn{display:inline-flex;align-items:center;gap:14px;height:52px;padding:0 28px;border-radius:999px;background:var(--v6-ink);color:#fff;font-size:15px;font-weight:700;letter-spacing:.06em;transition:background .25s}
.fv7__btn::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--c3)}
.fv7__btn:hover{background:var(--c1)}
.fv7__sub{font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:2px}
.fv7__sub::after{content:" →"}

/* 入場：カードが少し下から上がり、写真は拡大から戻る */
.fv7__card{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform 1.1s var(--ease)}
.fv7.is-in .fv7__card{opacity:1;transform:none}
.fv7__ph img,.fv7__bd img{transform:scale(1.05);transition:transform 2.4s var(--ease)}
.fv7.is-in .fv7__ph img,.fv7.is-in .fv7__bd img{transform:none}
html.static .fv7__card,html.static .fv7__ph img,html.static .fv7__bd img{opacity:1;transform:none;transition:none}

/* c1 定番：縦長のカード。写真が上、文字は中央揃え */
html[data-fv="c1"] .fv7__card{width:min(680px,100%);padding:16px}
html[data-fv="c1"] .fv7__ph{height:min(38svh,360px);border-radius:8px}
html[data-fv="c1"] .fv7__tx{text-align:center;padding:30px 24px 22px}
html[data-fv="c1"] .fv7__t{font-size:clamp(32px,3.2vw,44px)}
html[data-fv="c1"] .fv7__cta{justify-content:center}

/* c2 横長：ぼかした写真の上に横長のカード。左に文字、右に写真（旧案 d の後継） */
html[data-fv="c2"] .fv7__bd{display:block}
html[data-fv="c2"] .fv7__bd img{filter:blur(18px) brightness(.62) saturate(.8);transform:scale(1.12)}
html[data-fv="c2"] .fv7.is-in .fv7__bd img{transform:scale(1.08)}
html[data-fv="c2"] .fv7__card{width:min(1180px,100%);min-height:min(calc(100svh - var(--hd) - 96px),660px);display:grid;grid-template-columns:1fr 1fr;padding:20px}
html[data-fv="c2"] .fv7__tx{grid-column:1;grid-row:1;align-self:center;padding:24px clamp(24px,4vw,64px)}
html[data-fv="c2"] .fv7__ph{grid-column:2;grid-row:1;border-radius:8px}

/* c3 写真全面のカード：カードの面がまるごと写真。題名は写真の上、下に白い帯 */
html[data-fv="c3"] .fv7__card{width:min(1180px,100%);height:min(calc(100svh - var(--hd) - 88px),700px);display:grid;grid-template-rows:1fr auto}
html[data-fv="c3"] .fv7__ph{grid-row:1/-1;grid-column:1;position:relative}
html[data-fv="c3"] .fv7__ph::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,14,10,.72) 0%,rgba(8,14,10,.35) 45%,transparent 75%)}
html[data-fv="c3"] .fv7__tx{grid-row:1/-1;grid-column:1;position:relative;z-index:1;align-self:end;color:#fff;padding:clamp(28px,4vw,56px)}
html[data-fv="c3"] .fv7__t em{color:#fff}
html[data-fv="c3"] .fv7__info{color:rgba(255,255,255,.85)}
html[data-fv="c3"] .fv7__info i{background:rgba(255,255,255,.4)}
html[data-fv="c3"] .fv7__btn{background:#fff;color:var(--v6-ink)}
html[data-fv="c3"] .fv7__sub{color:#fff}

/* c4 罫線のカード：写真の上に、罫線入りの白いカード（手書きのレシピカードの形式） */
html[data-fv="c4"] .fv7__bd{display:block}
html[data-fv="c4"] .fv7__bd::after{content:"";position:absolute;inset:0;background:rgba(10,20,15,.18)}
html[data-fv="c4"] .fv7{justify-content:flex-start;padding-left:max(var(--gut),calc((100vw - var(--wrap))/2 + var(--gut)))}
html[data-fv="c4"] .fv7__ph{display:none}
html[data-fv="c4"] .fv7__card{width:min(640px,100%);padding:30px 44px 40px;
  background:#fff repeating-linear-gradient(180deg,transparent 0 43px,#dfe5e8 43px 44px) 0 74px/100% calc(100% - 74px) no-repeat}
html[data-fv="c4"] .fv7__card::before{content:"";position:absolute;left:0;right:0;top:73px;height:2px;background:var(--c3);opacity:.75}
html[data-fv="c4"] .fv7__tx{line-height:44px}
html[data-fv="c4"] .fv7__t{font-size:clamp(28px,2.6vw,36px);line-height:44px;padding-top:62px}
html[data-fv="c4"] .fv7__t::before{content:"学生AIハッカソン　／　広島";position:absolute;top:30px;left:44px;font-size:13px;font-weight:700;letter-spacing:.1em;line-height:1;color:var(--v6-ink2)}
html[data-fv="c4"] .fv7__copy,html[data-fv="c4"] .fv7__info{margin-top:0;line-height:44px}
html[data-fv="c4"] .fv7__cta{margin-top:22px}

/* c5 雑誌の組み方：横長のカードを3段に。題名／コピーと日程／縦長の写真 */
html[data-fv="c5"] .fv7__card{width:min(1220px,100%);height:min(calc(100svh - var(--hd) - 96px),640px);display:grid;grid-template-columns:1.25fr 1fr .9fr;padding:28px 28px 28px 44px}
html[data-fv="c5"] .fv7__tx{display:contents}
html[data-fv="c5"] .fv7__t{grid-column:1;grid-row:1/3;align-self:start;border-top:2px solid var(--v6-ink);padding-top:22px;margin-right:36px;font-size:clamp(36px,3.8vw,56px)}
html[data-fv="c5"] .fv7__t em{display:block;margin:10px 0 0}
html[data-fv="c5"] .fv7__copy,html[data-fv="c5"] .fv7__info{grid-column:2;margin:0;padding:22px 32px 0;border-top:1px solid var(--v6-hair);align-self:start}
html[data-fv="c5"] .fv7__copy{grid-row:1;font-size:clamp(18px,1.5vw,22px);line-height:1.7}
html[data-fv="c5"] .fv7__info{grid-row:2;align-self:start;border-top:0;padding-top:0}
html[data-fv="c5"] .fv7__cta{grid-column:1/3;grid-row:3;align-self:end;margin:0}
html[data-fv="c5"] .fv7__ph{grid-column:3;grid-row:1/4;border-radius:8px}
html[data-fv="c5"] .fv7__card{grid-template-rows:auto 1fr auto}

/* スマホ：どの案もカードを画面幅いっぱい（左右12px）に */
@media (max-width:900px){
  .fv7{padding:calc(var(--hd) + 12px) 12px 16px;min-height:0;display:block}
  html[data-fv] .fv7__card{width:auto;height:auto;min-height:0;display:block;padding:12px}
  html[data-fv] .fv7__ph{display:block;height:30svh;border-radius:8px}
  html[data-fv] .fv7__tx{display:block;text-align:left;padding:22px 10px 14px;position:static;color:inherit}
  html[data-fv] .fv7__t{font-size:30px;grid-column:auto;border-top:0;padding:0;margin:0;line-height:1.3}
  html[data-fv] .fv7__t em{display:inline;margin-left:.4em}
  html[data-fv] .fv7__copy{font-size:16px;margin-top:12px;padding:0;border:0}
  html[data-fv] .fv7__info{margin-top:12px;padding:0;font-size:13.5px}
  html[data-fv] .fv7__cta{justify-content:flex-start;margin-top:20px;gap:18px}
  .fv7__btn{width:100%;justify-content:space-between}
  html[data-fv="c1"] .fv7__cta{justify-content:flex-start}
  /* c3：写真の面の上に文字 */
  html[data-fv="c3"] .fv7__card{padding:0;position:relative}
  html[data-fv="c3"] .fv7__ph{position:absolute;inset:0;height:auto;border-radius:0}
  html[data-fv="c3"] .fv7__ph::after{background:linear-gradient(0deg,rgba(8,14,10,.8) 0%,rgba(8,14,10,.4) 60%,rgba(8,14,10,.15) 100%)}
  html[data-fv="c3"] .fv7__tx{position:relative;color:#fff;padding:38svh 22px 26px}
  /* c4：写真の上に罫線カード */
  html[data-fv="c4"] .fv7{padding-top:calc(var(--hd) + 26svh)}
  html[data-fv="c4"] .fv7__ph{display:none}
  html[data-fv="c4"] .fv7__card{padding:22px 20px 26px;background-position:0 58px;background-size:100% calc(100% - 58px)}
  html[data-fv="c4"] .fv7__card::before{top:57px}
  html[data-fv="c4"] .fv7__t::before{top:22px;left:20px}
  html[data-fv="c4"] .fv7__tx{padding:0;line-height:44px}
  html[data-fv="c4"] .fv7__t{padding-top:46px;line-height:44px;font-size:26px}
  html[data-fv="c4"] .fv7__copy,html[data-fv="c4"] .fv7__info{margin:0;line-height:44px}
}
/* 見直し1：c5 は題名の列を広げ、「広島AIフードテック」が1行に収まるように */
html[data-fv="c5"] .fv7__card{grid-template-columns:1.7fr 1fr 1fr}
html[data-fv="c5"] .fv7__t{font-size:clamp(34px,3.4vw,48px);margin-right:28px}
html[data-fv="c5"] .fv7__copy{padding-left:28px;padding-right:28px}
html[data-fv="c5"] .fv7__info{padding:16px 28px 0}
/* 見直し2：c5 を組み直す。題名は2列ぶち抜きで大きく、下の段にコピーと日程を並べる */
html[data-fv="c5"] .fv7__card{grid-template-columns:1fr 1fr .95fr;grid-template-rows:1fr auto auto;column-gap:0;padding:28px 28px 32px 48px}
html[data-fv="c5"] .fv7__t{grid-column:1/3;grid-row:1;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;border-top:2px solid var(--v6-ink);padding:0 40px 34px 0;margin:0;font-size:clamp(40px,4.4vw,64px);line-height:1.2}
html[data-fv="c5"] .fv7__t em{display:inline;margin:0 0 0 .4em}
html[data-fv="c5"] .fv7__copy{grid-column:1;grid-row:2;border-top:1px solid var(--v6-hair);padding:18px 24px 0 0;font-size:17px;line-height:1.7}
html[data-fv="c5"] .fv7__info{grid-column:2;grid-row:2;border-top:1px solid var(--v6-hair);padding:20px 40px 0 24px;border-left:1px solid var(--v6-hair);margin:0}
html[data-fv="c5"] .fv7__cta{grid-column:1/3;grid-row:3;margin-top:30px}
html[data-fv="c5"] .fv7__ph{grid-column:3;grid-row:1/4}
