/*
Theme Name: Kadence Spiridon
Template: kadence
Description: Child theme of Kadence with the AV Spiridon homepage ("Spiridon Home" page template).
Version: 1.0.0
Text Domain: kadence-spiridon
*/

.sp-home{--sp-accent:#1E7B34;--sp-accent-dark:#145C25;--sp-ink:#17221B;--sp-muted:#45524A;--sp-line:#E3E9E4;--sp-soft:#F3F6F2;--sp-photo:#2A4A35;
  font-family:Inter,system-ui,sans-serif;color:var(--sp-ink)}
.sp-home *{box-sizing:border-box}
.sp-home h1,.sp-home h2,.sp-home h3{font-family:inherit}
.sp-wrap{max-width:1200px;margin:0 auto;padding:88px 24px}
.sp-head{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-end;margin-bottom:40px}
.sp-eyebrow{margin:0 0 8px;font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--sp-accent)}
.sp-title{margin:0;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:48px;line-height:1.05;text-transform:uppercase}
.sp-more{font-weight:700;color:var(--sp-accent)}
.sp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.sp-btn{display:inline-block;background:var(--sp-accent);color:#fff;text-decoration:none;padding:12px 20px;border-radius:8px;font-weight:700}
.sp-btn:hover{background:var(--sp-accent-dark);color:#fff}
.sp-btn--dark{background:var(--sp-ink)}
.sp-btn--dark:hover{background:#000}
.sp-pill{display:inline-block;background:#E3F2E7;color:var(--sp-accent-dark);font-size:12px;font-weight:700;padding:3px 10px;border-radius:99px;text-transform:uppercase}

/* sports */
.sp-sport{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--sp-ink);background:var(--sp-soft);border-radius:14px;padding:28px;transition:transform .15s}
.sp-sport:hover{transform:translateY(-3px);color:var(--sp-ink)}
.sp-sport h3{margin:0;font-size:22px;font-weight:700}
.sp-sport p{margin:0;font-size:16px;line-height:1.55;color:var(--sp-muted)}
.sp-sport span{font-weight:700;color:var(--sp-accent)}

/* events */
.sp-events{background:var(--sp-soft)}
.sp-events .sp-grid{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))}
.sp-event{display:flex;flex-wrap:wrap;background:#fff;border-radius:14px;overflow:hidden;border:1px solid var(--sp-line)}
.sp-event__photo{flex:1 1 200px;min-height:220px;background:var(--sp-photo) center/cover;position:relative}
.sp-date{position:absolute;top:16px;left:16px;background:#fff;border-radius:10px;padding:8px 14px;text-align:center;line-height:1}
.sp-date b{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:34px}
.sp-date span{font-weight:700;font-size:13px;text-transform:uppercase;color:var(--sp-accent)}
.sp-event__body{flex:1 1 240px;padding:28px;display:flex;flex-direction:column;gap:12px}
.sp-event__body h3{margin:0;font-size:24px;font-weight:700}
.sp-event__body p{margin:0;font-size:16px;line-height:1.55;color:var(--sp-muted)}
.sp-event__links{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:auto;padding-top:8px}
.sp-event__links a:not(.sp-btn){font-weight:700}

/* news */
.sp-post{display:flex;flex-direction:column;text-decoration:none;color:var(--sp-ink);border-radius:14px;overflow:hidden;border:1px solid var(--sp-line)}
.sp-post:hover{color:var(--sp-ink);box-shadow:0 6px 20px rgba(0,0,0,.08)}
.sp-post__img{height:200px;background:var(--sp-photo) center/cover}
.sp-post__body{padding:24px;display:flex;flex-direction:column;gap:10px}
.sp-post__meta{display:flex;gap:10px;align-items:center;font-size:13px;color:#55635A}
.sp-post h3{margin:0;font-size:20px;font-weight:700;line-height:1.3}
.sp-post p{margin:0;font-size:15px;line-height:1.55;color:var(--sp-muted)}
.sp-post__body>span{font-weight:700;color:var(--sp-accent)}

/* call to action */
.sp-cta{background:var(--sp-accent)}
.sp-cta .sp-wrap{padding-top:72px;padding-bottom:72px}
.sp-card{background:#fff;border-radius:14px;padding:32px;display:flex;flex-direction:column;gap:12px}
.sp-card h3{margin:0;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:32px;text-transform:uppercase}
.sp-card p{margin:0;font-size:16px;line-height:1.55;color:var(--sp-muted)}
.sp-card .sp-btn{align-self:flex-start;margin-top:8px}

@media (max-width:600px){.sp-title{font-size:36px}.sp-wrap{padding-top:56px;padding-bottom:56px}}

/* ---------- hero (block content of the Home page) ---------- */
.sp-home .sp-hero{background:#1B3324 radial-gradient(ellipse at 85% 10%,#2A4A35 0,#1B3324 60%);color:#fff;padding:96px 24px;margin:0}
.sp-home .sp-hero__cols{gap:48px;margin:0}
.sp-home .sp-hero__eyebrow{margin:0 0 16px;font-weight:600;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:#9BE0AE}
.sp-home .sp-hero__title{margin:0;color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(44px,6vw,72px);line-height:.95;text-transform:uppercase}
.sp-home .sp-hero__lead{margin:24px 0 32px;font-size:19px;line-height:1.6;color:#D7E3DA;max-width:560px}
.sp-home .sp-hero__buttons{gap:12px}
.sp-home .sp-hero .wp-block-button__link{font-family:Inter,sans-serif;font-weight:700;font-size:16px;border-radius:8px;padding:16px 28px;text-decoration:none;transition:background .15s}
.sp-home .sp-btn-primary .wp-block-button__link{background:#1E7B34;color:#fff;border:1px solid #1E7B34}
.sp-home .sp-btn-primary .wp-block-button__link:hover{background:#145C25;border-color:#145C25}
.sp-home .sp-btn-outline .wp-block-button__link{background:transparent;color:#fff;border:1px solid #fff}
.sp-home .sp-btn-outline .wp-block-button__link:hover{background:#fff;color:#17221B}
.sp-home .sp-hero__photo{margin:0}
.sp-home .sp-hero__photo img{display:block;width:100%;height:400px;object-fit:cover;object-position:center;border-radius:16px;box-shadow:0 24px 48px rgba(0,0,0,.35)}
@media (max-width:781px){.sp-home .sp-hero{padding:56px 20px}.sp-home .sp-hero__photo img{height:260px}}

/* anchor target: leave room for the sticky header */
#sporten{scroll-margin-top:90px}
html{scroll-behavior:smooth}

/* last menu item = call-to-action button (menu item CSS class "menu-cta") */
#masthead .header-navigation .header-menu-container ul li.menu-cta>a{background:#1E7B34!important;color:#fff!important;border-radius:8px;padding:12px 20px;margin-left:8px;font-weight:700}
#masthead .header-navigation .header-menu-container ul li.menu-cta>a:hover{background:#145C25!important;color:#fff!important}

/* ---------- main menu: modern look + white drop-down ---------- */
#masthead .header-navigation .header-menu-container>ul>li.menu-item>a{font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:15px}
#masthead .header-navigation .header-menu-container ul ul.sub-menu{
  background:#fff!important;border:1px solid #E3E9E4;border-radius:12px;padding:8px;min-width:250px;
  box-shadow:0 16px 40px rgba(23,34,27,.14);margin-top:6px}
#masthead .header-navigation .header-menu-container ul ul.sub-menu li.menu-item{border:0!important;background:none!important}
#masthead .header-navigation .header-menu-container ul ul.sub-menu li.menu-item>a,
#masthead .header-navigation .header-menu-container ul ul.sub-menu li.menu-item>.menu-item-link-wrap>a{
  font-family:Inter,system-ui,sans-serif;font-weight:500;font-size:15px;color:#17221B!important;
  padding:10px 14px;border-radius:8px;border:0!important;background:transparent!important;width:100%;box-sizing:border-box;transition:background .12s,color .12s}
#masthead .header-navigation .header-menu-container ul ul.sub-menu li.menu-item:hover>a,
#masthead .header-navigation .header-menu-container ul ul.sub-menu li.menu-item.current-menu-item>a{background:#F3F6F2!important;color:#1E7B34!important}

/* plain content pages (e.g. Club records) */
.sp-intro{font-size:19px;line-height:1.6;color:#45524A}
.sp-linkcards{gap:24px}
.sp-linkcards .wp-block-column{background:#F3F6F2;border-radius:14px;padding:28px}
.sp-linkcards h3{font-family:Inter,sans-serif;font-weight:700;font-size:22px;margin:0 0 8px}
.sp-linkcards .wp-block-button__link{background:#1E7B34;color:#fff;border-radius:8px;font-weight:700;padding:12px 20px}
.sp-linkcards .wp-block-button__link:hover{background:#145C25}

/* ---------- footer ---------- */
.sp-footer{font-family:Inter,system-ui,sans-serif}
.sp-footer__wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.sp-sponsors{background:#fff;border-top:1px solid #E3E9E4}
.sp-sponsors .sp-footer__wrap{padding-top:56px;padding-bottom:48px}
.sp-sponsors__title{margin:0 0 28px;text-align:center;font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:#55635A}
.sp-sponsors__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}
.sp-sponsors__grid a{height:88px;border:1px solid #E3E9E4;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:12px;background:#fff;transition:box-shadow .15s,border-color .15s}
.sp-sponsors__grid a:hover{border-color:#1E7B34;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.sp-sponsors__grid img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.8;transition:filter .15s,opacity .15s}
.sp-sponsors__grid a:hover img{filter:none;opacity:1}
.sp-sponsors__more{margin:28px 0 0;text-align:center;font-size:15px;color:#55635A}
.sp-sponsors__more a{color:#1E7B34;font-weight:600}
.sp-foot{background:#17221B;color:#D7E3DA;font-size:15px;line-height:1.7}
.sp-foot a{color:#D7E3DA;text-decoration:none}
.sp-foot a:hover{color:#fff;text-decoration:underline}
.sp-foot__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px;padding-top:64px;padding-bottom:32px}
.sp-foot p{margin:0}
.sp-foot__brand{margin-bottom:12px!important;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:26px;color:#fff}
.sp-foot__h{margin-bottom:12px!important;font-weight:700;color:#fff}
.sp-foot__links{display:flex;flex-direction:column}
.sp-foot__social{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px}
.sp-foot__bottom{border-top:1px solid #2E3D33;font-size:13px;color:#A9B8AE}
.sp-foot__bottomrow{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding-top:20px;padding-bottom:32px}
.sp-foot__bottom a{color:#A9B8AE}

/* ---------- list pages (nieuws / agenda) ---------- */
.sp-pagehead{background:#1B3324 radial-gradient(ellipse at 85% 10%,#2A4A35 0,#1B3324 60%);color:#fff}
.sp-pagehead .sp-wrap{padding-top:64px;padding-bottom:64px}
.sp-pagehead .sp-eyebrow{color:#9BE0AE}
.sp-pagehead__title{margin:0;color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(44px,6vw,72px);line-height:.95;text-transform:uppercase}
.sp-subtitle{margin:0 0 24px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:36px;text-transform:uppercase}
.sp-events-page .sp-grid{grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr))}
.sp-event.is-past{opacity:.75}
.sp-pager{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:48px}
.sp-pager .page-numbers{padding:10px 16px;border:1px solid #E3E9E4;border-radius:8px;text-decoration:none;font-weight:600;color:#17221B}
.sp-pager .page-numbers.current,.sp-pager a.page-numbers:hover{background:#1E7B34;border-color:#1E7B34;color:#fff}

.sp-pagetext{max-width:760px;margin:0 0 40px}
.sp-pagetext p{margin:0 0 1em}

/* ---------- consistent band on all other pages ---------- */
.sp-pagehead{font-family:Inter,system-ui,sans-serif}
.sp-pagehead .sp-wrap{max-width:1200px;margin:0 auto;padding:64px 24px}
.sp-pagehead .sp-eyebrow{margin:0 0 8px;font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase}
body.sp-has-band .single-entry>.entry-content-wrap>.entry-header,
body.sp-has-band .archive-header,body.sp-has-band header.page-header{display:none}
body.sp-has-band .content-container{padding-top:48px}

/* quick links under the Agenda header */
.sp-quicklinks{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 48px}
.sp-quicklinks a{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border:1px solid #1E7B34;border-radius:8px;color:#1E7B34;font-weight:700;text-decoration:none;background:#fff;transition:background .15s,color .15s}
.sp-quicklinks a:hover{background:#1E7B34;color:#fff}

/* ---------- embedded club records + form ---------- */
.sp-quicklinks a.is-active{background:#1E7B34;color:#fff}
.sp-records{overflow-x:auto}
.sp-records h3{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:32px;text-transform:uppercase;margin:24px 0 8px}
.sp-records h5{margin:32px 0 8px;font-family:Inter,sans-serif;font-weight:700;font-size:16px;letter-spacing:1px;text-transform:uppercase;color:#1E7B34}
.sp-records table{border-collapse:collapse;width:100%;max-width:900px;font-size:15px;margin-bottom:8px}
.sp-records th{text-align:left;background:#17221B;color:#fff;padding:8px 12px;font-weight:600}
.sp-records td{padding:7px 12px;border-bottom:1px solid #E3E9E4}
.sp-recordform table{border-collapse:separate;border-spacing:0 10px;width:100%;max-width:760px}
.sp-recordform td{vertical-align:top;padding-right:16px}
.sp-recordform td:first-child{font-weight:600;white-space:nowrap}
.sp-recordform input[type=text],.sp-recordform select,.sp-recordform textarea{width:100%;max-width:450px;padding:10px 12px;border:1px solid #C9D3CC;border-radius:8px;font:inherit;background:#fff}
.sp-recordform select{width:auto;min-width:96px}
.sp-recordform select[name=catg],.sp-recordform select[name=sort]{width:100%;max-width:450px}
.sp-recordform input[type=submit]{background:#1E7B34;color:#fff;border:0;border-radius:8px;padding:14px 28px;font-weight:700;font-size:16px;cursor:pointer}
.sp-recordform input[type=submit]:hover{background:#145C25}
@media (max-width:640px){.sp-recordform td{display:block}.sp-recordform td:first-child{padding-bottom:0}}

/* ---------- sport pages ---------- */
.sp-jump{background:#fff;border-bottom:1px solid #E3E9E4}
.sp-jump__inner{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;flex-wrap:wrap;gap:10px}
.sp-jump a{padding:10px 18px;border:1px solid #D4DDD6;border-radius:99px;color:#17221B;font-weight:600;font-size:15px;text-decoration:none;transition:background .15s,color .15s,border-color .15s}
.sp-jump a:hover{border-color:#1E7B34;color:#1E7B34}
.sp-jump a.is-cta{margin-left:auto;background:#1E7B34;border-color:#1E7B34;color:#fff}
.sp-jump a.is-cta:hover{background:#145C25;color:#fff}
.sp-sec{scroll-margin-top:24px}
.sp-sec.is-alt{background:#F3F6F2}
.sp-sec .sp-wrap{padding-top:72px;padding-bottom:72px}
.sp-sec__head{margin-bottom:32px}
.sp-over{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:48px;align-items:start}
.sp-over__img{margin:0}
.sp-over__img img{display:block;width:auto;max-width:100%;height:auto;margin-left:auto;border-radius:16px;box-shadow:0 20px 40px rgba(23,34,27,.18)}
.sp-sec__body,.sp-over__text{max-width:860px;font-size:17px;line-height:1.7;color:#2A3730}
.sp-over__text{max-width:none}
.sp-sec p{margin:0 0 1em}
.sp-sec h3{margin:1.6em 0 .4em;font-family:Inter,sans-serif;font-weight:700;font-size:20px;color:#17221B}
.sp-sec h3:first-child{margin-top:0}
.sp-sec .sp-lead{font-size:22px;font-weight:600;line-height:1.45;color:#145C25}
.sp-sec a{color:#1E7B34;font-weight:600}
.sp-sec ul{margin:0 0 1.2em;padding:0;list-style:none}
.sp-sec li{position:relative;padding-left:28px;margin:0 0 .5em}
.sp-sec li::before{content:"";position:absolute;left:0;top:.55em;width:14px;height:8px;border-left:3px solid #1E7B34;border-bottom:3px solid #1E7B34;transform:rotate(-45deg) translateY(-50%)}
.sp-table{overflow-x:auto;border-radius:12px;border:1px solid #E3E9E4;background:#fff}
.sp-table table{width:100%;border-collapse:collapse;font-size:15.5px;min-width:520px}
.sp-table th{background:#17221B;color:#fff;text-align:left;padding:12px 16px;font-weight:600;white-space:nowrap}
.sp-table td{padding:11px 16px;border-top:1px solid #E3E9E4;vertical-align:top}
.sp-table tbody tr:nth-child(even) td{background:#F8FAF8}
.sp-defs{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.sp-def{background:#fff;border:1px solid #E3E9E4;border-radius:12px;padding:20px 22px}
.sp-sec:not(.is-alt) .sp-def{background:#F3F6F2}
.sp-def h3{margin:0 0 6px!important;font-size:18px;color:#1E7B34}
.sp-def p{margin:0;font-size:15.5px;line-height:1.55}
.sp-trainers{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;max-width:none}
.sp-trainer{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid #E3E9E4;border-radius:12px;padding:14px}
.sp-trainer img,.sp-trainer__ph{flex:0 0 72px;width:72px;height:96px;border-radius:10px;object-fit:cover;background:#E3F2E7}
.sp-trainer__ph{display:flex;align-items:center;justify-content:center;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:30px;color:#145C25}
.sp-trainer strong{display:block;font-size:16px;line-height:1.3;color:#17221B}
.sp-trainer span{display:block;margin-top:4px;font-size:14px;line-height:1.4;color:#55635A}
.sp-trainer.is-open{border-style:dashed;background:transparent}
.sp-trainer.is-open .sp-trainer__ph{background:transparent;border:2px dashed #9BC7A6;color:#1E7B34}
@media (max-width:860px){.sp-over{grid-template-columns:1fr}.sp-over__img{order:-1;max-width:480px}.sp-jump a.is-cta{margin-left:0}}

/* condensed display font for all titles inside .sp-home pages (beats the generic heading rule) */
.sp-home .sp-title,.sp-home .sp-pagehead__title,.sp-home .sp-subtitle,.sp-home .sp-card h3{font-family:'Barlow Condensed',sans-serif}

/* ---------- scroll to top ---------- */
.sp-totop{position:fixed;right:24px;bottom:24px;z-index:999;width:52px;height:52px;border:0;border-radius:50%;background:#1E7B34;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 24px rgba(23,34,27,.3);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s,transform .2s,visibility .2s,background .15s}
.sp-totop.is-visible{opacity:1;visibility:visible;transform:none}
.sp-totop:hover{background:#145C25}
.sp-totop:focus-visible{outline:3px solid #9BE0AE;outline-offset:3px}
@media (max-width:600px){.sp-totop{right:16px;bottom:16px;width:48px;height:48px}}
