/*
 * Event participation identity
 * Bright photography and welcoming information hierarchy, while retaining
 * the shared YOU.FO red / blue / black navigation and typography.
 */

body.youfo-tone-v5 .event-page,
body.youfo-tone-v5 .single-event-page{
  --event-red:#ef3340;
  --event-blue:#087fbd;
  --event-navy:#092f59;
  --event-sky:#eaf8fd;
  --event-yellow:#ffd84d;
  --event-ink:#15324a;
  background:#fff;
  color:var(--event-ink);
}

/* Event archive: discovery should feel open and immediately actionable. */
html body.youfo-tone-v5 .event-page .event-hero{
  min-height:clamp(500px,62vh,670px)!important;
  display:flex;
  align-items:center;
  padding-block:clamp(80px,10vw,130px)!important;
  background-color:var(--event-sky)!important;
  background-image:
    linear-gradient(90deg,rgba(234,248,253,.97) 0%,rgba(234,248,253,.85) 48%,rgba(234,248,253,.18) 78%),
    url("https://youfo.or.jp/wp-content/uploads/2025/08/160025-1-2de03e49cc5ea46b2bf75aa1d62a55d1-3900x2600.jpg.webp")!important;
  background-position:center!important;
  background-size:cover!important;
  border-bottom:8px solid var(--event-blue)!important;
  color:var(--event-ink)!important;
}
html body.youfo-tone-v5 .event-page .event-hero:before{
  content:"";
  position:absolute;
  width:160px;
  aspect-ratio:1;
  right:10%;
  top:14%;
  border-radius:50%;
  background:rgba(239,51,64,.84);
  pointer-events:none;
}
html body.youfo-tone-v5 .event-page .event-hero:after{border-color:var(--event-blue)!important;opacity:.78}
html body.youfo-tone-v5 .event-page .event-hero__content{max-width:760px;margin-inline:0;text-align:left}
html body.youfo-tone-v5 .event-page .event-hero__eyebrow{color:var(--event-red)!important}
html body.youfo-tone-v5 .event-page .event-hero__title{color:var(--event-navy)!important;text-shadow:none!important}
html body.youfo-tone-v5 .event-page .event-hero__lead{max-width:650px;margin-inline:0;color:#31536c!important}
html body.youfo-tone-v5 .event-page .event-hero__buttons{justify-content:flex-start}
html body.youfo-tone-v5 .event-page .event-hero__button--primary{background:var(--event-red)!important;border-color:var(--event-red)!important}
html body.youfo-tone-v5 .event-page .event-hero__button--secondary{background:#fff!important;border:1px solid var(--event-navy)!important;color:var(--event-navy)!important}

html body.youfo-tone-v5 .event-page .event-section--upcoming{
  background:linear-gradient(180deg,#fff 0%,var(--event-sky) 100%)!important;
}
html body.youfo-tone-v5 .event-page .event-section--experience{padding-block:clamp(72px,9vw,126px)!important}
html body.youfo-tone-v5 .event-page .event-section--regular{padding-block:clamp(72px,9vw,126px)!important;background:var(--event-navy)!important;color:#fff!important}
html body.youfo-tone-v5 .event-page .event-section-head__lead{color:var(--event-red)!important}
html body.youfo-tone-v5 .event-page .event-section-head__title{color:var(--event-navy)!important}
html body.youfo-tone-v5 .event-page .event-section-head--split{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(280px,1.1fr);align-items:end;gap:clamp(30px,7vw,100px);margin-bottom:clamp(34px,5vw,64px)}
html body.youfo-tone-v5 .event-page .event-section-head--split>p{max-width:620px;margin:0 0 .5rem;line-height:1.85}
html body.youfo-tone-v5 .event-page .event-section--regular .event-section-head__lead{color:#75d2f3!important}
html body.youfo-tone-v5 .event-page .event-section--regular .event-section-head__title,
html body.youfo-tone-v5 .event-page .event-section--regular .event-section-head--split>p{color:#fff!important}
html body.youfo-tone-v5 .event-page .tournament-card{
  overflow:hidden;
  border:1px solid rgba(8,127,189,.2)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(9,47,89,.09)!important;
  transition:transform .2s ease,box-shadow .2s ease;
}
html body.youfo-tone-v5 .event-page .tournament-card:hover{transform:translateY(-5px);box-shadow:0 24px 54px rgba(9,47,89,.15)!important}
html body.youfo-tone-v5 .event-page .tournament-card__thumb{min-height:230px}
html body.youfo-tone-v5 .event-page .tournament-card__thumb img{height:100%;min-height:230px;object-fit:cover}
html body.youfo-tone-v5 .event-page .tournament-card__body{padding:clamp(22px,3vw,34px)}
html body.youfo-tone-v5 .event-page .tournament-card__badge{background:var(--event-red)!important;color:#fff!important;border-radius:999px!important}
html body.youfo-tone-v5 .event-page .tournament-card__title{color:var(--event-navy)!important}
html body.youfo-tone-v5 .event-page .tournament-card__facts b{color:var(--event-blue)!important}
html body.youfo-tone-v5 .event-page .tournament-card__button{color:var(--event-red)!important;text-decoration-color:var(--event-red)}
html body.youfo-tone-v5 .event-page .event-empty{width:100%;padding:clamp(28px,4vw,46px);border:1px solid rgba(8,127,189,.2)!important;border-radius:18px;background:#fff;box-shadow:0 16px 42px rgba(9,47,89,.07)}
html body.youfo-tone-v5 .event-page .event-empty p{margin:.2rem 0 .65rem}
html body.youfo-tone-v5 .event-page .event-empty a{display:inline-flex;margin-top:1rem;padding:12px 18px;border-radius:8px;background:var(--event-red);color:#fff!important;font-weight:900;text-decoration:none}
html body.youfo-tone-v5 .event-page .event-empty--regular{border-color:rgba(255,255,255,.24)!important;background:rgba(255,255,255,.06);box-shadow:none;color:#fff}
html body.youfo-tone-v5 .event-page .club-schedule-months{display:grid;gap:14px}
html body.youfo-tone-v5 .event-page .club-schedule-month{border:1px solid rgba(255,255,255,.2);border-radius:12px;overflow:hidden}
html body.youfo-tone-v5 .event-page .club-schedule-month summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;background:rgba(255,255,255,.07);color:#fff;cursor:pointer;font-size:clamp(1.05rem,2vw,1.3rem);font-weight:900;list-style:none}
html body.youfo-tone-v5 .event-page .club-schedule-month summary::-webkit-details-marker{display:none}
html body.youfo-tone-v5 .event-page .club-schedule-month summary:after{content:"＋";margin-left:auto;color:#75d2f3;font-size:1.25rem}
html body.youfo-tone-v5 .event-page .club-schedule-month[open] summary:after{content:"−"}
html body.youfo-tone-v5 .event-page .club-schedule-month summary small{order:2;color:#a9c2d8;font-size:.75rem}
html body.youfo-tone-v5 .event-page .club-schedule{padding-inline:22px;border-top:1px solid rgba(255,255,255,.2)}
html body.youfo-tone-v5 .event-page .club-schedule__row{display:grid;grid-template-columns:120px 160px minmax(220px,1fr) auto;align-items:center;gap:28px;padding:27px 0;border-bottom:1px solid rgba(255,255,255,.18)}
html body.youfo-tone-v5 .event-page .club-schedule__date{display:grid;color:#fff;line-height:1}
html body.youfo-tone-v5 .event-page .club-schedule__date strong{font-size:clamp(1.65rem,2.8vw,2.25rem);letter-spacing:-.04em}
html body.youfo-tone-v5 .event-page .club-schedule__date span{margin-top:7px;color:#75d2f3;font-size:.72rem;font-weight:900;letter-spacing:.1em}
html body.youfo-tone-v5 .event-page .club-schedule__time{margin:0;color:#fff;font-weight:900;white-space:nowrap}
html body.youfo-tone-v5 .event-page .club-schedule__place h3{margin:0 0 5px;color:#fff!important;font-size:clamp(1.15rem,2vw,1.45rem)}
html body.youfo-tone-v5 .event-page .club-schedule__place p{margin:0;color:#c4d7e8}
html body.youfo-tone-v5 .event-page .club-schedule__button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:170px;padding:13px 18px;border:1px solid rgba(255,255,255,.72);border-radius:8px;color:#fff!important;font-weight:900;text-decoration:none;transition:background .2s ease,color .2s ease}
html body.youfo-tone-v5 .event-page .club-schedule__button:hover{background:#fff;color:var(--event-navy)!important}
html body.youfo-tone-v5 .event-page .club-schedule__note{margin:24px 0 0;color:#a9c2d8;font-size:.85rem}

/* Event detail: keep the photograph bright and make participation facts easy to scan. */
html body.youfo-tone-v5 .single-event-page .single-event-hero{
  min-height:clamp(560px,72vh,780px)!important;
  background-color:var(--event-navy)!important;
  background-position:center!important;
  border-bottom:8px solid var(--event-blue)!important;
}
html body.youfo-tone-v5 .single-event-page .single-event-hero:after{border-color:var(--event-yellow)!important;opacity:.72}
html body.youfo-tone-v5 .single-event-page .single-event-chip{background:var(--event-red)!important;color:#fff!important}
html body.youfo-tone-v5 .single-event-page .single-event-chip.status.is-open{background:#f28a21!important}
html body.youfo-tone-v5 .single-event-page .single-event-chip.status.is-closed,
html body.youfo-tone-v5 .single-event-page .single-event-chip.status.is-ended{background:#667789!important}
html body.youfo-tone-v5 .single-event-page .single-event-hero__info{gap:12px}
html body.youfo-tone-v5 .single-event-page .single-event-info-card{
  border:1px solid rgba(255,255,255,.85)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.92)!important;
  color:var(--event-navy)!important;
  box-shadow:0 12px 30px rgba(9,47,89,.16)!important;
  backdrop-filter:blur(10px);
}
html body.youfo-tone-v5 .single-event-page .single-event-info-card :is(.label,strong){color:var(--event-navy)!important}
html body.youfo-tone-v5 .single-event-page .single-event-btn--primary{background:var(--event-red)!important;color:#fff!important}
html body.youfo-tone-v5 .single-event-page .single-event-btn--secondary{background:#fff!important;border-color:#fff!important;color:var(--event-navy)!important}
html body.youfo-tone-v5 .single-event-page .single-event-section{background:linear-gradient(180deg,var(--event-sky),#fff 420px)!important}
html body.youfo-tone-v5 .single-event-page :is(.single-event-block,.single-event-sidecard){background:#fff!important}
html body.youfo-tone-v5 .single-event-page .single-event-block h2{border-top-color:var(--event-blue)!important;color:var(--event-navy)!important}
html body.youfo-tone-v5 .single-event-page .single-event-sidecard{
  border:1px solid rgba(8,127,189,.2)!important;
  border-radius:16px!important;
  box-shadow:0 15px 36px rgba(9,47,89,.08)!important;
}
html body.youfo-tone-v5 .single-event-page .single-event-sidecard h3{color:var(--event-navy)!important}
html body.youfo-tone-v5 .single-event-page .single-event-btn--disabled{background:#a5b4c4!important;color:#fff!important}

@media(max-width:768px){
  html body.youfo-tone-v5 .event-page .event-hero{min-height:590px!important;background-position:64% center!important}
  html body.youfo-tone-v5 .event-page .event-hero:before{width:92px;right:-18px;top:14%}
  html body.youfo-tone-v5 .event-page .event-hero__content{text-align:left}
  html body.youfo-tone-v5 .event-page .event-hero__buttons{display:grid;width:100%}
  html body.youfo-tone-v5 .event-page .event-hero__button{width:100%}
  html body.youfo-tone-v5 .event-page .tournament-card{border-radius:14px!important}
  html body.youfo-tone-v5 .event-page .event-section-head--split{grid-template-columns:1fr;gap:18px}
  html body.youfo-tone-v5 .event-page .club-schedule-month summary{padding:16px}
  html body.youfo-tone-v5 .event-page .club-schedule{padding-inline:16px}
  html body.youfo-tone-v5 .event-page .club-schedule__row{grid-template-columns:64px minmax(0,1fr);gap:16px 14px;padding:24px 0}
  html body.youfo-tone-v5 .event-page .club-schedule__time{align-self:center}
  html body.youfo-tone-v5 .event-page .club-schedule__place{grid-column:2}
  html body.youfo-tone-v5 .event-page .club-schedule__button{grid-column:2;width:100%;margin-top:3px}
  html body.youfo-tone-v5 .event-page .club-schedule__date{grid-row:1 / span 3;align-self:start}
  html body.youfo-tone-v5 .event-page .club-schedule__date strong{font-size:1.55rem}
  html body.youfo-tone-v5 .event-page .event-empty{border-radius:14px;padding:26px}
  html body.youfo-tone-v5 .single-event-page .single-event-hero{min-height:610px!important;padding:84px 0 56px!important;background-position:center!important}
  html body.youfo-tone-v5 .single-event-page .single-event-hero__info{gap:8px}
  html body.youfo-tone-v5 .single-event-page .single-event-info-card{padding:13px 15px!important}
}

@media(prefers-reduced-motion:reduce){
  html body.youfo-tone-v5 .event-page .tournament-card{transition:none}
}
