/* Canonical public-page layout, including the homepage hero. */
.kw-introgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.kw-section--cream{background:var(--cream)}.kw-link{font-weight:900;color:var(--pink-dark)}
.kw-public-page__content{padding:68px 0 92px}
.kw-public-page__content-inner{width:min(calc(100% - 64px),900px);margin-inline:auto;line-height:1.7}
.kw-public-page__content-inner>:first-child{margin-top:0}
.kw-public-page__content-inner>:last-child{margin-bottom:0}
.kw-public-page>.kw-home-hero{height:653px;min-height:653px;max-height:653px}
/* One public hero treatment: page images stay legible without page-level overlays. */
.kw-public-page>.kw-home-hero .kw-hero__picture:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(26,17,13,.3) 0,rgba(26,17,13,0) 24%),linear-gradient(90deg,rgba(255,248,243,.94) 0,rgba(255,248,243,.8) 27%,rgba(255,248,243,.28) 49%,rgba(255,248,243,0) 68%);pointer-events:none}
@media(min-width:761px){
.kw-home-hero--mobile-only{display:none}
}
@media(max-width:760px){
/* Shared clearance below the artwork before a floating card begins. */
/* All public pages share this mobile scene. Canvas: 879px; bar: 1233px; paws clear above 1344px. */
.kw-public-page{--kw-hero-card-buffer:12px;--kw-mobile-hero-unit:calc(100vw / 879);--kw-mobile-hero-bar-y:1233;--kw-mobile-hero-height:calc(1600 * var(--kw-mobile-hero-unit));--kw-mobile-hero-card-top:calc(1344 * var(--kw-mobile-hero-unit) + var(--kw-hero-card-buffer));--kw-mobile-hero-card-overlap:calc(var(--kw-mobile-hero-height) - var(--kw-mobile-hero-card-top))}
.kw-public-page>.kw-home-hero{height:var(--kw-mobile-hero-height);min-height:0;max-height:none;padding:calc(max(84px,152 * var(--kw-mobile-hero-unit)) + var(--kw-safe-top)) 0 0;overflow:hidden;isolation:isolate;background:var(--cream)}
.kw-public-page>.kw-home-hero .kw-hero__picture{position:absolute;z-index:0;inset:calc((var(--kw-mobile-hero-bar-y) - var(--kw-mobile-artwork-bar-y,1233)) * var(--kw-mobile-hero-unit)) 0 auto;width:100%;height:calc(1790 * var(--kw-mobile-hero-unit))}
.kw-public-page>.kw-home-hero .kw-hero__image{width:100%;height:auto;object-fit:cover;object-position:center top}
.kw-public-page>.kw-home-hero .kw-hero__picture:after{background:linear-gradient(180deg,color-mix(in srgb,var(--cream) 55%,transparent),transparent 38%)}
.kw-public-page>.kw-home-hero:after{height:clamp(100px,28vw,200px);bottom:0;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--pink) 12%,transparent) 24%,color-mix(in srgb,var(--pink) 48%,transparent) 58%,color-mix(in srgb,var(--pink) 88%,transparent) 82%,var(--pink));-webkit-mask:none;mask:none}

.kw-public-page>.kw-home-hero .kw-hero__layout{width:89.1%;height:auto}
.kw-public-page>.kw-home-hero .kw-hero__content{position:relative;inset:auto;width:100%;padding:0;border:0;border-radius:0;background:none;text-align:left;transform:none}
.kw-public-page>.kw-home-hero :is(.kw-h1-line,.kw-h1-desktop,.kw-hero__eyebrow,.kw-hero__lead-default,.kw-hero__actions,.kw-google-rating,.kw-quote){display:none}
.kw-public-page>.kw-home-hero :is(.kw-hero__title-mobile,.kw-hero__lead-mobile){display:block}
.kw-public-page>.kw-home-hero .kw-hero__title{margin:0 0 calc(23 * var(--kw-mobile-hero-unit));font-size:min(8.65vw,calc(var(--kw-mobile-hero-title-size) * 1.94));line-height:.98;letter-spacing:-.045em;font-weight:850;overflow-wrap:anywhere}
.kw-public-page>.kw-home-hero .kw-hero__title-mobile strong{display:block;color:var(--pink);font-weight:inherit}
.kw-public-page>.kw-home-hero .kw-hero__lead{max-width:100%;margin:0;font-size:min(3.75vw,calc(var(--kw-mobile-hero-text-size) * 1.56));line-height:1.48}
.kw-public-page>.kw-home-hero .kw-hero__mobile-action{display:flex;width:86%;min-height:44px;margin:calc(32 * var(--kw-mobile-hero-unit)) auto 0;padding:calc(23 * var(--kw-mobile-hero-unit)) 12px;font-size:min(3.64vw,calc(var(--kw-type-button-size) * 1.75));box-shadow:0 12px 30px color-mix(in srgb,var(--pink) 24%,transparent)}
/* Course choices and course facts share one raised, warm surface. Layout stays with each component. */
:is(.kw-home-help .kw-hero-course,.kw-course-page--mobile-layout .kw-course-facts__grid>div){border:1px solid color-mix(in srgb,var(--pink) 18%,var(--line));border-radius:var(--kw-radius-card);background:linear-gradient(145deg,#fff,var(--pink-soft));box-shadow:0 8px 22px color-mix(in srgb,var(--ink) 10%,transparent)}
:is(.kw-home-help .kw-hero-course__media,.kw-course-page--mobile-layout .kw-course-facts__grid .kw-icon){background:var(--pink-soft-2)}
.kw-introgrid{gap:12px}
.kw-public-page__content{padding:44px 0 68px}
.kw-public-page__content-inner{width:min(calc(100% - 32px),900px)}
}
