/* Sponti course-led homepage hero, retains existing header and other sections */
body:has(.sponti-course-hero) .sponti-course-hero{padding:60px max(24px,calc((100vw - 1450px)/2)) 46px!important;text-align:left!important;background:radial-gradient(ellipse at 92% 12%,#ffe2d2aa,transparent 34%),radial-gradient(ellipse at 4% 94%,#e8eed8a8,transparent 35%),#fff8f1!important}
.sponti-course-hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);gap:clamp(22px,4vw,72px);align-items:center;max-width:1380px;margin:auto}
.sponti-course-hero-copy{padding:35px 0}
.sponti-course-hero-copy .eyebrow{font-size:13px;color:#f07844;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
body:has(.sponti-course-hero) .sponti-course-hero h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(43px,5.6vw,83px)!important;line-height:1.08!important;letter-spacing:-.04em!important;color:#0d493a!important;margin:25px 0 24px!important}
.sponti-course-hero h1 em{color:#f47e49;font-weight:600}
.sponti-course-hero-copy>p{font-size:clamp(16px,1.6vw,22px)!important;line-height:1.58!important;color:#245346!important;margin:0 0 28px!important;max-width:580px}
.sponti-course-hero-cta{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:18px 32px;border-radius:999px;background:linear-gradient(110deg,#ff8a31,#ff7338);color:#fff!important;text-decoration:none;font-size:17px;font-weight:800;box-shadow:0 9px 20px #db79352b;transition:transform .2s}
.sponti-course-hero-cta:hover{transform:translateY(-2px)}
.sponti-course-hero-benefits{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:28px;color:#155341;font-size:13px;font-weight:650}
.sponti-course-hero-gallery{position:relative;min-height:445px;isolation:isolate}
.sponti-hero-photo{position:absolute;display:block;overflow:hidden;border:7px solid #fff9f1;border-radius:45px;box-shadow:0 15px 35px #20493625;text-decoration:none;transition:transform .2s;isolation:isolate}
.sponti-hero-photo:hover{transform:translateY(-6px) rotate(0deg);z-index:5}
.sponti-hero-photo img{width:100%;height:100%;object-fit:cover;display:block}
.sponti-hero-photo:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#0c241caa);pointer-events:none}
.sponti-hero-photo strong{position:absolute;z-index:2;bottom:25px;left:22px;color:#fff;font:700 clamp(23px,2.5vw,39px) "Playfair Display",Georgia,serif}
.sponti-hero-photo-left{left:0;top:90px;width:42%;height:305px;transform:rotate(-6deg)}
.sponti-hero-photo-main{left:27%;top:10px;width:48%;height:425px;z-index:3;transform:rotate(4deg)}
.sponti-hero-photo-right{right:0;top:100px;width:40%;height:300px;transform:rotate(7deg)}
.sponti-hero-quick-categories{position:relative;z-index:2;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px;max-width:1300px;margin:35px auto 0}
.sponti-hero-quick-categories a{display:flex;align-items:center;flex-direction:column;gap:10px;text-align:center;text-decoration:none;color:#154738;font-size:13px;font-weight:800;line-height:1.3}
.sponti-quick-icon{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#f9e6d7;border:1px solid #fff;transition:transform .2s}
.sponti-hero-quick-categories a:nth-child(2n) .sponti-quick-icon{background:#e8ecda}
.sponti-hero-quick-categories a:hover .sponti-quick-icon{transform:translateY(-4px)}
.sponti-quick-icon svg{width:32px;height:32px;fill:none;stroke:#175342;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1000px){.sponti-course-hero-layout{grid-template-columns:1fr}.sponti-course-hero-copy{padding:0}.sponti-course-hero-gallery{min-height:360px;max-width:650px;width:100%;margin:auto}.sponti-hero-photo-left{height:255px}.sponti-hero-photo-main{height:350px}.sponti-hero-photo-right{height:255px}.sponti-hero-quick-categories{grid-template-columns:repeat(4,1fr);row-gap:25px}}
@media(max-width:600px){body:has(.sponti-course-hero) .sponti-course-hero{padding:42px 18px 35px!important}.sponti-course-hero h1{font-size:clamp(40px,10vw,58px)!important}.sponti-course-hero-gallery{min-height:250px}.sponti-hero-photo{border-width:4px;border-radius:23px}.sponti-hero-photo-left{top:65px;height:160px}.sponti-hero-photo-main{top:5px;height:245px}.sponti-hero-photo-right{top:65px;height:160px}.sponti-hero-photo strong{font-size:19px;bottom:12px;left:10px}.sponti-hero-quick-categories{grid-template-columns:repeat(4,1fr);gap:18px 8px}.sponti-quick-icon{width:56px;height:56px}.sponti-quick-icon svg{width:26px;height:26px}.sponti-hero-quick-categories a{font-size:11px}.sponti-course-hero-cta{width:100%}}
@media(prefers-reduced-motion:reduce){.sponti-hero-photo,.sponti-course-hero-cta,.sponti-quick-icon{transition:none}}

/* Keep all three course photos fully visible without awkward overlapping cuts. */
.sponti-course-hero-gallery{display:flex!important;align-items:center;justify-content:center;gap:12px;min-height:410px!important;padding:12px 0;overflow:visible}
.sponti-course-hero-gallery .sponti-hero-photo{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;flex:1 1 0;width:0!important;height:315px!important;transform:none!important;border-width:5px!important;border-radius:26px!important;box-shadow:0 12px 25px #20493620!important}
.sponti-course-hero-gallery .sponti-hero-photo-main{flex:1.16 1 0;height:375px!important;z-index:1}
.sponti-course-hero-gallery .sponti-hero-photo img{object-fit:cover;object-position:center center}
.sponti-course-hero-gallery .sponti-hero-photo:hover{transform:translateY(-5px)!important}
@media(max-width:600px){.sponti-course-hero-gallery{min-height:235px!important;gap:7px}.sponti-course-hero-gallery .sponti-hero-photo{height:175px!important;border-radius:15px!important;border-width:3px!important}.sponti-course-hero-gallery .sponti-hero-photo-main{height:215px!important}.sponti-course-hero-gallery .sponti-hero-photo strong{font-size:15px!important;left:7px!important;bottom:9px!important}}

/* Orange hand-drawn swoosh below the original three-word Sponti headline. */
.sponti-course-hero-copy h1{position:relative;display:table;padding-bottom:24px!important}
.sponti-course-hero-copy h1::after{content:"";position:absolute;left:8%;bottom:0;width:75%;height:15px;background:#fa793d;border-radius:60% 42% 55% 48% / 75% 80% 45% 50%;transform:rotate(-1.3deg);clip-path:polygon(0 40%,5% 18%,18% 8%,36% 0,58% 7%,80% 17%,95% 27%,100% 53%,99% 82%,84% 65%,61% 51%,38% 47%,17% 55%,3% 90%)}
@media(max-width:600px){.sponti-course-hero-copy h1{padding-bottom:17px!important}.sponti-course-hero-copy h1::after{height:10px;width:78%}}

/* Seamless header-to-hero canvas; restore original overlapping photo composition. */
.sponti-course-hero-gallery{display:block!important;position:relative!important;min-height:445px!important;padding:0!important;overflow:visible!important}
.sponti-course-hero-gallery .sponti-hero-photo{position:absolute!important;display:block!important;flex:none!important;inset:auto!important;width:42%!important;height:305px!important;border:7px solid #fff9f1!important;border-radius:45px!important;box-shadow:0 15px 35px #20493625!important;transition:transform .2s}
.sponti-course-hero-gallery .sponti-hero-photo-left{left:0!important;top:90px!important;right:auto!important;width:42%!important;height:305px!important;transform:rotate(-6deg)!important;z-index:1}
.sponti-course-hero-gallery .sponti-hero-photo-main{left:27%!important;top:10px!important;right:auto!important;width:48%!important;height:425px!important;transform:rotate(4deg)!important;z-index:3}
.sponti-course-hero-gallery .sponti-hero-photo-right{right:0!important;top:100px!important;left:auto!important;width:40%!important;height:300px!important;transform:rotate(7deg)!important;z-index:2}
.sponti-course-hero-gallery .sponti-hero-photo:hover{transform:translateY(-6px) rotate(0deg)!important;z-index:5}
@media(max-width:1000px){.sponti-course-hero-gallery{min-height:360px!important}.sponti-course-hero-gallery .sponti-hero-photo-left{height:255px!important}.sponti-course-hero-gallery .sponti-hero-photo-main{height:350px!important}.sponti-course-hero-gallery .sponti-hero-photo-right{height:255px!important}}
@media(max-width:600px){.sponti-course-hero-gallery{min-height:250px!important}.sponti-course-hero-gallery .sponti-hero-photo{border-width:4px!important;border-radius:23px!important}.sponti-course-hero-gallery .sponti-hero-photo-left{top:65px!important;height:160px!important}.sponti-course-hero-gallery .sponti-hero-photo-main{top:5px!important;height:245px!important}.sponti-course-hero-gallery .sponti-hero-photo-right{top:65px!important;height:160px!important}}

/* Stacked photo collage — retain current seamless page background. */
html body .sponti-course-hero .sponti-course-hero-gallery{display:block!important;position:relative!important;height:455px!important;min-height:455px!important;overflow:visible!important}
html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo{position:absolute!important;display:block!important;flex:none!important;margin:0!important;min-width:0!important;max-width:none!important;border:6px solid #fff9f1!important;border-radius:34px!important;box-shadow:0 16px 34px rgba(25,60,45,.19)!important}
html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo-left{left:4%!important;right:auto!important;top:95px!important;width:44%!important;height:310px!important;transform:rotate(-9deg)!important;z-index:1!important}
html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo-main{left:27%!important;right:auto!important;top:12px!important;width:49%!important;height:420px!important;transform:rotate(5deg)!important;z-index:3!important}
html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo-right{left:auto!important;right:0!important;top:105px!important;width:43%!important;height:300px!important;transform:rotate(10deg)!important;z-index:2!important}
html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo:hover{z-index:5!important;transform:translateY(-7px) rotate(0deg)!important}
@media(max-width:600px){html body .sponti-course-hero .sponti-course-hero-gallery{height:270px!important;min-height:270px!important}html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo{border-width:4px!important;border-radius:22px!important}html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo-left{top:66px!important;height:180px!important}html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo-main{top:8px!important;height:245px!important}html body .sponti-course-hero .sponti-course-hero-gallery>a.sponti-hero-photo-right{top:70px!important;height:175px!important}}

/* Restore the original cream/peach hero background from before the seamless-background experiment. */
html body:has(.sponti-course-hero) .sponti-course-hero{background:radial-gradient(ellipse at 92% 12%,#ffe2d2aa,transparent 34%),radial-gradient(ellipse at 4% 94%,#e8eed8a8,transparent 35%),#fff8f1!important;background-image:radial-gradient(ellipse at 92% 12%,#ffe2d2aa,transparent 34%),radial-gradient(ellipse at 4% 94%,#e8eed8a8,transparent 35%)!important;background-color:#fff8f1!important}

/* Homepage quick search above course category icons */
.sponti-hero-search{position:relative;z-index:4;display:grid;grid-template-columns:1fr 1fr 1.25fr auto;align-items:stretch;max-width:1300px;margin:24px auto 12px;padding:9px;background:#fffdfb;border:1px solid #e9e6df;border-radius:999px;box-shadow:0 12px 28px rgba(33,62,48,.11)}
.sponti-hero-search-field{display:flex;align-items:center;gap:13px;min-width:0;padding:8px 22px;border-right:1px solid #d8dfd7;color:#174d3d}
.sponti-hero-search-field:nth-child(3){border-right:0}
.sponti-search-field-icon{font-size:27px;line-height:1;color:#175543}
.sponti-search-field-inner{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.sponti-search-label{font-size:12px;font-weight:800;color:#1d5545}
.sponti-hero-search input,.sponti-hero-search select{display:block;width:100%;min-width:0;border:0;outline-offset:3px;background:transparent;color:#254c40;font:500 14px "DM Sans",sans-serif;padding:3px 0;box-shadow:none}
.sponti-hero-search button{border:0;border-radius:999px;background:linear-gradient(110deg,#ff9c43,#ff703b);color:white;font:800 16px "DM Sans",sans-serif;padding:15px 30px;cursor:pointer;white-space:nowrap}
.sponti-hero-search button span{margin-left:12px}
.sponti-hero-quick-categories{margin-top:28px!important}
@media(max-width:800px){.sponti-hero-search{grid-template-columns:1fr 1fr;border-radius:26px;gap:4px;padding:10px}.sponti-hero-search-field{border:0;padding:11px 13px}.sponti-hero-search-field:nth-child(1){border-right:1px solid #e2e5df}.sponti-hero-search-field:nth-child(3){grid-column:1/-1;border-top:1px solid #e2e5df}.sponti-hero-search button{grid-column:1/-1;width:100%;padding:15px}}
@media(max-width:450px){.sponti-hero-search{grid-template-columns:1fr}.sponti-hero-search-field,.sponti-hero-search-field:nth-child(1){grid-column:1;border:0;border-bottom:1px solid #e2e5df}.sponti-hero-search-field:nth-child(3){border-top:0}}

/* Today-only quick filter replaces redundant category dropdown */
.sponti-hero-search{grid-template-columns:1fr 1fr 1.25fr auto}
.sponti-today-filter{display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;white-space:nowrap;min-width:0;padding:8px 18px;color:#145340;font:700 14px "DM Sans",sans-serif}
.sponti-today-filter input{position:absolute;opacity:0;width:1px;height:1px}
.sponti-today-filter>span{background:#e8f1e3;border-radius:999px;padding:13px 17px}
.sponti-today-filter .sponti-today-icon{font-size:22px;padding:10px 0 10px 14px;border-radius:999px 0 0 999px;margin-right:-29px;z-index:1}
.sponti-today-filter input:checked~span{background:#d5e9ce;color:#0c533a}
.sponti-today-filter input:focus-visible~span{outline:2px solid #ff793c;outline-offset:3px}
@media(max-width:800px){.sponti-today-filter{grid-column:1/-1;justify-content:flex-start;white-space:normal}}

/* Today filter: clean centered label without lightning icon. */
.sponti-today-filter{gap:0!important;justify-content:center!important}
.sponti-today-filter>span{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;margin:0!important;padding:13px 20px!important;line-height:1.3!important}
