/* Landing Corso / Evento Eptamed — vedi woocommerce/single-product-corso.php */

.ept-course{background:#F0F4F8;}
.ept-course *{box-sizing:border-box;}
.ept-course img{display:block;max-width:100%;}
.ept-course a{text-decoration:none;color:inherit;}

/* ── TOP BAR ── */
.ept-course-topbar{background:#0E2E4B;padding:0 48px;height:52px;display:flex;align-items:center;}
.ept-course-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:rgba(255,255,255,.5);flex-wrap:wrap;}
.ept-course-breadcrumb a{color:rgba(255,255,255,.5);transition:color 150ms;}
.ept-course-breadcrumb a:hover{color:#fff;}
.ept-course-sep{color:rgba(255,255,255,.2);}
.ept-course-crumb-cur{color:#fff;font-weight:600;}

/* ── HERO ── */
.ept-course-hero{background:#0E2E4B;padding:48px;}
.ept-course-hero-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;}
.ept-course-badge{display:inline-block;background:rgba(0,161,155,.18);color:#00A19B;border-radius:100px;padding:5px 14px;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px;}
.ept-course-title{font-size:clamp(1.9rem,3.2vw,2.5rem);font-weight:700;color:#fff;line-height:1.15;margin:0 0 16px;}
.ept-course-meta-row{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:18px;}
.ept-course-meta-item{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.8);font-size:.9375rem;font-weight:500;}
.ept-course-hero-intro{color:rgba(255,255,255,.75);font-size:1rem;line-height:1.6;margin:0 0 24px;max-width:520px;}
.ept-course-hero-cta{display:inline-flex;align-items:center;gap:8px;background:#00A19B;border-radius:100px;padding:12px 24px;font-size:.9375rem;font-weight:700;transition:background 150ms;}
/* selettore più specifico di ".ept-course a" (color:inherit) qui sopra,
   altrimenti quella regola vince e il pulsante eredita il colore testo
   scuro del contenitore invece del bianco voluto. */
.ept-course a.ept-course-hero-cta,.ept-course a.ept-course-hero-cta:hover{color:#fff;}
.ept-course-hero-cta:hover{background:#008f8a;}
.ept-course-hero-media{display:flex;justify-content:center;align-items:center;min-width:0;}
/* Copertina alle sue proporzioni reali: orizzontale resta orizzontale, verticale resta verticale (nessun ritaglio). */
.ept-course-hero-media img{display:block;width:auto;max-width:100%;height:auto;max-height:560px;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.25);}

/* ── CONTENT ── */
.ept-course-content{max-width:1200px;margin:0 auto;padding:40px 48px 64px;}
.ept-course-notice{border-radius:12px;padding:14px 20px;font-size:.9375rem;margin-bottom:24px;border-left:4px solid #00A19B;background:#fff;box-shadow:0 1px 6px rgba(19,65,105,.05);}
.ept-course-notice--error{border-left-color:#D9534F;}
.ept-course-grid{display:grid;grid-template-columns:1fr 340px;gap:40px;align-items:start;}
.ept-course-main,.ept-course-sidebar{min-width:0;}

.ept-course-section{margin-bottom:32px;}
.ept-course-section h2{font-size:1.375rem;font-weight:700;color:#1C2221;margin:0 0 14px;}
.ept-course-section p{font-size:.9375rem;line-height:1.7;color:#4E5655;margin:0 0 12px;}
.ept-course-info-list{list-style:none;margin:0;background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 1px 6px rgba(19,65,105,.05);}
.ept-course-info-list li{font-size:.9375rem;color:#4E5655;padding:8px 0;border-bottom:1px solid #EBEFEF;}
.ept-course-info-list li:last-child{border-bottom:none;}
.ept-course-info-list strong{color:#1C2221;}
/* Carosello: scroll orizzontale nativo (touch/trackpad) con scroll-snap,
   + frecce prev/next (course-template.js) che scrollano il contenitore —
   le frecce sono un controllo esplicito in aggiunta allo swipe/trackpad,
   non un sostituto: su desktop senza trackpad/touch sarebbe altrimenti
   l'unico modo di scorrere. */
.ept-course-posters-carousel{position:relative;}
.ept-course-posters{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.ept-course-posters::-webkit-scrollbar{display:none;}
.ept-course-poster-item{position:relative;display:inline-block;flex:0 0 auto;scroll-snap-align:start;}
.ept-course-posters-arrow{
	position:absolute;top:50%;transform:translateY(-50%);z-index:2;
	width:40px;height:40px;border-radius:50%;border:none;background:#fff;color:#134169;
	display:flex;align-items:center;justify-content:center;cursor:pointer;
	box-shadow:0 2px 12px rgba(19,65,105,.2);transition:background 150ms,opacity 150ms;
}
.ept-course-posters-arrow:hover{background:#F0F4F8;}
.ept-course-posters-arrow--prev{left:-20px;}
.ept-course-posters-arrow--next{right:-20px;}
.ept-course-posters-arrow[hidden]{display:none;}
@media(max-width:560px){
	.ept-course-posters-arrow--prev{left:-8px;}
	.ept-course-posters-arrow--next{right:-8px;}
}
.ept-course-poster{max-width:280px;max-height:380px;width:auto;height:auto;border-radius:12px;box-shadow:0 1px 6px rgba(19,65,105,.08);}
.ept-course-poster-open{display:block;padding:0;border:none;background:none;cursor:zoom-in;}
.ept-course-poster-download{
	position:absolute;bottom:8px;right:8px;width:32px;height:32px;border-radius:50%;
	background:rgba(14,46,75,.85);display:flex;align-items:center;justify-content:center;
	transition:background 150ms;
}
/* vedi commento sopra su .ept-course-hero-cta: stesso bug di specificità,
   ".ept-course a" vince su un'unica classe e l'icona (currentColor)
   eredita il colore testo scuro invece del bianco voluto. */
.ept-course a.ept-course-poster-download,.ept-course a.ept-course-poster-download:hover{color:#fff;}
.ept-course-poster-download:hover{background:#0E2E4B;}

/* Lightbox: apertura locandina a schermo intero, senza navigare via dalla
   pagina (prima era target="_blank", comportamento esplicitamente non
   voluto). Markup sempre presente nel DOM (templates/single-product-corso.php),
   mostrato/nascosto via l'attributo [hidden] tolto/rimesso da JS
   (course-template.js) — l'override esplicito sotto evita che una
   regola `display` sull'elemento vinca sulla regola nativa [hidden]. */
.ept-course-lightbox{
	position:fixed;inset:0;z-index:9999;background:rgba(14,46,75,.92);
	display:flex;align-items:center;justify-content:center;padding:32px;
}
.ept-course-lightbox[hidden]{display:none;}
.ept-course-lightbox-img{max-width:90vw;max-height:90vh;width:auto;height:auto;border-radius:8px;box-shadow:0 8px 40px rgba(0,0,0,.4);}
.ept-course-lightbox-close{
	position:absolute;top:20px;right:24px;width:40px;height:40px;border-radius:50%;
	border:none;background:rgba(255,255,255,.15);color:#fff;font-size:24px;line-height:1;
	cursor:pointer;transition:background 150ms;
}
.ept-course-lightbox-close:hover{background:rgba(255,255,255,.3);}
.ept-course-pdf-btn{display:inline-flex;align-items:center;gap:8px;background:#134169;color:#fff;border-radius:10px;padding:11px 20px;font-size:.875rem;font-weight:700;transition:background 150ms;}
.ept-course-pdf-btn:hover{background:#0E2E4B;}

/* ── SIDEBAR / ISCRIZIONE ── */
.ept-course-sidebar{position:sticky;top:20px;}
.ept-course-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 20px rgba(19,65,105,.08);}
.ept-course-closed{margin:0;font-size:.9375rem;color:#A0ABAB;font-weight:600;text-align:center;}
.ept-course-price{display:flex;align-items:baseline;gap:10px;margin-bottom:16px;}
.ept-course-price .ept-price-orig{font-size:1.0625rem;color:#A0ABAB;text-decoration:line-through;}
.ept-course-price .ept-price-disc{font-size:1.625rem;font-weight:700;color:#1C2221;}
.ept-course-deposit-note{font-size:.8125rem;color:#7C8794;background:#F8FAFA;border-radius:8px;padding:10px 12px;margin:0 0 16px;}

.ept-course-variant-btns{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;}
.ept-course-variant-btn{
	height:38px;padding:0 16px;border-radius:100px;border:2px solid #EBEFEF;background:#fff;
	font-size:.875rem;font-weight:600;color:#4E5655;cursor:pointer;transition:border-color 150ms,background 150ms,color 150ms;
}
.ept-course-variant-btn:hover{border-color:#134169;color:#134169;}
.ept-course-variant-btn.active{border-color:#134169;background:#134169;color:#fff;}

.ept-course-cart-row{display:flex;align-items:center;gap:10px;}
.ept-course-qty-ctrl{display:inline-flex;align-items:center;border:1.5px solid #EBEFEF;border-radius:12px;overflow:hidden;background:#fff;flex-shrink:0;}
.ept-course-qty-btn{width:38px;height:44px;background:none;border:none;cursor:pointer;font-size:1.05rem;color:#134169;display:flex;align-items:center;justify-content:center;transition:background 150ms;}
.ept-course-qty-btn:hover{background:#EFF2F5;}
.ept-course-qty-val{width:40px;text-align:center;font-size:1rem;font-weight:700;color:#1C2221;border:none !important;outline:none !important;box-shadow:none !important;background:none;-moz-appearance:textfield;}
.ept-course-qty-val::-webkit-outer-spin-button,.ept-course-qty-val::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

.ept-course-cta-btn{
	width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;
	background:#134169;color:#fff;border:none;border-radius:12px;height:46px;
	font-size:.9375rem;font-weight:700;cursor:pointer;transition:background 150ms;
}
.ept-course-cta-btn:hover{background:#0E2E4B;}
.ept-course-cart-row .ept-course-cta-btn{width:auto;flex:1;}
.ept-course-cta-btn--disabled,.ept-course-cta-btn--disabled:hover{background:#A0ABAB;cursor:not-allowed;}
.ept-course-cta-btn--whatsapp{background:#25D366;text-decoration:none;}
.ept-course-cta-btn--whatsapp:hover{background:#1DA851;}
/* Pulsante <a> (Guarda la registrazione, WhatsApp, link personalizzato): il tema applica il colore
   dei link e rendeva il testo scuro sul fondo blu — qui bianco in tutti gli stati, !important perché
   le regole link del tema (OceanWP/Elementor) hanno specificità pari o superiore. */
a.ept-course-cta-btn,a.ept-course-cta-btn:link,a.ept-course-cta-btn:visited,a.ept-course-cta-btn:hover,a.ept-course-cta-btn:focus,a.ept-course-cta-btn:active{color:#fff !important;text-decoration:none !important;}
.ept-course-card .ept-course-closed{margin-bottom:12px;}

.ept-course-reveal-form{display:none;margin-top:18px;flex-direction:column;gap:12px;min-width:0;}
.ept-course-reveal-form.open{display:flex;}
.ept-course-field{display:flex;flex-direction:column;gap:5px;font-size:.8125rem;font-weight:600;color:#4E5655;min-width:0;}
.ept-course-field input,.ept-course-field textarea,.ept-course-field select{
	width:100%;min-width:0;box-sizing:border-box;
	font-family:inherit;font-size:.9375rem;padding:10px 12px;border:1.5px solid #EBEFEF;border-radius:8px;color:#1C2221;
	background:#fff;
}
.ept-course-field input:focus,.ept-course-field textarea:focus,.ept-course-field select:focus{outline:none;border-color:#134169;}
.ept-course-hp-field{position:absolute;left:-9999px;}

/* Telefono: prefisso (menu stretto, larghezza fissa) + numero (il resto dello spazio). */
.ept-course-phone-row{display:flex;gap:8px;min-width:0;}
.ept-course-phone-prefix{flex:0 0 112px;width:112px;}
.ept-course-phone-number{flex:1;min-width:0;}
@media(max-width:420px){
	.ept-course-phone-row{flex-wrap:wrap;}
	.ept-course-phone-prefix{flex:1 1 100%;width:100%;}
	.ept-course-phone-number{flex:1 1 100%;}
}

@media(max-width:900px){
	.ept-course-hero-inner{grid-template-columns:1fr;}
	.ept-course-hero-media{order:-1;max-width:min(100%,520px);margin:0 auto;}
	.ept-course-hero-media img{max-height:420px;}
	.ept-course-grid{grid-template-columns:1fr;}
	.ept-course-sidebar{position:static;}
	.ept-course-hero,.ept-course-content,.ept-course-topbar{padding-left:24px;padding-right:24px;}
}
