/* ============================================================
   Σ.Ε.Μ.Η.Ε.Κ. — WIDGET STYLES
   Ported from the approved homepage design (semeek-homepage-final).
   Depends on assets/css/theme.css for the tokens + chrome.
   ============================================================ */

/* every sm-* widget boxes its own content — never rely on the Elementor
   section/container width, which is unreliable across Elementor versions */
.sm-w{width:100%;max-width:100%}
.sm-w > .sm-container,
.elementor-widget-container > .sm-w > .sm-container{max-width:var(--sm-wrap);margin-left:auto;margin-right:auto;width:100%}
.sm-w .sm-container{min-width:0}
.sm-w *{min-width:0}

/* shared section head (heading left, button right) */
.sm-sechead{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:46px;flex-wrap:wrap}
.sm-sechead>div{flex:1 1 auto}
.sm-sechead__lead{max-width:56ch;margin-top:10px;color:var(--sm-slate)}
.sm-sec--forest .sm-sechead__lead{color:var(--sm-mist)}

/* ══════════ HERO ══════════ */
.sm-hero{position:relative;background:var(--sm-forest);color:#BCD0C3;overflow:hidden;isolation:isolate}
/* fill the viewport so the next section never peeks under the fold — extra
   height is added below the content, the text keeps its position */
.home .sm-hero{min-height:100vh;min-height:100svh}
.sm-hero__media{position:absolute;inset:0;z-index:0}
.sm-hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(.3)}
.sm-hero__tint{position:absolute;inset:0;background:linear-gradient(105deg,var(--sm-forest) 26%,rgba(4,51,30,.55) 100%)}
.sm-hero__lines{position:absolute;inset:0;max-width:var(--sm-wrap);margin:0 auto;background-image:linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:calc(100% / 12) 100%}
.sm-hero__in{position:relative;z-index:2;padding-top:104px;padding-bottom:96px}
.sm-hero__inner{max-width:840px}
.sm-hero__title{color:var(--sm-white);margin:14px 0 22px}
.sm-hero__thin{display:block;font-size:.36em;font-weight:500;letter-spacing:-.005em;color:#9CB9A7;margin-top:16px;line-height:1.35}
.sm-hero__lead{font-size:18px;font-weight:300;max-width:58ch;color:#B4CBBD}
.sm-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.sm-hero__stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:76px;border-top:1px solid rgba(255,255,255,.16)}
.sm-hero__stat{padding:26px 26px 30px 0;border-right:1px solid rgba(255,255,255,.11)}
.sm-hero__stat:last-child{border-right:0}
.sm-hero__stat-n{font-family:var(--sm-font-display);font-size:34px;font-weight:800;color:var(--sm-white);line-height:1}
.sm-hero__stat-n em{font-style:normal;color:var(--sm-gold)}
.sm-hero__stat-l{font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8AA695;margin-top:9px}

/* ══════════ INTRO ══════════ */
.sm-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:64px;align-items:start}
.sm-intro__grid>*{min-width:0}
.sm-intro__head .sm-h2{margin-top:6px}
.sm-intro__body p{color:var(--sm-slate)}
.sm-intro__body p+p{margin-top:16px}
.sm-intro__quote{border-left:3px solid var(--sm-gold);padding-left:22px;margin-top:30px}
.sm-intro__quote p{font-size:16px}
.sm-intro__btn{margin-top:28px}

/* ══════════ CARDS ══════════ */
.sm-cards{display:flex;flex-wrap:wrap;gap:1px;background:var(--sm-line);border:1px solid var(--sm-line)}
.sm-card{flex:1 1 0;min-width:0;width:auto;background:var(--sm-white);padding:34px 28px 30px;transition:background .2s;position:relative;box-sizing:border-box}
.sm-card::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--sm-green);transition:width .25s ease}
.sm-card:hover::before{width:100%}
.sm-card:hover{background:var(--sm-paper)}
.sm-card__ico{width:34px;height:34px;color:var(--sm-green);margin-bottom:20px}
.sm-card__ico svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.5}
.sm-card__num{font-family:var(--sm-font-mono);font-size:11px;color:#9BAAA1;letter-spacing:.12em;margin-bottom:8px}
.sm-card .sm-h3{margin-bottom:10px}
.sm-card p{font-size:15px;color:var(--sm-slate)}
.sm-card__link{display:inline-block;margin-top:16px;font-family:var(--sm-font-display);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sm-ink)!important;border-bottom:2px solid var(--sm-gold);padding-bottom:2px}
.sm-card__link:hover,.sm-card__link:focus{color:var(--sm-green)!important}

/* ══════════ POSTS ══════════ */
.sm-posts{display:flex;flex-wrap:wrap;gap:30px}
.sm-post{flex:1 1 260px;min-width:0;max-width:calc(33.333% - 20px);background:var(--sm-white);border:1px solid var(--sm-line);border-radius:var(--sm-radius);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.sm-post:hover{box-shadow:0 16px 40px rgba(4,51,30,.11);transform:translateY(-3px)}
.sm-post__img{aspect-ratio:4/3;background:var(--sm-paper) center/cover no-repeat}
.sm-post__body{padding:24px 24px 28px;display:flex;flex-direction:column;flex:1}
.sm-post__meta{font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--sm-green);margin-bottom:12px}
.sm-post .sm-h3{font-size:19px;line-height:1.3;margin-bottom:14px}
.sm-post p{font-size:15px;flex:1;color:var(--sm-slate)}
.sm-post__more{margin-top:18px;font-family:var(--sm-font-display);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sm-ink)}
.sm-post:hover .sm-post__more{color:var(--sm-green)}
.sm-posts__empty{color:var(--sm-slate)}

/* ══════════ REGISTRY (forest band) ══════════ */
.sm-registry-w{background:var(--sm-forest);color:var(--sm-mist);padding:var(--sm-pad-y) 0}
.sm-registry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}
.sm-registry>*{min-width:0}
.sm-registry__col .sm-h2{color:var(--sm-white)}
.sm-registry__col p{margin-top:16px;max-width:48ch}
.sm-registry__box{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.15);border-top:3px solid var(--sm-gold);padding:32px;border-radius:var(--sm-radius)}
.sm-registry__field{display:flex;flex-direction:column;gap:8px;min-width:0}
.sm-registry__lbl{font-family:var(--sm-font-mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--sm-gold)}
.sm-registry__box select{
	width:100%;min-height:56px;padding:16px 46px 16px 18px;
	border:1px solid rgba(255,255,255,.22);background-color:rgba(255,255,255,.06);color:var(--sm-white);
	border-radius:var(--sm-radius);font-family:var(--sm-font-display);font-weight:600;font-size:15px;line-height:1.2;
	-webkit-appearance:none;appearance:none;cursor:pointer;transition:border-color .15s,background-color .15s;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23EBA835' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 16px center;
}
.sm-registry__box select:hover{border-color:rgba(235,168,53,.55);background-color:rgba(255,255,255,.09)}
.sm-registry__box select:focus{outline:none;border-color:var(--sm-gold);background-color:rgba(255,255,255,.1)}
.sm-registry__box select option{color:var(--sm-ink);background:#fff}
.sm-registry__submit{grid-column:1 / -1;width:100%;justify-content:center;min-height:54px}
.sm-registry__hint{grid-column:1 / -1;font-size:13px;color:#8AA695;margin:2px 0 0}
@media (max-width:520px){.sm-registry__box{grid-template-columns:1fr}}

/* (the old static Σεμινάρια & Συνελεύσεις table + tabs widget/CSS was removed —
   the site now only shows seminars pulled live from the `seminar` CPT) */

/* ══════════ ABOUT PAGE ("Τι είναι ο Σ.Ε.Μ.Η.Ε.Κ.") ══════════ */
.sm-about{font-size:17px;line-height:1.75;color:var(--sm-slate)}
.sm-about p{margin:0 0 14px}
.sm-about p:last-child{margin-bottom:0}
.sm-about strong{color:var(--sm-ink)}
/* dark (forest) About section — keyed off our OWN wrapper class, because
   Elementor's section _css_classes proved unreliable across versions */
.sm-about--dark,.sm-about--dark .sm-about{color:var(--sm-mist)}
.sm-about--dark .sm-h1,.sm-about--dark .sm-h2,.sm-about--dark .sm-h3{color:var(--sm-white)}
.sm-about--dark .sm-about strong{color:#fff}
.sm-about--dark .sm-eyebrow{color:var(--sm-gold)}
.sm-about--dark .sm-eyebrow::before{background:var(--sm-gold)}
.sm-about--dark .sm-eyebrow::after{background:var(--sm-gold);opacity:.5}

/* identity + timeline */
.sm-about-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px 56px;align-items:start}
.sm-about-pill{display:inline-block;font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--sm-green-dk);background:rgba(0,133,62,.09);border:1px solid rgba(0,133,62,.2);border-radius:3px;padding:6px 12px;margin-bottom:16px}
.sm-about-intro .sm-h2{font-size:clamp(24px,2.9vw,34px)}
.sm-about-lead{font-size:19px;color:var(--sm-ink);font-weight:500;line-height:1.6}
.sm-about-tl{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:2px solid var(--sm-line)}
.sm-about-tl__i{position:relative;display:flex;flex-direction:column;gap:6px;padding:26px 30px 0;border-left:1px solid var(--sm-line)}
.sm-about-tl__i:last-child{border-right:1px solid var(--sm-line)}
.sm-about-tl__i::before{content:"";position:absolute;left:-1px;top:-2px;width:30px;height:2px;background:var(--sm-gold)}
.sm-about-tl__yr{font-family:var(--sm-font-mono);font-size:13px;letter-spacing:.06em;color:var(--sm-gold);font-weight:500}
.sm-about-tl__t{font-family:var(--sm-font-display);font-weight:700;color:var(--sm-ink);font-size:17px}
.sm-about-tl__d{font-size:14px;line-height:1.6}

/* objectives + aside */
.sm-about-purpose{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:48px;align-items:start}
.sm-about-purpose .sm-h2{margin-bottom:12px;font-size:clamp(23px,2.7vw,32px)}
.sm-about-plist{list-style:none;counter-reset:sm-p;margin:20px 0 0;padding:0}
.sm-about-plist li{counter-increment:sm-p;position:relative;padding:14px 0 14px 46px;border-bottom:1px solid var(--sm-line);font-size:15.5px;line-height:1.65}
.sm-about-plist li:first-child{border-top:1px solid var(--sm-line)}
.sm-about-plist li::before{content:counter(sm-p,decimal-leading-zero);position:absolute;left:0;top:14px;font-family:var(--sm-font-mono);font-size:12px;color:var(--sm-green);font-weight:500}
.sm-about-aside{background:var(--sm-white);border:1px solid var(--sm-line);border-top:3px solid var(--sm-gold);border-radius:6px;padding:28px}
.sm-about-aside .sm-h3{font-size:16px;margin-bottom:12px}
.sm-about-aside p{font-size:15px}

/* governance cards */
.sm-about-gov__h{margin-bottom:36px}
.sm-about-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.sm-about-card{border:1px solid var(--sm-line);border-radius:8px;padding:32px;background:var(--sm-white)}
.sm-about-card__ic{display:grid;place-items:center;width:46px;height:46px;border-radius:8px;background:var(--sm-forest);color:#fff;margin-bottom:18px}
.sm-about-card__ic svg{width:22px;height:22px}
.sm-about-card .sm-h3{font-size:19px;margin-bottom:12px}
.sm-about-card p{font-size:15px}

/* OEB band */
.sm-about-oeb{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.sm-about-oeb .sm-h2{font-size:clamp(22px,2.6vw,30px);margin-bottom:14px}
.sm-about-oeb__lbl{font-family:var(--sm-font-mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--sm-gold);margin-bottom:14px;font-weight:500}
.sm-about-benefits{display:flex;flex-direction:column;gap:14px}
.sm-about-benefit{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.55}
.sm-about-benefit svg{width:18px;height:18px;flex:0 0 auto;margin-top:2px;color:var(--sm-gold)}

@media (max-width:860px){
	.sm-about-intro,.sm-about-purpose,.sm-about-cards,.sm-about-oeb{grid-template-columns:1fr;gap:32px}
	.sm-about-tl{grid-template-columns:1fr;border-top:0}
	.sm-about-tl__i{border-right:0;border-top:1px solid var(--sm-line);padding:20px 0 0}
}

/* ══════════ JOIN PAGE ("Γίνε Μέλος") ══════════ */
.sm-join{font-size:17px;line-height:1.75;color:var(--sm-slate)}
.sm-join p{margin:0 0 14px}
.sm-join p:last-child{margin-bottom:0}
.sm-join strong{color:var(--sm-ink)}
.sm-join .sm-h2{font-size:clamp(23px,2.7vw,32px);margin-bottom:14px}
.sm-join-sub{max-width:60ch;margin-bottom:34px}

/* who — two type cards (reuses .sm-about-card) + green accent */
.sm-join-who{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.sm-join-who .sm-about-card{border-top:3px solid var(--sm-green)}
.sm-join-who .sm-about-card__ic{background:var(--sm-green)}

/* steps */
.sm-join-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;counter-reset:sm-step}
.sm-join-step{position:relative;padding-top:8px}
.sm-join-step__n{width:44px;height:44px;border-radius:50%;background:var(--sm-green);color:#fff;display:grid;place-items:center;font-family:var(--sm-font-display);font-weight:800;font-size:17px;margin-bottom:18px;position:relative;z-index:1}
.sm-join-step:not(:last-child)::after{content:"";position:absolute;top:30px;left:44px;right:-13px;height:2px;background:var(--sm-line)}
.sm-join-step .sm-h3{font-size:18px;margin-bottom:10px}
.sm-join-step p{font-size:15px}

/* benefits (on forest — wrapper .sm-about--dark supplies white headings) */
.sm-join-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.sm-join-benefit{display:flex;gap:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-left:3px solid var(--sm-gold);border-radius:8px;padding:22px}
.sm-join-benefit__ic{flex:0 0 auto;width:38px;height:38px;border-radius:8px;background:rgba(235,168,53,.16);color:var(--sm-gold);display:grid;place-items:center}
.sm-join-benefit__ic svg{width:20px;height:20px}
.sm-join-benefit p{margin:0;font-size:14.5px;line-height:1.6;color:var(--sm-mist)}
.sm-join-benefit strong{color:#fff}

/* apply — info (left) + registration form card (right) */
.sm-join-apply{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:48px;align-items:start;margin-top:8px}
.sm-join-apply__info .sm-join-sub{margin-bottom:26px}
.sm-join-contact{display:flex;flex-direction:column;gap:16px}
.sm-join-contact__row{display:flex;align-items:flex-start;gap:12px;font-size:15px}
.sm-join-contact__row svg{width:18px;height:18px;flex:0 0 auto;margin-top:2px;color:var(--sm-gold)}
.sm-join-contact__row a{color:var(--sm-slate)}
.sm-join-contact__row a:hover{color:var(--sm-green)}

.sm-join-formcard{background:var(--sm-white);border:1px solid var(--sm-line);border-top:3px solid var(--sm-gold);border-radius:10px;padding:34px;display:flex;flex-direction:column;gap:16px;box-shadow:0 20px 50px rgba(4,51,30,.12)}
.sm-jf-title{font-family:var(--sm-font-display);font-weight:800;font-size:20px;color:var(--sm-ink);margin:0}
.sm-jf-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.sm-jf-note{border-radius:5px;padding:11px 14px;font-size:14px}
.sm-jf-note--ok{background:rgba(0,133,62,.1);color:var(--sm-green-dk);border:1px solid rgba(0,133,62,.25)}
.sm-jf-note--err{background:rgba(200,60,40,.08);color:#a8382a;border:1px solid rgba(200,60,40,.25)}
.sm-jf-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sm-jf-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.sm-jf-field>span{font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.1em;color:#7C8C83}
/* input + select share identical box metrics so adjacent fields line up */
.sm-jf-field input,.sm-jf-field select{width:100%;height:48px;padding:0 14px;border:1px solid var(--sm-line);border-radius:5px;font-family:var(--sm-font-body);font-size:15px;line-height:normal;color:var(--sm-ink);background-color:var(--sm-white)}
.sm-jf-field select{
	-webkit-appearance:none;appearance:none;cursor:pointer;padding-right:40px;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%2300853E' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 14px center;
}
.sm-jf-field input:focus,.sm-jf-field select:focus{outline:none;border-color:var(--sm-green);box-shadow:0 0 0 3px rgba(0,133,62,.12)}
.sm-jf-field select:invalid{color:#7C8C83}
.sm-jf-check{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.5;color:var(--sm-slate)}
.sm-jf-check input{margin-top:3px;flex:0 0 auto}
.sm-jf-check a{color:var(--sm-green);border-bottom:1px solid rgba(0,133,62,.35)}
.sm-jf-submit{align-self:flex-start;margin-top:4px}

@media (max-width:860px){
	.sm-join-who,.sm-join-steps,.sm-join-benefits,.sm-join-apply{grid-template-columns:1fr;gap:22px}
	.sm-join-step:not(:last-child)::after{display:none}
	.sm-jf-row{grid-template-columns:1fr}
}

/* in-page jump targets clear the sticky site header (show the whole section,
   not just the form) */
#sm-join,#sm-join-form,#sm-contact,#steps{scroll-margin-top:120px}
@media (max-width:640px){#sm-join,#sm-join-form,#sm-contact,#steps{scroll-margin-top:96px}}

/* ══════════ Contact page (semeek-contact.html) ══════════ */
.sm-cpage-split{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.sm-cpage-info__h{font-size:clamp(20px,2.4vw,24px);margin-bottom:4px}
.sm-cpage-info__sub{font-family:var(--sm-font-mono);font-size:12px;letter-spacing:.06em;color:var(--sm-slate);margin-bottom:22px}
.sm-cinfo{display:flex;flex-direction:column}
.sm-cinfo__row{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--sm-line)}
.sm-cinfo__row:last-child{border-bottom:0}
.sm-cinfo__ic{width:22px;height:22px;flex:0 0 auto;color:var(--sm-gold);margin-top:3px}
.sm-cinfo__ic svg{width:100%;height:100%}
.sm-cinfo__l{font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#9AA8A0;margin-bottom:3px}
.sm-cinfo__v{color:var(--sm-ink);font-size:16px;line-height:1.6}
.sm-cinfo__v a{color:var(--sm-ink)}
.sm-cinfo__v a:hover{color:var(--sm-green)}
.sm-cinfo__hint{color:#9AA8A0;font-size:14px}
.sm-cinfo__note{margin-top:24px;background:var(--sm-paper);border-left:3px solid var(--sm-gold);padding:16px 20px;font-size:15px;line-height:1.6;border-radius:0 4px 4px 0}
.sm-cpage-form{border-top-color:var(--sm-green)}
.sm-cpage-form .sm-jf-field textarea{width:100%;min-height:140px;padding:12px 14px;border:1px solid var(--sm-line);border-radius:5px;font-family:var(--sm-font-body);font-size:15px;line-height:1.6;color:var(--sm-ink);background-color:var(--sm-white);resize:vertical}
.sm-cpage-form .sm-jf-field textarea:focus{outline:none;border-color:var(--sm-green);box-shadow:0 0 0 3px rgba(0,133,62,.12)}
.sm-cpage-form__submit{align-self:stretch;justify-content:center;margin-top:6px}
@media (max-width:860px){
	.sm-cpage-split{grid-template-columns:1fr;gap:32px}
}

/* ══════════ Structure page (semeek-structure.html — doc_structure) ══════════ */
.sm-st .sm-h2{margin-bottom:14px}
.sm-st__intro{max-width:62ch;margin:0 0 34px}
.sm-st__lead{max-width:60ch;margin:0 0 34px;color:var(--sm-mist)}
/* founders: heading is followed straight by the grid (no intro paragraph) */
.sm-st-founders{margin-top:22px}

/* levels */
.sm-st-levels{display:flex;flex-direction:column;gap:14px}
.sm-st-level{display:flex;gap:22px;align-items:flex-start;background:var(--sm-white);border:1px solid var(--sm-line);border-radius:8px;padding:26px 28px;transition:box-shadow .2s}
.sm-st-level:hover{box-shadow:0 12px 30px rgba(4,51,30,.08)}
.sm-st-level__n{flex:0 0 auto;width:44px;height:44px;border-radius:8px;background:var(--sm-forest);color:#fff;display:grid;place-items:center;font-family:var(--sm-font-display);font-weight:800;font-size:18px}
.sm-st-level:first-child .sm-st-level__n{background:var(--sm-green)}
.sm-st-level h3{margin-bottom:4px;font-size:19px}
.sm-st-level p{font-size:15px}
.sm-st-level__sub{color:var(--sm-green)}

/* committees */
.sm-st-comm{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.sm-st-cc{background:var(--sm-white);border:1px solid var(--sm-line);border-radius:8px;padding:32px}
.sm-st-cc__tag{display:inline-block;font-family:var(--sm-font-display);font-weight:800;font-size:13px;letter-spacing:.06em;color:var(--sm-green);background:rgba(0,133,62,.09);border:1px solid rgba(0,133,62,.2);padding:5px 12px;border-radius:20px;margin-bottom:16px}
.sm-st-cc ul{list-style:none;margin:0;padding:0}
.sm-st-cc li{position:relative;padding:9px 0 9px 24px;font-size:15px;line-height:1.5;border-bottom:1px solid var(--sm-line)}
.sm-st-cc li:last-child{border-bottom:0}
.sm-st-cc li::before{content:"";position:absolute;left:0;top:15px;width:8px;height:8px;background:var(--sm-gold);border-radius:2px}
.sm-st-cm{margin-top:20px;padding-top:18px;border-top:1px solid var(--sm-line)}
.sm-st-cm__l{font-family:var(--sm-font-mono);font-size:10px;letter-spacing:.12em;color:#9AA8A0;margin-bottom:12px}
.sm-st-cm__i{padding:10px 0;border-bottom:1px solid var(--sm-line)}
.sm-st-cm__i:last-child{border-bottom:0}
.sm-st-cm__top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sm-st-cm__n{font-family:var(--sm-font-display);font-weight:600;color:var(--sm-ink)}
.sm-st-cm__badge{font-family:var(--sm-font-mono);font-size:9px;letter-spacing:.06em;color:#3A2606;background:var(--sm-gold);padding:3px 9px;border-radius:20px}
.sm-st-cm__c{margin-top:4px;display:flex;flex-wrap:wrap;gap:4px 14px}
.sm-st-cm__c a{font-size:13px;color:var(--sm-slate);text-decoration:none;word-break:break-word}
.sm-st-cm__c a:hover{color:var(--sm-green)}
.sm-st-cm__c .ph{font-family:var(--sm-font-mono);color:var(--sm-green)}

/* board (forest) — SM_Board_Widget, self-contained: sm-board-w draws its own
   background/heading colours, doesn't rely on the Elementor section's bg */
.sm-board-w{background:var(--sm-forest);padding:var(--sm-pad-y) 0}
/* the other structure-page sections — each is its own self-contained widget
   (SM_Structure_*_Widget), same pattern as sm-board-w above */
.sm-lvl-w,.sm-rep-w{background:var(--sm-white);padding:var(--sm-pad-y) 0}
.sm-cmt-w,.sm-fnd-w{background:var(--sm-paper);padding:var(--sm-pad-y) 0}
.sm-prz-w{background:var(--sm-forest);padding:var(--sm-pad-y) 0}
.sm-prz-w .sm-h2{color:#fff}
.sm-board-w .sm-h2{color:#fff}
.sm-st-board{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sm-st-person{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:24px 22px}
.sm-st-person--lead{background:rgba(235,168,53,.1);border-color:rgba(235,168,53,.35)}
.sm-st-person__photo{width:92px;height:92px;border-radius:50%;overflow:hidden;margin:0 0 16px;background:rgba(255,255,255,.08)}
.sm-st-person__photo img{width:100%;height:100%;object-fit:cover;display:block}
.sm-st-person__role{font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.1em;color:var(--sm-gold);margin-bottom:8px}
.sm-st-person__name{font-family:var(--sm-font-display);font-weight:600;color:#fff;font-size:17px}
.sm-st-person__c{display:flex;flex-direction:column;gap:3px;margin-top:10px;border-top:1px solid rgba(255,255,255,.12);padding-top:10px}
.sm-st-person__c a{font-size:13px;word-break:break-word;color:#93AC9E;text-decoration:none}
.sm-st-person__c a:hover{color:var(--sm-gold)}
.sm-st-person__c .ph{font-family:var(--sm-font-mono);color:#fff}

/* district reps */
.sm-st-reps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.sm-st-rep{background:var(--sm-white);border:1px solid var(--sm-line);border-radius:8px;padding:26px;border-top:3px solid var(--sm-green)}
.sm-st-rep__prov{font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.1em;color:var(--sm-gold);margin-bottom:12px}
.sm-st-rep__name{font-family:var(--sm-font-display);font-weight:700;color:var(--sm-ink);font-size:17px;margin-bottom:2px}
.sm-st-rep__co{font-size:14px;color:var(--sm-slate);margin-bottom:14px;min-height:20px}
.sm-st-rep__tel{font-family:var(--sm-font-mono);font-size:13px;color:var(--sm-green)}
.sm-st-rep__tel a{color:var(--sm-green)}

/* founders */
.sm-st-founders{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--sm-line);border:1px solid var(--sm-line)}
.sm-st-founder{background:var(--sm-white);padding:24px 26px}
.sm-st-founder__p{font-family:var(--sm-font-display);font-weight:600;color:var(--sm-ink);font-size:16px}
.sm-st-founder__c{font-size:14px;color:var(--sm-slate);margin-top:3px}

/* presidents (forest) */
.sm-st-pres{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sm-st-presitem{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:22px 24px}
.sm-st-presitem__y{font-family:var(--sm-font-display);font-weight:800;font-size:26px;color:var(--sm-gold);line-height:1}
.sm-st-presitem__n{color:#fff;font-size:15px;margin-top:8px}

@media (max-width:860px){
	.sm-st-comm,.sm-st-board,.sm-st-reps,.sm-st-pres,.sm-st-founders{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
	.sm-st-comm,.sm-st-board,.sm-st-reps,.sm-st-pres,.sm-st-founders{grid-template-columns:1fr}
	.sm-st-level{flex-direction:column;gap:14px}
}

/* ══════════ CTA (green band) ══════════ */
.sm-cta-w{background:var(--sm-green);color:#D8EDE0;padding:58px 0}
.sm-cta{display:flex;justify-content:space-between;align-items:center;gap:36px;flex-wrap:wrap}
.sm-cta .sm-h2{color:var(--sm-white);max-width:24ch}
.sm-cta .sm-btn--ghost{border-color:rgba(255,255,255,.8)}
.sm-cta .sm-btn--ghost:hover{background:var(--sm-white);color:var(--sm-green)}

/* ══════════ LEGAL + PROSE (inner content pages) ══════════ */
.sm-legal,.sm-prose{max-width:820px;font-size:16px;line-height:1.75;color:var(--sm-slate)}
.sm-legal h2,.sm-prose h2{font-family:var(--sm-font-display);color:var(--sm-ink);font-size:clamp(22px,2.4vw,28px);font-weight:700;letter-spacing:-.015em;margin:40px 0 12px}
.sm-legal h3,.sm-prose h3{font-family:var(--sm-font-display);color:var(--sm-ink);font-size:18px;font-weight:600;letter-spacing:-.01em;margin:26px 0 8px}
.sm-legal h2:first-child,.sm-legal h3:first-child,.sm-prose h2:first-child,.sm-prose h3:first-child{margin-top:0}
.sm-legal p,.sm-prose p{margin:0 0 14px}
.sm-legal ul,.sm-legal ol,.sm-prose ul,.sm-prose ol{margin:0 0 16px;padding-left:22px}
.sm-legal li,.sm-prose li{margin-bottom:8px}
.sm-legal a,.sm-prose a{color:var(--sm-green);border-bottom:1px solid rgba(0,133,62,.35)}
.sm-legal a:hover,.sm-prose a:hover{color:var(--sm-green-dk)}
.sm-legal em,.sm-prose em{color:#82938A;font-size:14px;font-style:normal;font-family:var(--sm-font-mono);letter-spacing:.02em}
.sm-prose strong{color:var(--sm-ink)}

/* ══════════ SEMINARS — event listing ══════════ */
.sm-semfilter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:34px}
/* every state pinned explicitly — no external "accent" (pink from the
   Elementor Kit / an accessibility plugin) is allowed to win here */
.sm-semchip{font-family:var(--sm-font-display);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:11px 20px;border:1.5px solid var(--sm-line);background-color:var(--sm-white)!important;background-image:none!important;border-radius:40px;cursor:pointer;color:var(--sm-slate)!important;transition:border-color .15s,color .15s,background-color .15s;white-space:nowrap;-webkit-appearance:none;appearance:none;box-shadow:none!important;-webkit-tap-highlight-color:transparent;outline:none}
.sm-semchip:hover,.sm-semchip:focus,.sm-semchip:focus-visible{border-color:var(--sm-green);color:var(--sm-green)!important;background-color:var(--sm-white)!important;outline:none}
.sm-semchip.is-active,.sm-semchip.is-active:hover,.sm-semchip.is-active:focus{background-color:var(--sm-green)!important;border-color:var(--sm-green);color:#fff!important}

.sm-seminars-grid{display:flex;flex-wrap:wrap;gap:26px}
.sm-seminar-card{flex:1 1 300px;min-width:0;max-width:calc(50% - 13px);background:var(--sm-white);border:1px solid var(--sm-line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
/* the card's own `display:flex` above (author stylesheet) otherwise beats the
   browser's default `[hidden]{display:none}` rule at equal specificity — force
   it explicitly so the type filter actually hides non-matching cards */
.sm-seminar-card.sm-sem-hidden{display:none!important}
.sm-seminar-card:hover{box-shadow:0 18px 44px rgba(4,51,30,.12);transform:translateY(-3px)}
.sm-seminar-card__media{position:relative;display:block;aspect-ratio:16/9;background:var(--sm-paper) center/cover no-repeat;color:var(--sm-white)}
.sm-seminar-card__media.is-placeholder{background:linear-gradient(135deg,var(--sm-forest),var(--sm-forest-2))}
.sm-seminar-card__media.is-placeholder svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;opacity:.5}
.sm-seminar-card__chip{position:absolute;left:16px;bottom:16px;background:var(--sm-gold);color:#3A2606;border-radius:4px;padding:8px 12px;text-align:center;line-height:1;font-family:var(--sm-font-display);box-shadow:0 8px 20px rgba(4,51,30,.25)}
.sm-seminar-card__chip strong{display:block;font-size:20px;font-weight:800}
.sm-seminar-card__chip em{font-style:normal;font-family:var(--sm-font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.sm-seminar-card__body{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.sm-seminar-card__type{font-family:var(--sm-font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--sm-green-dk);background:rgba(0,133,62,.08);border:1px solid rgba(0,133,62,.2);border-radius:4px;padding:4px 9px;align-self:flex-start;margin-bottom:12px}
.sm-seminar-card__body .sm-h3{font-size:18px;line-height:1.32;margin-bottom:12px}
.sm-seminar-card__body .sm-h3 a{color:var(--sm-ink)}
.sm-seminar-card__body .sm-h3 a:hover{color:var(--sm-green)}
.sm-seminar-card__meta{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:7px}
.sm-seminar-card__meta li{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:var(--sm-slate)}
.sm-seminar-card__meta svg{width:15px;height:15px;flex:0 0 auto;margin-top:2px;stroke:var(--sm-gold);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sm-seminar-card__topic{font-size:14px;color:var(--sm-slate);margin-top:auto;padding-top:4px}
@media (max-width:768px){.sm-seminar-card{max-width:100%;flex-basis:100%}}

/* ══════════ NEWS ARCHIVE + SINGLE ══════════ */
.sm-archive .sm-pagebanner h1,
.sm-single .sm-pagebanner h1{margin:12px 0 10px}
.sm-posts--archive{align-items:stretch}
.sm-posts--archive .sm-post__body{gap:0}

.sm-pagination{display:flex;flex-wrap:wrap;gap:8px;margin-top:44px}
.sm-pagination .sm-page{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--sm-line);border-radius:3px;font-family:var(--sm-font-display);font-weight:600;font-size:14px;color:var(--sm-ink)!important;background-color:transparent!important;text-decoration:none;transition:.15s}
.sm-pagination a.sm-page:hover,.sm-pagination a.sm-page:focus{border-color:var(--sm-green);color:var(--sm-green)!important;background-color:transparent!important;outline:none}
.sm-pagination .sm-page.current,.sm-pagination .sm-page.current:hover{background-color:var(--sm-green)!important;border-color:var(--sm-green);color:#fff!important}
.sm-pagination .sm-page.dots{border-color:transparent}

/* single */
.sm-single__crumbs{display:flex;gap:8px;align-items:center;font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sm-gold)}
.sm-single__crumbs a{color:var(--sm-gold)}
.sm-single__crumbs a:hover{color:#fff}
.sm-single__crumbs span{opacity:.5}
.sm-single__head h1{color:#fff;font-family:var(--sm-font-display);font-weight:800;font-size:clamp(30px,4.4vw,52px);letter-spacing:-.02em;margin:14px 0 12px;max-width:22ch}
.sm-single__meta{font-family:var(--sm-font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--sm-mist)}
.sm-single__body{padding-top:0}
.sm-single__cover{margin:-56px 0 34px;border-radius:var(--sm-radius);overflow:hidden;box-shadow:0 24px 60px rgba(4,51,30,.16);max-width:960px}
.sm-single__cover img{width:100%;height:auto;display:block}
.sm-single__content{margin-top:8px}
.sm-single__content img{border-radius:var(--sm-radius);height:auto}
.sm-single__content h2{font-family:var(--sm-font-display);color:var(--sm-ink);font-size:clamp(22px,2.4vw,28px);font-weight:700;letter-spacing:-.015em;margin:36px 0 12px}
.sm-single__content h3{font-family:var(--sm-font-display);color:var(--sm-ink);font-size:19px;font-weight:600;margin:26px 0 8px}
.sm-single__content blockquote{border-left:3px solid var(--sm-gold);padding-left:22px;margin:24px 0;font-size:17px;color:var(--sm-ink)}
.sm-single__foot{margin-top:40px}
.sm-single__nav{display:flex;gap:20px;margin-top:40px;border-top:1px solid var(--sm-line);padding-top:26px;flex-wrap:wrap}
.sm-single__nav-item{flex:1 1 240px;min-width:0;text-decoration:none;color:var(--sm-slate)}
.sm-single__nav-item--next{text-align:right}
.sm-single__nav-item span{display:block;font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--sm-green);margin-bottom:6px}
.sm-single__nav-item strong{font-family:var(--sm-font-display);font-weight:600;color:var(--sm-ink);font-size:15px;line-height:1.35}
.sm-single__nav-item:hover strong{color:var(--sm-green)}
.sm-single__pages{margin-top:24px;font-family:var(--sm-font-mono);font-size:13px}
@media (max-width:640px){
	.sm-single__cover{margin-top:-36px}
	.sm-single__nav-item--next{text-align:left}
}

/* ══════════ CONTACT FORM ══════════ */
.sm-contact{max-width:820px}
.sm-contact__title{margin:0 0 20px}
.sm-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.sm-contact__form{display:flex;flex-direction:column;gap:16px}
.sm-contact__row{display:flex;gap:16px}
.sm-contact__row>*{flex:1 1 0;min-width:0}
.sm-contact label{display:flex;flex-direction:column;gap:6px;font-family:var(--sm-font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#82938A}
.sm-contact input,.sm-contact textarea{font-family:var(--sm-font-body);font-size:16px;color:var(--sm-ink);background:var(--sm-white);border:1px solid var(--sm-line);border-radius:3px;padding:13px 15px;width:100%;transition:border-color .15s}
.sm-contact input:focus,.sm-contact textarea:focus{border-color:var(--sm-green);outline:none}
.sm-contact textarea{resize:vertical;min-height:140px}
.sm-contact__consent{flex-direction:row!important;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;font-family:var(--sm-font-body);font-size:13px;color:var(--sm-slate)}
.sm-contact__consent input{width:auto;flex:0 0 auto;margin-top:2px}
.sm-contact__consent a{color:var(--sm-green);border-bottom:1px solid rgba(0,133,62,.35)}
.sm-contact__form .sm-btn{align-self:flex-start;margin-top:4px}
.sm-contact__ok{font-family:var(--sm-font-display);font-weight:600;color:var(--sm-green-dk);font-size:18px;padding:22px;background:rgba(0,133,62,.06);border:1px solid rgba(0,133,62,.2);border-radius:var(--sm-radius)}
.sm-contact__err{color:#9a2b2b;background:rgba(154,43,43,.06);border:1px solid rgba(154,43,43,.2);border-radius:var(--sm-radius);padding:14px 18px;margin-bottom:16px}
@media (max-width:640px){.sm-contact__row{flex-direction:column;gap:16px}}

/* ══════════ SECTION HEADING (inner pages) ══════════ */
.sm-sh--center{text-align:center}
.sm-sh--center .sm-eyebrow{justify-content:center}
.sm-sh__lead{max-width:60ch;margin-top:12px;color:var(--sm-slate)}
.sm-sh--center .sm-sh__lead{margin-left:auto;margin-right:auto}
.sm-sec--forest .sm-sh__lead{color:var(--sm-mist)}
.sm-sec--forest .sm-eyebrow{color:var(--sm-gold)}
.sm-sec--forest .sm-eyebrow::after{background:var(--sm-gold)}
/* "Σκούρο φόντο" switch on the widget itself — works regardless of whether
   the ambient Elementor section carries any particular CSS class */
.sm-sh--dark.sm-sh,.sm-sh-w.sm-sh--dark .sm-sh{color:var(--sm-mist)}
.sm-sh--dark .sm-h1,.sm-sh--dark .sm-h2,.sm-sh--dark .sm-h3{color:var(--sm-white)!important}
.sm-sh--dark .sm-sh__lead{color:var(--sm-mist)!important}
.sm-sh--dark .sm-eyebrow{color:var(--sm-gold)!important}
.sm-sh--dark .sm-eyebrow::after{background:var(--sm-gold)!important}
.sm-sh__btn{margin-top:22px}

/* ══════════ RESPONSIVE ══════════ */
@media (max-width:1024px){
	.sm-card{flex-basis:calc(50% - 1px)}
	.sm-post{flex-basis:calc(50% - 15px);max-width:calc(50% - 15px)}
	.sm-intro__grid,.sm-registry,.sm-news{grid-template-columns:1fr;gap:36px}
	.sm-hero__stats{grid-template-columns:repeat(2,1fr)}
	.sm-hero__stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.11)}
}
@media (max-width:640px){
	.sm-hero__in{padding-top:60px;padding-bottom:60px}
	.sm-card{flex-basis:100%}
	.sm-post{flex-basis:100%;max-width:100%}
	.sm-hero__stats{grid-template-columns:1fr;margin-top:48px}
	.sm-cta{flex-direction:column;align-items:flex-start}
}
