.gct-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.25rem 0}
.gct-button{display:inline-block;padding:.7rem 1.05rem;border-radius:.5rem;text-decoration:none;font-weight:600;border:1px solid currentColor}
.gct-button--primary{background:#174f36;color:#fff;border-color:#174f36}
.gct-button--danger{color:#8a1f1f}
.gct-status{padding:.8rem 1rem;border-radius:.5rem;background:#f4f6f5;margin:1rem 0}
.gct-table{width:100%;border-collapse:collapse}.gct-table th,.gct-table td{padding:.65rem;border-bottom:1px solid #ddd;text-align:left}


/* ÖGS Turnier-Views */
.ogs-tournament-list{display:grid;gap:18px;margin:24px auto 36px;max-width:1400px}
.ogs-tournament-card{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:24px;align-items:center;background:#fff;border:1px solid #e4e7ea;border-radius:10px;padding:22px 24px;box-shadow:0 4px 18px rgba(9,42,78,.06)}
.ogs-tournament-date{border-right:1px solid #e3d5b7;text-align:center;padding-right:24px;color:#092A4E}
.ogs-tournament-date .day{display:block;font-size:2rem;font-weight:700;line-height:1}
.ogs-tournament-date .month{display:block;margin-top:5px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#B8913E}
.ogs-tournament-date .year{display:block;margin-top:3px;font-size:.82rem;color:#6c7780}
.ogs-tournament-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#B8913E;margin-bottom:5px}
.ogs-tournament-title{margin:0 0 5px;font-size:1.25rem;line-height:1.25;color:#092A4E}
.ogs-tournament-club{font-weight:600;color:#303a43}
.ogs-tournament-meta{display:flex;flex-wrap:wrap;gap:7px 12px;margin-top:9px;font-size:.9rem;color:#66717a}
.ogs-tournament-chip{display:inline-block;border:1px solid #dbc79f;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:700;color:#72591f;background:#fffaf0}
.ogs-tournament-action a{display:inline-block;white-space:nowrap;text-decoration:none;font-weight:700;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:#092A4E;border-bottom:2px solid #B8913E;padding:8px 2px}
.ogs-tournament-empty{padding:24px;background:#f6f7f8;border-radius:8px;color:#66717a}
.ogs-tournament-list--compact{gap:0;border-top:1px solid #e4e7ea}
.ogs-tournament-list--compact .ogs-tournament-card{grid-template-columns:76px minmax(0,1fr) auto;border:0;border-bottom:1px solid #e4e7ea;border-radius:0;box-shadow:none;padding:15px 0;gap:18px}
.ogs-tournament-list--compact .ogs-tournament-date{padding-right:18px}
.ogs-tournament-list--compact .ogs-tournament-date .day{font-size:1.55rem}
.ogs-tournament-list--compact .ogs-tournament-title{font-size:1.02rem}
.ogs-tournament-list--compact .ogs-tournament-meta{margin-top:5px}
.ogs-tournament-list--compact .ogs-tournament-chip,.ogs-tournament-list--compact .ogs-tournament-eyebrow{display:none}
.ogs-tournament-archive .ogs-tournament-card{opacity:.86}
@media (max-width:760px){
  .ogs-tournament-card,.ogs-tournament-list--compact .ogs-tournament-card{grid-template-columns:70px minmax(0,1fr);gap:14px;padding:18px 14px}
  .ogs-tournament-date,.ogs-tournament-list--compact .ogs-tournament-date{padding-right:14px}
  .ogs-tournament-action{grid-column:2}
}


/* ÖGS Turnierdetail + responsive Kalender */
.ogs-tournament-detail-layout{display:grid;grid-template-columns:minmax(0,2.55fr) minmax(340px,1fr);gap:40px;max-width:1400px;margin:34px auto 55px;padding:0 20px;color:#132B45}
.ogs-back-link{display:inline-block;margin-bottom:22px;color:#53606d;text-decoration:none;font-size:.9rem}
.ogs-detail-kicker{color:#B8913E;font-size:.78rem;font-weight:700;letter-spacing:.13em;margin-bottom:8px}
.ogs-detail-title{max-width:800px;margin:0;color:#092A4E;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.3rem,4vw,4.25rem);line-height:.95;font-weight:600}
.ogs-detail-subtitle{margin:12px 0 30px;color:#092A4E;font-size:1.35rem}
.ogs-event-panel{display:grid;grid-template-columns:160px minmax(240px,1fr) minmax(230px,.9fr);background:#F5F1E9;border-top:3px solid #B8913E}
.ogs-event-date,.ogs-event-facts,.ogs-event-actions{padding:28px}
.ogs-event-date,.ogs-event-facts{border-right:1px solid #dfd1b4}
.ogs-event-date strong,.ogs-event-date span,.ogs-event-date b{display:block;font-family:"Cormorant Garamond",Georgia,serif;color:#092A4E}
.ogs-event-date strong{font-size:2rem;line-height:1}.ogs-event-date span{font-size:1.4rem}.ogs-event-date b{font-size:1.8rem;margin-top:4px}
.ogs-event-facts{display:grid;gap:14px}.ogs-event-facts div{display:grid;gap:2px}.ogs-event-facts span{font-size:.78rem;color:#707980}.ogs-event-facts strong{font-size:.95rem;color:#132B45}
.ogs-event-actions{display:flex;flex-direction:column;align-items:stretch;gap:11px}
.ogs-register{text-align:center;padding:14px 18px;background:#092A4E!important;border-color:#092A4E!important}
.ogs-registered{padding:13px 15px;background:#eef3ec;border-left:3px solid #B8913E;font-weight:700;color:#315a42}
.ogs-registration-closed,.ogs-registration-note{padding:12px 14px;background:#fff;color:#66717a;font-size:.9rem}
.ogs-text-link,.ogs-document-link{color:#092A4E;text-decoration:none;border-bottom:1px solid #d6c7a5;padding:7px 0;font-size:.88rem}
.ogs-tournament-sidebar{background:#F5F1E9;padding:28px;border-radius:7px;align-self:start}
.ogs-tournament-sidebar>h2{margin:0 0 16px;color:#092A4E;font-family:"Cormorant Garamond",Georgia,serif;font-size:2rem}
.ogs-mini-calendar{background:#fff;padding:16px;border-radius:5px}
.ogs-calendar-toolbar{display:flex;justify-content:space-between;align-items:center;color:#092A4E;font-weight:700}
.ogs-calendar-toolbar button{appearance:none;border:0;background:transparent;color:#092A4E;font-size:1.7rem;cursor:pointer;padding:2px 8px}
.ogs-calendar-toolbar button:disabled{opacity:.25}
.ogs-calendar-month h3{text-align:center;margin:8px 0 14px;color:#092A4E;font-size:1rem}
.ogs-mini-calendar .ogs-calendar-weekdays,.ogs-mini-calendar .ogs-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.ogs-calendar-weekdays span{text-align:center;font-size:.7rem;font-weight:700;color:#68737e;padding:5px 0}
.ogs-mini-calendar .ogs-calendar-day{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;font-size:.78rem;color:#132B45;text-decoration:none}
.ogs-mini-calendar .ogs-calendar-day.has-event{background:#B8913E;color:#fff;font-weight:700;box-shadow:0 3px 9px rgba(184,145,62,.25)}
.ogs-mini-calendar .ogs-calendar-day.has-event:hover{background:#092A4E;color:#fff}
.ogs-next-events{margin-top:15px;border-top:1px solid #dfd1b4}
.ogs-next-event{display:grid;grid-template-columns:50px 1fr 14px;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #dfd1b4;text-decoration:none;color:#092A4E}
.ogs-next-date{display:grid;place-items:center;background:#fff;border-radius:50%;width:48px;height:48px}.ogs-next-date b{font-size:1rem}.ogs-next-date small{font-size:.58rem;margin-top:-7px}
.ogs-next-event>span:nth-child(2){display:grid;gap:3px}.ogs-next-event strong{font-size:.82rem}.ogs-next-event small{font-size:.72rem;color:#66717a}.ogs-next-event i{font-size:1.3rem;color:#B8913E;font-style:normal}
.ogs-all-events{display:block;text-align:right;margin-top:17px;color:#9C762E;font-weight:700;text-decoration:none;font-size:.82rem}
.ogs-no-events{font-size:.85rem;color:#66717a}
@media(max-width:980px){.ogs-tournament-detail-layout{grid-template-columns:1fr}.ogs-tournament-sidebar{max-width:none}.ogs-event-panel{grid-template-columns:150px 1fr}.ogs-event-actions{grid-column:1/-1;border-top:1px solid #dfd1b4}.ogs-event-facts{border-right:0}}
@media(max-width:620px){.ogs-tournament-detail-layout{margin-top:22px;padding:0 14px}.ogs-detail-title{font-size:2.5rem}.ogs-detail-subtitle{font-size:1.1rem}.ogs-event-panel{grid-template-columns:1fr}.ogs-event-date,.ogs-event-facts{border-right:0;border-bottom:1px solid #dfd1b4}.ogs-event-date,.ogs-event-facts,.ogs-event-actions{padding:20px}.ogs-tournament-sidebar{padding:20px 15px}}

/* 0.4.1 – Kalenderstatus */
.ogs-mini-calendar .ogs-calendar-day.has-event{position:relative;background:#092A4E;color:#fff;font-weight:700;box-shadow:none}
.ogs-mini-calendar .ogs-calendar-day.has-event::after{content:"";position:absolute;bottom:3px;left:50%;width:4px;height:4px;border-radius:50%;background:#B8913E;transform:translateX(-50%)}
.ogs-mini-calendar .ogs-calendar-day.has-event.is-current-event{background:#B8913E;color:#fff;box-shadow:0 3px 9px rgba(184,145,62,.28)}
.ogs-mini-calendar .ogs-calendar-day.has-event.is-current-event::after{display:none}
.ogs-mini-calendar .ogs-calendar-day.has-event:hover{background:#9C762E;color:#fff}


/* 0.4.3 – Outline-Icons entsprechend dem ÖGS-Mockup */
.ogs-icon{
  width:25px;
  height:25px;
  flex:0 0 25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
  color:#B8913E;
}
.ogs-icon--navy{color:#092A4E}
.ogs-event-facts .ogs-fact{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:12px;
  align-items:center;
}
.ogs-event-facts .ogs-fact-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#B8913E;
}
.ogs-event-facts .ogs-fact-copy{
  display:grid;
  gap:2px;
}
.ogs-event-facts .ogs-fact-copy>span{
  font-size:.78rem;
  color:#707980;
}
.ogs-event-facts .ogs-fact-copy>strong{
  font-size:.95rem;
  color:#132B45;
}
.ogs-document-link{
  display:flex;
  align-items:center;
  gap:10px;
}
.ogs-document-link .ogs-icon{
  width:21px;
  height:21px;
  flex-basis:21px;
}


/* 0.4.4 – Turnierdauer unter dem Datumsblock */
.ogs-event-duration{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:20px;
  padding-top:16px;
  border-top:2px solid #B8913E;
  color:#9C762E;
}
.ogs-event-duration .ogs-icon{
  width:22px;
  height:22px;
  flex:0 0 22px;
}
.ogs-event-duration>span{
  display:block;
  font-family:Montserrat,Arial,sans-serif;
  font-size:.72rem;
  line-height:1.25;
  letter-spacing:.12em;
  color:#9C762E;
}
.ogs-event-duration>span>strong{
  font:inherit;
  font-weight:700;
}


/* 0.5.0 – Startseite: nächste Turniere + Turnierkalender */
.ogs-tournament-list--home{max-width:none;margin:0}
.ogs-tournament-list--home .ogs-tournament-card{
  min-height:145px;
  grid-template-columns:145px minmax(0,1fr) 48px;
  border:1px solid #e4e7ea;
  border-radius:9px;
  box-shadow:0 4px 18px rgba(9,42,78,.035);
  overflow:hidden;
  margin-bottom:16px;
}
.ogs-tournament-list--home .ogs-tournament-date{
  background:linear-gradient(135deg,#fbf8f2,#f5f1e9);
  border-right:1px solid rgba(184,145,62,.55);
  margin:14px 0 14px 14px;
  padding:12px 22px;
  justify-content:center;
}
.ogs-tournament-list--home .ogs-tournament-date .day{font-size:2.65rem;line-height:.95}
.ogs-tournament-list--home .ogs-tournament-date .month{color:#B8913E;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ogs-tournament-list--home .ogs-tournament-content{padding:20px 26px}
.ogs-tournament-list--home .ogs-tournament-eyebrow{color:#B8913E;letter-spacing:.18em;font-weight:700}
.ogs-tournament-list--home .ogs-tournament-title{font-family:"Cormorant Garamond",Georgia,serif;font-size:1.55rem;margin:.2rem 0}
.ogs-tournament-list--home .ogs-tournament-title a{color:#092A4E;text-decoration:none}
.ogs-tournament-list--home .ogs-tournament-club{color:#132B45;font-weight:500}
.ogs-tournament-list--home .ogs-tournament-meta{gap:28px;margin-top:12px;color:#667483}
.ogs-tournament-list--home .ogs-meta-icon{display:inline-flex;align-items:center;gap:8px}
.ogs-tournament-list--home .ogs-meta-icon{color:#B8913E;font-size:1.25rem}
.ogs-tournament-list--home .ogs-meta-icon span{color:#667483;font-size:.92rem}
.ogs-tournament-list--home .ogs-tournament-action{display:flex;align-items:center;justify-content:center}
.ogs-tournament-list--home .ogs-tournament-action a{font-size:2.2rem;color:#B8913E;text-decoration:none;border:0}
.ogs-tournament-list--home .ogs-tournament-card:hover{border-color:rgba(184,145,62,.6);box-shadow:0 8px 25px rgba(9,42,78,.07)}
.ogs-tournament-list--home .ogs-tournament-card:hover .ogs-tournament-action a{transform:translateX(3px)}

.ogs-home-calendar{
  background:linear-gradient(145deg,#f8f5ef,#f2eee5);
  border-radius:8px;
  padding:28px 28px 24px;
  color:#092A4E;
}
.ogs-home-calendar h2{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:2rem;
  margin:0 0 18px;
  color:#092A4E;
}
.ogs-home-calendar .ogs-calendar-frame{background:rgba(255,255,255,.62);border-radius:6px;padding:16px}
.ogs-home-calendar .ogs-calendar-month{display:none}
.ogs-home-calendar .ogs-calendar-month.is-active{display:block}
.ogs-home-calendar .ogs-calendar-head{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;text-align:center;margin-bottom:14px}
.ogs-home-calendar .ogs-calendar-head strong{font-size:1rem}
.ogs-home-calendar .ogs-calendar-nav{border:0;background:transparent;color:#092A4E;font-size:1.8rem;cursor:pointer;line-height:1}
.ogs-home-calendar .ogs-calendar-nav:disabled{opacity:.18;cursor:default}
.ogs-home-calendar .ogs-calendar-weekdays,.ogs-home-calendar .ogs-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;text-align:center}
.ogs-home-calendar .ogs-calendar-weekdays{font-size:.72rem;margin-bottom:7px}
.ogs-home-calendar .ogs-calendar-day{
  aspect-ratio:1;
  min-width:30px;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;
  color:#092A4E;
  text-decoration:none;
  font-size:.82rem;
}
.ogs-home-calendar .ogs-calendar-day.has-event{background:#B8913E;color:white;font-weight:700;box-shadow:0 3px 10px rgba(184,145,62,.22)}
.ogs-home-calendar .ogs-calendar-day.has-event:hover{background:#9C762E;color:white}
.ogs-home-calendar .ogs-calendar-day.has-deadline{background:#ebe4d5;color:#092A4E;font-weight:600}
.ogs-home-calendar .ogs-calendar-day.is-empty{visibility:hidden}
.ogs-calendar-legend{display:flex;gap:24px;padding:18px 6px;color:#667483;font-size:.82rem}
.ogs-calendar-legend span{display:flex;align-items:center;gap:8px}
.ogs-calendar-legend i{width:13px;height:13px;border-radius:50%;display:inline-block}
.ogs-calendar-legend .is-event{background:#B8913E}
.ogs-calendar-legend .is-deadline{background:#ebe4d5}
.ogs-calendar-all{border-top:1px solid rgba(9,42,78,.13);padding-top:18px;text-align:right}
.ogs-calendar-all a{color:#B8913E;text-decoration:underline;text-underline-offset:4px}
.ogs-calendar-all span{margin-left:8px}

@media(max-width:900px){
  .ogs-tournament-list--home .ogs-tournament-card{grid-template-columns:105px minmax(0,1fr) 36px}
  .ogs-tournament-list--home .ogs-tournament-date{padding:10px}
}
@media(max-width:640px){
  .ogs-tournament-list--home .ogs-tournament-card{grid-template-columns:86px minmax(0,1fr) 28px;min-height:120px}
  .ogs-tournament-list--home .ogs-tournament-date{margin:10px 0 10px 10px;padding:8px}
  .ogs-tournament-list--home .ogs-tournament-date .day{font-size:2rem}
  .ogs-tournament-list--home .ogs-tournament-content{padding:14px}
  .ogs-tournament-list--home .ogs-tournament-title{font-size:1.2rem}
  .ogs-tournament-list--home .ogs-tournament-meta{display:block}
  .ogs-tournament-list--home .ogs-tournament-meta span{margin-right:8px}
  .ogs-home-calendar{padding:20px 14px}
}


/* 0.5.2 – echte SVG-Icons auch in der Startseiten-Turnierübersicht */
.ogs-tournament-list--home .ogs-meta-svg{
  width:22px;
  height:22px;
  flex:0 0 22px;
  fill:none;
  stroke:#B8913E;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ogs-tournament-list--home .ogs-meta-icon{
  font-size:inherit;
}


/* 0.5.6 – Startseitenbereich sauber und kompakt ausrichten */
.ogs-tournament-list--home{
  width:100%;
  max-width:none;
  margin:0;
}
.ogs-tournament-list--home .ogs-tournament-card{
  width:100%;
  min-height:132px;
  grid-template-columns:130px minmax(0,1fr) 44px;
  margin:0 0 16px;
  border-radius:8px;
}
.ogs-tournament-list--home .ogs-tournament-date{
  margin:14px 0 14px 14px;
  padding:10px 18px;
}
.ogs-tournament-list--home .ogs-tournament-content{
  padding:18px 28px;
  align-self:center;
}
.ogs-tournament-list--home .ogs-tournament-title{
  margin:0 0 4px;
  font-size:1.48rem;
  line-height:1.12;
}
.ogs-tournament-list--home .ogs-tournament-club{
  margin-top:0;
}
.ogs-tournament-list--home .ogs-tournament-meta{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 28px;
}
.ogs-tournament-list--home .ogs-tournament-action{
  padding-right:12px;
}

/* Der Kalenderblock darf niemals aus seiner 1/3-Spalte herausragen. */
.ogs-home-calendar{
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  padding:26px 28px 22px;
  overflow:hidden;
}
.ogs-home-calendar h2{
  margin:0 0 18px;
  padding:0;
  font-size:2rem;
  line-height:1.08;
  white-space:normal;
}
.ogs-home-calendar .ogs-calendar-frame{
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  padding:16px 14px;
  overflow:hidden;
}
.ogs-home-calendar .ogs-calendar-head{
  width:100%;
  grid-template-columns:30px minmax(0,1fr) 30px;
  gap:4px;
}
.ogs-home-calendar .ogs-calendar-head strong{
  min-width:0;
  font-size:.95rem;
  white-space:nowrap;
}
.ogs-home-calendar .ogs-calendar-weekdays,
.ogs-home-calendar .ogs-calendar-grid{
  width:100%;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:5px;
}
.ogs-home-calendar .ogs-calendar-day{
  width:100%;
  min-width:0;
  max-width:42px;
  margin-inline:auto;
  font-size:.78rem;
}
.ogs-home-calendar .ogs-calendar-legend{
  padding:16px 2px;
  gap:18px;
  flex-wrap:wrap;
}
.ogs-home-calendar .ogs-calendar-all{
  padding-top:16px;
}

/* In schmaleren 1/3-Spalten etwas kompakter, ohne Abschneiden. */
@media (min-width:901px) and (max-width:1250px){
  .ogs-home-calendar{padding:22px 18px}
  .ogs-home-calendar h2{font-size:1.75rem}
  .ogs-home-calendar .ogs-calendar-frame{padding:14px 10px}
  .ogs-home-calendar .ogs-calendar-weekdays,
  .ogs-home-calendar .ogs-calendar-grid{gap:3px}
  .ogs-tournament-list--home .ogs-tournament-content{padding:16px 20px}
}
@media(max-width:900px){
  .ogs-home-calendar{margin-top:20px}
}


/* 0.5.7 – klarer Abstand zwischen 2/3-Turnierliste und 1/3-Kalender */
@media (min-width:901px){
  .ogs-home-calendar{
    width:calc(100% - 28px);
    max-width:calc(100% - 28px);
    margin-left:28px;
  }
}
@media (max-width:900px){
  .ogs-home-calendar{
    width:100%;
    max-width:100%;
    margin-left:0;
  }
}


/* 0.5.8 – Kalenderblock: eigener sauberer Innenabstand statt künstlichem Spalten-Gutter */
@media (min-width:901px){
  .ogs-home-calendar{
    width:100%;
    max-width:100%;
    margin-left:0;
  }
}

.ogs-home-calendar{
  box-sizing:border-box;
  padding:30px;
}

.ogs-home-calendar h2{
  margin:0 0 22px;
  padding:0;
  line-height:1.08;
}

.ogs-home-calendar .ogs-calendar-frame{
  margin:0;
  padding:18px 16px;
}

.ogs-home-calendar .ogs-calendar-legend{
  margin:0;
  padding:18px 2px;
}

.ogs-home-calendar .ogs-calendar-all{
  margin:0;
  padding:18px 2px 0;
}

@media (max-width:900px){
  .ogs-home-calendar{
    width:100%;
    max-width:100%;
    margin-left:0;
    padding:24px 20px;
  }
}

@media (max-width:480px){
  .ogs-home-calendar{
    padding:20px 16px;
  }
}


/* 0.5.9 – Startseitenkalender: sichtbarer Innenrand unabhängig vom EPT-/Theme-CSS */
.ogs-home-calendar{
  padding:0 !important;
  overflow:hidden;
}

.ogs-home-calendar > h2{
  margin:0 !important;
  padding:30px 30px 22px !important;
}

.ogs-home-calendar > .ogs-calendar-frame{
  width:calc(100% - 60px) !important;
  max-width:calc(100% - 60px) !important;
  margin:0 30px !important;
  box-sizing:border-box;
}

.ogs-home-calendar > .ogs-calendar-legend{
  margin:0 30px !important;
  padding:18px 2px !important;
}

.ogs-home-calendar > .ogs-calendar-all{
  margin:0 30px !important;
  padding:18px 2px 26px !important;
}

/* /turniere: dieselbe hochwertige Kartenoptik wie auf der Startseite. */
.path-turniere .ogs-tournament-list--home,
.view-tournaments .ogs-tournament-list--home{
  width:100%;
  max-width:1400px;
}
.path-turniere .ogs-tournament-list--home .ogs-tournament-card{
  min-height:132px;
}

/* Mobil: kompakter Innenrand. */
@media(max-width:640px){
  .ogs-home-calendar > h2{
    padding:22px 18px 18px !important;
  }
  .ogs-home-calendar > .ogs-calendar-frame{
    width:calc(100% - 36px) !important;
    max-width:calc(100% - 36px) !important;
    margin:0 18px !important;
  }
  .ogs-home-calendar > .ogs-calendar-legend,
  .ogs-home-calendar > .ogs-calendar-all{
    margin-left:18px !important;
    margin-right:18px !important;
  }
}


/* 0.6.1 – Umschalter Kacheln / Liste für "Alle kommenden Turniere" */
.ogs-view-switcher{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:4px;
  margin:0 0 16px;
}
.ogs-view-switcher__label{
  margin-right:8px;
  color:#7a8590;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.ogs-view-switcher__button{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:7px 11px;
  border:1px solid #e0e3e6;
  border-radius:5px;
  background:#fff;
  color:#657381;
  font:inherit;
  font-size:.82rem;
  cursor:pointer;
  transition:.18s ease;
}
.ogs-view-switcher__button svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ogs-view-switcher__button svg rect{
  fill:none;
}
.ogs-view-switcher__button:hover{
  color:#092A4E;
  border-color:#B8913E;
}
.ogs-view-switcher__button.is-active{
  color:#092A4E;
  border-color:#B8913E;
  background:#F8F5EF;
}

/* Compact list mode: deliberately much denser for 15–20+ tournaments. */
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-card{
  min-height:70px;
  grid-template-columns:94px minmax(0,1fr) 36px;
  margin-bottom:8px;
  border-radius:6px;
  box-shadow:none;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-date{
  margin:7px 0 7px 7px;
  padding:5px 12px;
  min-height:56px;
  border-right:1px solid rgba(184,145,62,.5);
  background:#F8F5EF;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-date .day{
  font-size:1.55rem;
  line-height:1;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-date .month{
  font-size:.68rem;
  margin-top:3px;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-date .year{
  font-size:.68rem;
  margin-top:2px;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-content{
  padding:9px 18px;
  display:grid;
  grid-template-columns:minmax(190px,1.4fr) minmax(120px,.8fr);
  grid-template-areas:
    "title meta"
    "club meta";
  align-items:center;
  column-gap:22px;
  row-gap:0;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-eyebrow{
  display:none;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-title{
  grid-area:title;
  margin:0;
  font-family:Montserrat,Arial,sans-serif;
  font-size:.96rem;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:none;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-club{
  grid-area:club;
  margin:3px 0 0;
  font-size:.82rem;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-meta{
  grid-area:meta;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  margin:0;
  font-size:.78rem;
}
.ogs-tournament-list--switchable.is-list-view .ogs-meta-svg{
  width:16px;
  height:16px;
  flex-basis:16px;
}
.ogs-tournament-list--switchable.is-list-view .ogs-meta-icon span{
  font-size:.78rem;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-action{
  padding:0 8px 0 0;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-action a{
  font-size:1.65rem;
}

/* Smooth visual change without moving the calendar column. */
.ogs-tournament-list--switchable .ogs-tournament-card,
.ogs-tournament-list--switchable .ogs-tournament-date,
.ogs-tournament-list--switchable .ogs-tournament-content{
  transition:min-height .18s ease, padding .18s ease, margin .18s ease;
}

@media(max-width:760px){
  .ogs-view-switcher__label{display:none}
  .ogs-tournament-list--switchable.is-list-view .ogs-tournament-card{
    grid-template-columns:76px minmax(0,1fr) 28px;
  }
  .ogs-tournament-list--switchable.is-list-view .ogs-tournament-content{
    display:block;
    padding:9px 12px;
  }
  .ogs-tournament-list--switchable.is-list-view .ogs-tournament-meta{
    margin-top:5px;
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    gap:5px 12px;
  }
}


/* 0.6.2 – Kachelansicht: zwei Turniere nebeneinander */
.ogs-tournament-list--switchable.is-card-view{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-card{
  min-width:0;
  min-height:150px;
  margin:0;
  grid-template-columns:105px minmax(0,1fr) 30px;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-date{
  margin:12px 0 12px 12px;
  padding:10px 12px;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-date .day{
  font-size:2.15rem;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-content{
  min-width:0;
  padding:16px 14px 16px 20px;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-title{
  font-size:1.18rem;
  line-height:1.15;
  overflow-wrap:anywhere;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-club{
  font-size:.9rem;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-meta{
  margin-top:10px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
}

.ogs-tournament-list--switchable.is-card-view .ogs-meta-svg{
  width:17px;
  height:17px;
  flex-basis:17px;
}

.ogs-tournament-list--switchable.is-card-view .ogs-meta-icon span{
  font-size:.78rem;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-action{
  padding-right:6px;
}

.ogs-tournament-list--switchable.is-card-view .ogs-tournament-action a{
  font-size:1.7rem;
}

/* Listenansicht bleibt einspaltig wie bisher. */
.ogs-tournament-list--switchable.is-list-view{
  display:block;
}

/* Bei zu wenig Platz automatisch wieder eine Kachel pro Zeile. */
@media(max-width:1100px){
  .ogs-tournament-list--switchable.is-card-view{
    grid-template-columns:1fr;
  }
}


/* 0.6.3 – Listenansicht noch etwas kompakter */
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-card{
  min-height:62px;
  margin-bottom:7px;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-date{
  min-height:50px;
  margin:6px 0 6px 6px;
  padding:4px 10px;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-content{
  padding:6px 16px;
}
.ogs-tournament-list--switchable.is-list-view .ogs-tournament-meta{
  gap:2px;
}


/* 0.6.4 – Startseite: drei kompaktere Turniere passend zum Kalender */
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-card{
  min-height:104px;
  grid-template-columns:104px minmax(0,1fr) 34px;
  margin:0 0 12px;
  border-radius:7px;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-date{
  min-height:82px;
  margin:10px 0 10px 10px;
  padding:7px 12px;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-date .day{
  font-size:2rem;
  line-height:1;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-date .month{
  margin-top:4px;
  font-size:.68rem;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-date .year{
  margin-top:3px;
  font-size:.7rem;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-content{
  padding:11px 18px;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-eyebrow{
  margin-bottom:3px;
  font-size:.67rem;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-title{
  margin:0 0 2px;
  font-family:Montserrat,Arial,sans-serif;
  font-size:1.03rem;
  line-height:1.18;
  font-weight:700;
  letter-spacing:0;
  text-transform:none;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-club{
  margin:0;
  font-size:.86rem;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-meta{
  margin-top:7px;
  gap:8px 22px;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-meta-svg{
  width:16px;
  height:16px;
  flex-basis:16px;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-meta-icon span{
  font-size:.76rem;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-action{
  padding-right:8px;
}
.ogs-tournament-list--home:not(.ogs-tournament-list--switchable) .ogs-tournament-action a{
  font-size:1.55rem;
}


/* 0.6.5 – Startseite: CTA gehört zur Turnierliste, nicht zum Kalender */
.path-frontpage .ogs-home-calendar > .ogs-calendar-all{
  display:none !important;
}

.ogs-home-tournaments-all{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(9,42,78,.13);
  text-align:right;
}
.ogs-home-tournaments-all a{
  color:#B8913E;
  text-decoration:underline;
  text-underline-offset:4px;
  font-size:.92rem;
}
.ogs-home-tournaments-all a:hover{
  color:#9C762E;
}
.ogs-home-tournaments-all span{
  margin-left:8px;
}


/* 0.7.0 – Startseite: kompakter 3-Turnier-Slider + Countdown */
.ogs-home-slider{max-width:1400px;margin:0 auto 34px;color:#092A4E}
.ogs-home-slider__head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 12px}
.ogs-home-slider__head strong{font-size:1rem;line-height:1.2;font-weight:700;letter-spacing:.08em}
.ogs-home-slider__head>a{color:#9C762E;text-decoration:none;font-size:.78rem;font-weight:700}
.ogs-home-slider__frame{border:1px solid #e1e5e8;border-radius:7px;overflow:hidden;background:#fff}
.ogs-home-slide{display:grid;grid-template-columns:minmax(0,1fr) 285px;min-height:142px}
.ogs-home-slide[hidden]{display:none!important}
.ogs-home-slide__main{display:grid;grid-template-columns:104px minmax(0,1fr) 38px;align-items:stretch;min-width:0}
.ogs-home-slide__date{margin:12px 0 12px 12px;padding:8px 10px;background:#F5F1E9;border-right:1px solid rgba(184,145,62,.45);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.ogs-home-slide__date .day{font-size:2rem;line-height:1;font-weight:700}
.ogs-home-slide__date .month{margin-top:5px;color:#B8913E;font-size:.68rem;line-height:1;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.ogs-home-slide__date .year{margin-top:5px;color:#7b8793;font-size:.7rem}
.ogs-home-slide__content{padding:18px 24px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.ogs-home-slide__content h3{margin:0 0 3px;font-family:Montserrat,Arial,sans-serif;font-size:1.02rem;line-height:1.2;font-weight:700;letter-spacing:0;text-transform:none}
.ogs-home-slide__content h3 a{color:#092A4E;text-decoration:none}
.ogs-home-slide__club{font-size:.86rem;line-height:1.25;font-weight:600;margin-bottom:9px}
.ogs-home-slide__meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px 24px;color:#758190;font-size:.76rem}
.ogs-home-slide__meta span{display:flex;align-items:center;gap:7px}
.ogs-home-slide__meta svg{width:16px;height:16px;fill:none;stroke:#B8913E;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 16px}
.ogs-home-slide__next{align-self:stretch;border:0;background:transparent;color:#B8913E;font-size:1.9rem;line-height:1;cursor:pointer;padding:0 8px}
.ogs-home-slide__next:hover{color:#9C762E}
.ogs-home-slide__countdown{padding:17px 20px;background:#F5F1E9;border-left:1px solid #ebe4d8;display:flex;flex-direction:column;justify-content:center}
.ogs-home-slide__count-label{text-align:center;color:#687583;font-size:.62rem;font-weight:700;letter-spacing:.14em;margin-bottom:9px}
.ogs-home-slide__time{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center;margin-bottom:13px}
.ogs-home-slide__time strong{display:block;font-family:"Cormorant Garamond",Georgia,serif;color:#092A4E;font-size:1.6rem;line-height:1;font-weight:600}
.ogs-home-slide__time span{display:block;margin-top:3px;color:#65717c;font-size:.55rem}
.ogs-home-slide__cta{display:block;padding:11px 9px;border-radius:4px;background:#092A4E;color:#fff!important;text-decoration:none;text-align:center;font-size:.72rem;font-weight:700}
.ogs-home-slide__cta:hover{background:#123b66}
.ogs-home-slider__nav{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:9px}
.ogs-home-slider__arrow{border:0;background:transparent;color:#092A4E;font-size:1.25rem;line-height:1;cursor:pointer;padding:3px 8px}
.ogs-home-slider__dots{display:flex;align-items:center;gap:7px}
.ogs-home-slider__dot{width:6px;height:6px;padding:0;border:0;border-radius:50%;background:#d9d5cd;cursor:pointer}
.ogs-home-slider__dot.is-active{width:8px;height:8px;background:#B8913E}
.path-frontpage .ogs-home-calendar{display:none!important}
.path-frontpage .ogs-home-tournaments-all{display:none!important}

@media(max-width:760px){
  .ogs-home-slider__head{padding:0 14px}
  .ogs-home-slide{grid-template-columns:1fr}
  .ogs-home-slide__main{grid-template-columns:82px minmax(0,1fr) 30px}
  .ogs-home-slide__date{margin:10px 0 10px 10px;padding:7px}
  .ogs-home-slide__date .day{font-size:1.65rem}
  .ogs-home-slide__content{padding:14px 12px}
  .ogs-home-slide__meta{gap:6px 12px}
  .ogs-home-slide__countdown{border-left:0;border-top:1px solid #ebe4d8;padding:14px}
}


/* 0.7.1 – Turnieranmeldung im ÖGS-Look */
.ogs-registration-form{max-width:none!important;margin:0 0 50px!important;padding:0!important}
.ogs-registration-hero{position:relative;margin:0 calc(50% - 50vw) 0;min-height:300px;background-image:linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.78) 37%,rgba(255,255,255,.12) 72%),var(--ogs-registration-hero);background-size:cover;background-position:center 54%;display:flex;align-items:center}
.ogs-registration-hero__inner{width:min(1400px,calc(100% - 64px));margin:0 auto;padding:34px 0 48px}
.ogs-registration-back{display:inline-block;margin-bottom:18px;color:#9C762E;text-decoration:none;font-size:.86rem}
.ogs-registration-eyebrow{color:#B8913E;font-size:.72rem;font-weight:700;letter-spacing:.15em;margin-bottom:5px}
.ogs-registration-hero h1{margin:0 0 12px!important;color:#092A4E;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.4rem,4vw,4rem);line-height:.98;font-weight:600}
.ogs-registration-meta{color:#092A4E;font-size:1rem;font-weight:600}
.ogs-registration-deadline{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:10px 14px;border:1px solid rgba(184,145,62,.42);border-radius:5px;background:rgba(255,255,255,.78);color:#9C762E;font-size:.82rem}
.ogs-registration-card{position:relative;z-index:2;width:min(1160px,calc(100% - 64px));margin:-34px auto 50px;padding:12px 28px 26px;background:#fff;border:1px solid #e6e8ea;border-radius:7px;box-shadow:0 10px 30px rgba(9,42,78,.08)}
.ogs-registration-section{padding:22px 0 12px}
.ogs-registration-section__heading{display:flex;align-items:center;gap:15px;margin-bottom:16px;color:#092A4E;font-size:.83rem;letter-spacing:.04em}
.ogs-registration-section__heading:after{content:"";height:1px;background:#d6b46d;flex:1}
.ogs-registration-section__heading>span{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#B8913E;color:#fff;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.1rem;font-weight:700;box-shadow:0 3px 8px rgba(184,145,62,.2)}
.ogs-registration-form .form-item{margin-top:0;margin-bottom:14px}
.ogs-registration-form label{color:#092A4E;font-size:.82rem;font-weight:500}
.ogs-registration-form input[type=text],.ogs-registration-form input[type=number],.ogs-registration-form select,.ogs-registration-form textarea{width:100%;border:1px solid #cbd4dd;border-radius:4px;background:#fff;color:#092A4E;padding:10px 12px;box-shadow:none;min-height:42px}
.ogs-registration-form textarea{min-height:100px;resize:vertical}
.ogs-registration-form input:focus,.ogs-registration-form select:focus,.ogs-registration-form textarea:focus{outline:none;border-color:#B8913E;box-shadow:0 0 0 2px rgba(184,145,62,.12)}
.ogs-choice-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ogs-choice-cards>.form-item{margin:0!important}
.ogs-choice-cards label{display:flex;align-items:center;min-height:54px;padding:11px 14px;border:1px solid #cbd4dd;border-radius:5px;background:#fff;font-weight:600;cursor:pointer}
.ogs-choice-cards input{margin-right:10px;accent-color:#B8913E}
.ogs-choice-cards .form-item:has(input:checked) label{border-color:#B8913E;background:#fbf7ef}
.ogs-registration-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;row-gap:4px}
.ogs-registration-check-grid .form-item{margin-bottom:8px}
.ogs-registration-form input[type=checkbox]{width:17px;height:17px;margin-right:8px;accent-color:#B8913E;vertical-align:-3px}
.ogs-partner-details{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;margin-top:10px;padding:16px;background:#F5F1E9;border-radius:5px}
.ogs-partner-details>.form-item:first-child{grid-row:span 2}
.ogs-registration-actions{display:flex!important;justify-content:space-between;align-items:center;gap:16px;margin-top:20px!important}
.ogs-registration-actions .button{margin:0!important;min-width:160px;padding:11px 18px;border-radius:4px;text-align:center;text-decoration:none;font-size:.78rem;font-weight:700}
.ogs-registration-cancel{background:#fff!important;color:#092A4E!important;border:1px solid #9aaabc!important}
.ogs-registration-submit{min-width:245px!important;background:#B8913E!important;color:#fff!important;border:1px solid #B8913E!important}
.ogs-registration-submit:hover{background:#9C762E!important;border-color:#9C762E!important}
.path-turnier .region-content,.path-turnier main{overflow:visible}
@media(max-width:760px){.ogs-registration-hero{min-height:260px;background-position:center}.ogs-registration-hero__inner{width:calc(100% - 32px);padding:28px 0 52px}.ogs-registration-card{width:calc(100% - 28px);margin-top:-28px;padding:8px 18px 22px}.ogs-choice-cards,.ogs-registration-check-grid,.ogs-partner-details{grid-template-columns:1fr}.ogs-partner-details>.form-item:first-child{grid-row:auto}.ogs-registration-actions{align-items:stretch;flex-direction:column-reverse}.ogs-registration-actions .button,.ogs-registration-submit{width:100%;min-width:0!important}.ogs-registration-meta{font-size:.86rem}}


/* 0.7.2 – Registration form: exact mockup proportions and Drupal form markup */
.ogs-registration-card{width:min(1000px,calc(100% - 48px));margin:-34px auto 50px;padding:14px 24px 28px}
.ogs-registration-section{padding:18px 0 10px}
.ogs-registration-section__heading{margin-bottom:12px;font-size:.78rem;font-weight:700;letter-spacing:.035em}
.ogs-registration-section__heading>span{width:32px;height:32px;flex:0 0 32px}
.ogs-registration-form .fieldset-wrapper{margin:0}
.ogs-registration-form fieldset{border:0!important;padding:0!important;margin:0 0 12px!important}
.ogs-registration-form legend{float:none;width:auto;margin:0 0 6px;padding:0;color:#092A4E;font-size:.82rem;font-weight:500}
.ogs-registration-form .ogs-choice-cards.form-radios,
.ogs-registration-form .ogs-choice-cards .form-radios,
.ogs-registration-form .form-radios.ogs-choice-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%}
.ogs-registration-form .ogs-choice-cards .form-item,
.ogs-registration-form .form-radios.ogs-choice-cards .form-item{position:relative;margin:0!important;display:flex!important;align-items:center;min-height:52px;padding:0 14px;border:1px solid #cbd4dd;border-radius:5px;background:#fff}
.ogs-registration-form .ogs-choice-cards .form-item:has(input:checked),
.ogs-registration-form .form-radios.ogs-choice-cards .form-item:has(input:checked){border-color:#B8913E;background:#fbf7ef}
.ogs-registration-form .ogs-choice-cards label{display:block!important;min-height:0!important;padding:0!important;border:0!important;background:transparent!important;font-weight:600;line-height:1.25;cursor:pointer}
.ogs-registration-form .ogs-choice-cards input[type=radio]{width:18px;height:18px;flex:0 0 18px;margin:0 11px 0 0;accent-color:#B8913E}
.ogs-registration-form input[type=number]{min-height:40px}
.ogs-registration-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:46px;row-gap:2px;align-items:end}
.ogs-registration-check-grid .form-type-checkbox{min-height:30px;display:flex;align-items:center;margin:0!important}
.ogs-registration-check-grid .form-type-select{margin:0 0 5px!important}
.ogs-registration-check-grid select{min-height:38px!important;padding-top:7px!important;padding-bottom:7px!important}
.ogs-registration-form input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:0 9px 0 0}
.ogs-registration-form .form-type-checkbox label{font-size:.82rem;line-height:1.3}
.ogs-partner-details{grid-template-columns:1fr 1.15fr;gap:5px 28px;margin-top:8px;padding:13px 16px}
.ogs-partner-details>.form-item:first-child{grid-row:span 2;margin-bottom:0!important}
.ogs-partner-details .form-type-checkbox{display:flex;align-items:center;margin:0!important;min-height:30px}
.ogs-registration-form textarea{min-height:88px}
.ogs-registration-actions{margin-top:16px!important}
.ogs-registration-hero__inner{width:min(1000px,calc(100% - 48px));padding:32px 0 46px}
.ogs-registration-hero{min-height:300px}
@media(max-width:760px){
 .ogs-registration-card{width:calc(100% - 28px);padding:8px 16px 22px}
 .ogs-registration-hero__inner{width:calc(100% - 32px)}
 .ogs-registration-form .ogs-choice-cards.form-radios,.ogs-registration-form .ogs-choice-cards .form-radios,.ogs-registration-form .form-radios.ogs-choice-cards,.ogs-registration-check-grid,.ogs-partner-details{grid-template-columns:1fr}
 .ogs-partner-details>.form-item:first-child{grid-row:auto}
}


/* 0.7.3 – Drupal radios: robust card grid for actual fieldset markup */
.ogs-registration-form fieldset.ogs-choice-cards > .fieldset-wrapper > .form-radios,
.ogs-registration-form fieldset.ogs-choice-cards .form-radios,
.ogs-registration-form .fieldset-wrapper > .ogs-choice-cards.form-radios,
.ogs-registration-form .form-radios.ogs-choice-cards {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px 14px !important;
  width:100% !important;
  margin:0 !important;
}
.ogs-registration-form fieldset.ogs-choice-cards .form-radios > .form-item,
.ogs-registration-form fieldset.ogs-choice-cards .form-radios > .js-form-item,
.ogs-registration-form .form-radios.ogs-choice-cards > .form-item,
.ogs-registration-form .form-radios.ogs-choice-cards > .js-form-item {
  display:flex !important;
  align-items:center !important;
  position:relative !important;
  min-width:0 !important;
  min-height:52px !important;
  margin:0 !important;
  padding:10px 14px !important;
  border:1px solid #cbd4dd !important;
  border-radius:5px !important;
  background:#fff !important;
}
.ogs-registration-form fieldset.ogs-choice-cards .form-radios > .form-item:has(input[type=radio]:checked),
.ogs-registration-form fieldset.ogs-choice-cards .form-radios > .js-form-item:has(input[type=radio]:checked),
.ogs-registration-form .form-radios.ogs-choice-cards > .form-item:has(input[type=radio]:checked),
.ogs-registration-form .form-radios.ogs-choice-cards > .js-form-item:has(input[type=radio]:checked) {
  border-color:#B8913E !important;
  background:#fbf7ef !important;
}
.ogs-registration-form fieldset.ogs-choice-cards .form-radios input[type=radio],
.ogs-registration-form .form-radios.ogs-choice-cards input[type=radio] {
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  margin:0 11px 0 0 !important;
  accent-color:#B8913E;
}
.ogs-registration-form fieldset.ogs-choice-cards .form-radios label,
.ogs-registration-form .form-radios.ogs-choice-cards label {
  display:block !important;
  flex:1 1 auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#092A4E !important;
  font-size:.82rem !important;
  line-height:1.25 !important;
  font-weight:600 !important;
  cursor:pointer;
}
@media(max-width:760px){
  .ogs-registration-form fieldset.ogs-choice-cards > .fieldset-wrapper > .form-radios,
  .ogs-registration-form fieldset.ogs-choice-cards .form-radios,
  .ogs-registration-form .fieldset-wrapper > .ogs-choice-cards.form-radios,
  .ogs-registration-form .form-radios.ogs-choice-cards{grid-template-columns:1fr !important}
}


/* 0.7.4 – force actual Drupal radio markup into mockup cards + xLarge 1400 */
.ogs-registration-hero__inner,
.ogs-registration-card{
  width:min(1400px,calc(100% - 64px)) !important;
  max-width:1400px !important;
}
.ogs-choice-cards-fixed{width:100% !important;}
.ogs-choice-cards-fixed .form-radios{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px 14px !important;
  width:100% !important;
  margin:0 !important;
}
.ogs-choice-cards-fixed .form-radios > .form-item,
.ogs-choice-cards-fixed .form-radios > .js-form-item,
.ogs-choice-cards-fixed .form-item:has(input[type="radio"][name="competition_mode"]){
  display:flex !important;
  align-items:center !important;
  min-height:54px !important;
  margin:0 !important;
  padding:10px 14px !important;
  border:1px solid #cbd4dd !important;
  border-radius:5px !important;
  background:#fff !important;
  box-sizing:border-box !important;
}
.ogs-choice-cards-fixed .form-item:has(input[type="radio"][name="competition_mode"]:checked){
  border-color:#B8913E !important;
  background:#fbf7ef !important;
}
.ogs-choice-cards-fixed input[type="radio"][name="competition_mode"]{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  margin:0 11px 0 0 !important;
  accent-color:#B8913E !important;
}
.ogs-choice-cards-fixed label{
  display:block !important;
  flex:1 1 auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#092A4E !important;
  font-size:.82rem !important;
  line-height:1.25 !important;
  font-weight:600 !important;
}
@media(max-width:760px){
  .ogs-registration-hero__inner,.ogs-registration-card{width:calc(100% - 28px) !important;}
  .ogs-choice-cards-fixed .form-radios{grid-template-columns:1fr !important;}
}


/* 0.7.9 – registration layout width only.
   Spiel-/Wertungsart intentionally uses untouched Drupal radio markup. */
.ogs-registration-hero__inner,
.ogs-registration-card,
.ogs-registration-form {
  max-width: 1400px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ogs-registration-card {
  margin-bottom: 50px !important;
}

/* 0.7.10 – Registration form controls */
#edit-competition-mode.radio {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px 20px;
}

#edit-competition-mode .form-check {
  border: 1px solid #b8913f;
  padding-top: 9px;
  padding-bottom: 9px;
}

#edit-competition-mode .form-check input {
  border-radius: 3px;
  margin-left: -9px;
  margin-right: 9px;
}

#golfclub-tournament-registration-form .form-control {
  border-color: #b8913f;
}

#golfclub-tournament-registration-form .form-check-input:checked[type="radio"],
#golfclub-tournament-registration-form .form-check-input:checked[type="checkbox"] {
  background: #b8913f;
  border-color: #b8913f;
  position: relative;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}

/* 0.7.12 – cancellation confirmation */
.ogs-cancel-form {
  width: calc(100% - 48px);
  max-width: 720px;
  margin: 40px auto 50px !important;
  padding: 34px 38px 36px;
  border: 1px solid #e1e4e7;
  border-top: 3px solid #b8913f;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 8px 26px rgba(9, 42, 78, .06);
  box-sizing: border-box;
}

.ogs-cancel-card__lead {
  margin: 0 0 8px;
  color: #092a4e;
  font-size: 1.15rem;
  line-height: 1.45;
}

.ogs-cancel-card__note {
  margin: 0 0 26px;
  color: #6f7b87;
  font-size: .95rem;
}

.ogs-cancel-form .form-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 !important;
}

.ogs-cancel-form .ogs-cancel-submit {
  min-height: 44px;
  padding: 10px 22px !important;
  border: 1px solid #092a4e !important;
  border-radius: 4px !important;
  background: #092a4e !important;
  color: #fff !important;
  font-weight: 600;
}

.ogs-cancel-form .ogs-cancel-submit:hover,
.ogs-cancel-form .ogs-cancel-submit:focus {
  background: #123b66 !important;
  border-color: #123b66 !important;
}

.ogs-cancel-form .ogs-cancel-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 22px !important;
  border: 1px solid #aeb9c4 !important;
  border-radius: 4px !important;
  background: #fff !important;
  color: #092a4e !important;
  text-decoration: none !important;
  box-sizing: border-box;
}

.ogs-cancel-form .ogs-cancel-back:hover,
.ogs-cancel-form .ogs-cancel-back:focus {
  border-color: #b8913f !important;
  color: #9c762e !important;
}

@media (max-width: 600px) {
  .ogs-cancel-form {
    width: calc(100% - 28px);
    margin-top: 24px !important;
    padding: 26px 22px 28px;
  }
  .ogs-cancel-form .form-actions {
    align-items: stretch;
    flex-direction: column;
  }
}


/* 0.8.1 – tournament administration shortcuts on detail pages. */
.ogs-tournament-admin-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 22px;padding:12px 14px;border:1px solid #E4E7EA;border-radius:10px;background:#F8F8F6}.ogs-tournament-admin-actions>span{margin-right:auto;color:#74808C;font:700 10px/1 Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase}.ogs-tournament-admin-actions .gct-button{min-height:38px;padding:10px 14px;border-radius:7px;font-size:11px}.ogs-tournament-admin-actions .gct-button--secondary{background:#fff;color:#092A4E;border:1px solid #C8D0D7}.ogs-tournament-admin-actions .ogs-text-link{font-size:11px}@media(max-width:620px){.ogs-tournament-admin-actions{align-items:stretch;flex-direction:column}.ogs-tournament-admin-actions>span{margin-right:0}.ogs-tournament-admin-actions a{text-align:center}}


/* 0.8.2 – shared tournament context header + navigation */
.ogs-tournament-context{width:100vw;margin-left:calc(50% - 50vw);margin-bottom:28px}
.ogs-team-tournament-header{width:100%;background:linear-gradient(110deg,#092A4E 0%,#123B63 62%,#092A4E 100%);color:#fff}
.ogs-team-tournament-header__inner{max-width:1400px;margin:0 auto;padding:28px 24px 25px;box-sizing:border-box}
.ogs-team-tournament-kicker{margin-bottom:7px;color:#D1A846;font:700 11px/1 Montserrat,sans-serif;letter-spacing:.14em}
.ogs-team-tournament-header h1{margin:0;color:#fff;font:600 clamp(34px,3.6vw,54px)/1.04 "Cormorant Garamond",Georgia,serif}
.ogs-team-tournament-meta{display:flex;gap:24px;flex-wrap:wrap;margin-top:13px;font:600 13px/1.3 Montserrat,sans-serif}
.ogs-team-tournament-nav{display:flex;align-items:center;width:100%;min-height:58px;padding:0 max(24px,calc((100% - 1400px)/2 + 24px));border-bottom:1px solid #E4E7EA;background:#fff;box-sizing:border-box;overflow-x:auto}
.ogs-team-tournament-nav a{display:flex;align-items:center;min-height:58px;padding:0 18px;color:#092A4E!important;text-decoration:none!important;white-space:nowrap;font:600 12px/1 Montserrat,sans-serif;border-bottom:3px solid transparent;box-sizing:border-box}
.ogs-team-tournament-nav a:hover,.ogs-team-tournament-nav a.is-active{color:#9C762E!important;border-bottom-color:#B8913E}
.ogs-team-tournament-nav .ogs-team-back{margin-left:auto;color:#66717c!important}
@media(max-width:760px){.ogs-team-tournament-header__inner{padding:24px 14px 22px}.ogs-team-tournament-nav{padding:0 6px}.ogs-team-tournament-nav a{padding:0 12px}.ogs-team-tournament-nav .ogs-team-back{margin-left:0}}


/* 0.8.5 – definitive shared tournament experience (mockup). */
.ogs-tournament-context{
  width:100vw!important;
  max-width:none!important;
  margin:0 calc(50% - 50vw) 30px!important;
  box-sizing:border-box;
}
.ogs-team-tournament-header{
  position:relative;
  width:100%!important;
  min-height:260px;
  display:flex;
  align-items:center;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(5,30,55,.88) 0%,rgba(5,30,55,.68) 38%,rgba(5,30,55,.22) 72%,rgba(5,30,55,.08) 100%),
    url("../images/tournament-registration-header.png") center 54% / cover no-repeat!important;
  overflow:hidden;
}
.ogs-team-tournament-header__inner{
  width:calc(100% - 48px)!important;
  max-width:1400px!important;
  margin:0 auto!important;
  padding:38px 0 34px!important;
  box-sizing:border-box;
}
.ogs-team-tournament-kicker{color:#D1A846!important;font-size:12px!important;letter-spacing:.14em!important}
.ogs-team-tournament-header h1{max-width:780px;margin:8px 0 0!important;color:#fff!important;font-size:clamp(48px,5vw,72px)!important;text-shadow:0 2px 14px rgba(0,0,0,.18)}
.ogs-team-tournament-meta{margin-top:17px!important;gap:28px!important;color:#fff!important;font-size:13px!important;text-shadow:0 1px 6px rgba(0,0,0,.3)}
.ogs-team-tournament-nav{
  width:100%!important;
  min-height:60px!important;
  padding:0 max(24px,calc((100% - 1400px)/2))!important;
  background:#fff!important;
  border-bottom:1px solid #E4E7EA!important;
  box-sizing:border-box;
}
.ogs-team-tournament-nav a{min-height:60px!important;padding:0 18px!important;font-size:12px!important}
.ogs-team-tournament-nav a:first-child{padding-left:0!important}
.ogs-team-tournament-nav .ogs-team-back{padding-right:0!important}

/* Overview: the hero already carries title/date/location, so the body becomes a modern information workspace. */
.ogs-tournament-detail-layout{max-width:1400px!important;width:calc(100% - 48px)!important;margin:34px auto 64px!important;padding:0!important;gap:30px!important;grid-template-columns:minmax(0,2.35fr) minmax(310px,.8fr)!important}
.ogs-tournament-main>.ogs-detail-kicker,.ogs-tournament-main>.ogs-detail-title,.ogs-tournament-main>.ogs-detail-subtitle{display:none!important}
.ogs-event-panel{border:1px solid #E2E6E9!important;border-top:3px solid #B8913E!important;border-radius:12px!important;background:#fff!important;overflow:hidden;box-shadow:0 7px 24px rgba(9,42,78,.055)}
.ogs-event-date{background:#FBF7ED!important}
.ogs-event-date,.ogs-event-facts{border-color:#E9E0CD!important}
.ogs-event-facts{background:#fff!important}
.ogs-event-actions{background:#FAFBFB!important}
.ogs-tournament-sidebar{padding:22px!important;border:1px solid #E2E6E9!important;border-radius:12px!important;background:#FBF7ED!important;box-shadow:0 7px 24px rgba(9,42,78,.045)}
.ogs-tournament-admin-actions{margin-bottom:18px!important;border-color:#E7D8B7!important;background:#FBF7ED!important}
.gct-button--primary{background:#B8913E!important;border-color:#B8913E!important;color:#fff!important}
.gct-button--primary:hover{background:#9C762E!important;border-color:#9C762E!important}

@media(max-width:980px){
 .ogs-team-tournament-header{min-height:230px}
 .ogs-tournament-detail-layout{grid-template-columns:1fr!important}
}
@media(max-width:760px){
 .ogs-tournament-context{margin-bottom:22px!important}
 .ogs-team-tournament-header{min-height:220px;background-position:center center!important}
 .ogs-team-tournament-header__inner{width:calc(100% - 28px)!important;padding:28px 0!important}
 .ogs-team-tournament-header h1{font-size:44px!important}
 .ogs-team-tournament-nav{padding:0 8px!important}
 .ogs-team-tournament-nav a{padding:0 12px!important}
 .ogs-team-tournament-nav a:first-child{padding-left:12px!important}
 .ogs-tournament-detail-layout{width:calc(100% - 28px)!important}
}

/* 0.8.6 – tournament teaser + detailed announcement information. */
.ogs-tournament-intro,
.ogs-tournament-information{
  margin-top:22px;
  border:1px solid #E2E6E9;
  border-radius:12px;
  background:#fff;
  box-sizing:border-box;
  box-shadow:0 7px 24px rgba(9,42,78,.045);
}
.ogs-tournament-intro{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:34px;
  padding:26px 30px;
  border-left:4px solid #B8913E;
}
.ogs-tournament-section-kicker{
  margin-bottom:8px;
  color:#B8913E;
  font:700 10px/1 Montserrat,sans-serif;
  letter-spacing:.14em;
}
.ogs-tournament-intro h2,
.ogs-tournament-information h2{
  margin:0;
  color:#092A4E;
  font:600 30px/1.1 "Cormorant Garamond",Georgia,serif;
}
.ogs-tournament-intro p{
  max-width:760px;
  margin:9px 0 0;
  color:#3E4D5C;
  font:400 14px/1.65 Montserrat,sans-serif;
}
.ogs-tournament-intro__link{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:0 18px;
  border:1px solid #D9C18B;
  border-radius:7px;
  color:#092A4E!important;
  background:#FBF7ED;
  text-decoration:none!important;
  white-space:nowrap;
  font:600 12px/1 Montserrat,sans-serif;
}
.ogs-tournament-intro__link:hover,
.ogs-tournament-intro__link:focus{border-color:#B8913E;color:#9C762E!important}
.ogs-tournament-information{
  scroll-margin-top:90px;
  padding:30px;
}
.ogs-tournament-information__text{
  max-width:850px;
  margin-top:15px;
  color:#34495E;
  font:400 14px/1.75 Montserrat,sans-serif;
}
.ogs-tournament-information__documents{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid #E8E4DB;
}
.ogs-tournament-information__documents a{
  display:inline-flex;
  gap:8px;
  align-items:center;
  min-height:42px;
  padding:0 15px;
  border-radius:7px;
  background:#FBF7ED;
  color:#092A4E!important;
  text-decoration:none!important;
  font:600 12px/1 Montserrat,sans-serif;
}
.ogs-tournament-information__documents a:hover{color:#9C762E!important}
@media(max-width:720px){
  .ogs-tournament-intro{align-items:flex-start;flex-direction:column;padding:23px 22px;gap:18px}
  .ogs-tournament-intro__link{width:100%;justify-content:center;box-sizing:border-box}
  .ogs-tournament-information{padding:24px 22px}
}

/* 0.8.7 – Startseite: Turnierslider + kompakter Kalender */
.path-frontpage .ogs-home-tournaments{
  width:100%;max-width:1400px;margin:0 auto 34px;padding:0 36px;box-sizing:border-box;color:#092A4E;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slider__head{padding:0;margin-bottom:12px}
.path-frontpage .ogs-home-tournaments__grid{
  display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:24px;align-items:start;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slider{max-width:none;margin:0;min-width:0}
.path-frontpage .ogs-home-tournaments .ogs-home-slide{min-height:142px}
.path-frontpage .ogs-home-tournaments .ogs-home-calendar{
  display:block!important;margin:0;padding:0;background:transparent;border:0;box-shadow:none;
}
.path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
  min-height:142px;box-sizing:border-box;padding:13px 15px 12px;background:#fff;border:1px solid #e1e5e8;border-radius:7px;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-head{margin-bottom:8px;grid-template-columns:28px 1fr 28px}
.path-frontpage .ogs-home-tournaments .ogs-calendar-head strong{
  font-family:"Cormorant Garamond",Georgia,serif;font-size:1.25rem;color:#092A4E;font-weight:600;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-nav{font-size:1.45rem;padding:0}
.path-frontpage .ogs-home-tournaments .ogs-calendar-weekdays,
.path-frontpage .ogs-home-tournaments .ogs-calendar-grid{gap:2px}
.path-frontpage .ogs-home-tournaments .ogs-calendar-weekdays{font-size:.62rem;color:#687583;margin-bottom:3px;font-weight:600}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day{
  width:27px;height:27px;min-width:27px;margin:auto;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.68rem;line-height:1;color:#344b63;text-decoration:none;background:transparent;box-shadow:none;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day.has-event{
  position:relative;background:transparent;color:#092A4E;font-weight:700;box-shadow:none;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day.has-event::after{
  content:"";position:absolute;bottom:1px;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#B8913E;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day.has-event:hover{background:#F5F1E9;color:#092A4E}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day.has-event.is-current{
  background:#092A4E;color:#fff;box-shadow:0 3px 10px rgba(9,42,78,.18);
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day.has-event.is-current::after{background:#B8913E}
.path-frontpage .ogs-home-tournaments .ogs-home-slider__nav{margin-top:9px}

@media(max-width:980px){
  .path-frontpage .ogs-home-tournaments__grid{grid-template-columns:1fr}
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar{max-width:360px;width:100%;margin:4px auto 0}
}
@media(max-width:760px){
  .path-frontpage .ogs-home-tournaments{padding-left:18px;padding-right:18px}
  .path-frontpage .ogs-home-tournaments .ogs-home-slider__head{padding:0}
}

/* 0.8.8 – Homepage slider/calendar alignment and equal-height layout. */
.path-frontpage .ogs-home-tournaments{
  max-width:none;
  margin:0 0 34px;
  padding:0;
}
.path-frontpage .ogs-home-tournaments__grid{
  grid-template-columns:minmax(0,1fr) 320px;
  gap:28px;
  align-items:start;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slider__frame,
.path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
  height:250px;
  min-height:250px;
  box-sizing:border-box;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide{
  height:248px;
  min-height:248px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide__date{
  margin:0;
  padding:18px 14px;
  border-radius:0;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide__content{
  padding:28px 24px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide__countdown{
  padding:25px 20px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:20px 20px 18px;
  border-radius:10px;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-head{margin-bottom:13px}
.path-frontpage .ogs-home-tournaments .ogs-calendar-head strong{font-size:1.45rem}
.path-frontpage .ogs-home-tournaments .ogs-calendar-weekdays{font-size:.68rem;margin-bottom:7px}
.path-frontpage .ogs-home-tournaments .ogs-calendar-weekdays,
.path-frontpage .ogs-home-tournaments .ogs-calendar-grid{gap:4px}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day{
  width:30px;height:30px;min-width:30px;font-size:.72rem;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slider__nav{margin-top:10px}
@media(max-width:980px){
  .path-frontpage .ogs-home-tournaments__grid{grid-template-columns:1fr}
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar{max-width:none;width:100%;margin:4px 0 0}
  .path-frontpage .ogs-home-tournaments .ogs-home-slider__frame,
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{height:auto;min-height:230px}
  .path-frontpage .ogs-home-tournaments .ogs-home-slide{height:auto;min-height:230px}
}

/* 0.8.9 – Homepage tournament/calendar proportions and responsive polish. */
.path-frontpage .ogs-home-tournaments{
  width:100%;
  max-width:1400px;
  margin:0 auto 34px;
  padding-left:0;
  padding-right:0;
  box-sizing:border-box;
}
.path-frontpage .ogs-home-tournaments__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:20px;
  align-items:stretch;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slider,
.path-frontpage .ogs-home-tournaments .ogs-home-calendar{
  min-width:0;
  width:100%;
  margin:0;
  padding:0;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slider__frame,
.path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
  height:250px;
  min-height:250px;
  width:100%;
  margin:0;
  box-sizing:border-box;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide{
  grid-template-columns:minmax(0,1fr) 285px;
  height:248px;
  min-height:248px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide__main{
  grid-template-columns:130px minmax(0,1fr) 42px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide__date{
  margin:0;
  padding:20px 18px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide__content{
  padding:28px 24px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-slide__countdown{
  padding:24px 20px;
}
.path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
  padding:18px 14px 16px;
}

@media (max-width:1100px){
  .path-frontpage .ogs-home-tournaments__grid{
    grid-template-columns:minmax(0,1fr) 280px;
    gap:16px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slide{
    grid-template-columns:minmax(0,1fr) 245px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__main{
    grid-template-columns:112px minmax(0,1fr) 36px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__content{padding:24px 18px}
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__countdown{padding:22px 14px}
}

@media (max-width:900px){
  .path-frontpage .ogs-home-tournaments__grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar{
    max-width:none;
    margin:0;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slider__frame,
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
    height:auto;
    min-height:230px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slide{
    height:auto;
    min-height:230px;
  }
}

@media (max-width:640px){
  .path-frontpage .ogs-home-tournaments .ogs-home-slider__head{
    gap:12px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slider__head strong{font-size:.9rem}
  .path-frontpage .ogs-home-tournaments .ogs-home-slide{
    display:grid;
    grid-template-columns:1fr;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__main{
    grid-template-columns:86px minmax(0,1fr) 30px;
    min-height:150px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__date{padding:15px 10px}
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__content{padding:18px 12px}
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__meta{gap:6px 10px}
  .path-frontpage .ogs-home-tournaments .ogs-home-slide__countdown{
    border-left:0;
    border-top:1px solid #ebe4d8;
    padding:16px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
    padding:18px 12px 16px;
  }
}

/* 0.8.10 – Homepage calendar: tighter horizontal spacing and stable month navigation. */
.path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
  padding-left:8px;
  padding-right:8px;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-head{
  display:grid;
  grid-template-columns:32px minmax(0,1fr) 32px;
  align-items:center;
  width:100%;
  margin:0 0 13px;
  padding:0;
  box-sizing:border-box;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-head strong{
  min-width:0;
  padding:0 4px;
  font-size:1.35rem;
  line-height:1.1;
  white-space:nowrap;
  text-align:center;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-nav{
  width:32px;
  height:32px;
  padding:0;
  display:grid;
  place-items:center;
  font-size:1.45rem;
  line-height:1;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-weekdays,
.path-frontpage .ogs-home-tournaments .ogs-calendar-grid{
  width:100%;
  grid-template-columns:repeat(7,minmax(0,1fr));
  column-gap:2px;
  row-gap:4px;
}
.path-frontpage .ogs-home-tournaments .ogs-calendar-day{
  width:28px;
  height:28px;
  min-width:28px;
  justify-self:center;
}
@media (max-width:1100px){
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
    padding-left:6px;
    padding-right:6px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-calendar-head strong{font-size:1.22rem}
}
@media (max-width:900px){
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
    padding-left:14px;
    padding-right:14px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-calendar-head strong{font-size:1.35rem}
}

/* 0.8.11 – Homepage: remove remaining calendar side inset and lock the outer grid gap. */
@media (min-width:901px){
  .path-frontpage .ogs-home-tournaments__grid{
    width:100%;
    grid-template-columns:minmax(0,1fr) 280px;
    column-gap:20px;
    row-gap:0;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar{
    width:280px;
    max-width:280px;
    justify-self:end;
    margin:0!important;
    padding:0!important;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
    width:100%;
    max-width:none;
    margin:0!important;
    padding:14px 0 12px!important;
  }
  .path-frontpage .ogs-home-tournaments .ogs-calendar-head{
    padding:0 4px;
  }
  .path-frontpage .ogs-home-tournaments .ogs-calendar-weekdays,
  .path-frontpage .ogs-home-tournaments .ogs-calendar-grid{
    padding:0 4px;
    box-sizing:border-box;
  }
}
@media (max-width:900px){
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar{
    width:100%;
    max-width:none;
    margin:0!important;
    padding:0!important;
  }
  .path-frontpage .ogs-home-tournaments .ogs-home-calendar .ogs-calendar-frame{
    width:100%;
    margin:0!important;
    padding:16px 10px!important;
  }
}
