/* Kozy Haven reusable SEO / event landing pages. */
.kh-seo-landing{background:var(--kh-surface,#fbf8f2);color:var(--kh-text,#20251f)}
.kh-seo-hero{position:relative;min-height:clamp(440px,62vh,690px);display:grid;align-items:end;overflow:hidden;background:#1f4338;color:#fff}
.kh-seo-hero__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.kh-seo-hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,20,17,.18) 12%,rgba(12,20,17,.42) 52%,rgba(12,20,17,.76) 100%)}
.kh-seo-hero__content{position:relative;z-index:1;padding-top:150px;padding-bottom:clamp(48px,7vw,82px);max-width:none}
.kh-seo-hero__content h1{max-width:920px;margin:.15em 0 .28em;font-size:clamp(2.5rem,6vw,5.4rem);line-height:.98;color:inherit}
.kh-seo-hero__content>p:not(.kh-site-eyebrow){max-width:700px;font-size:clamp(1rem,2vw,1.22rem);line-height:1.65;color:rgba(255,255,255,.9)}
.kh-seo-hero--plain{min-height:auto;color:var(--kh-text,#20251f);background:#efe9de}
.kh-seo-hero--plain .kh-seo-hero__content{padding-top:150px;padding-bottom:68px}
.kh-seo-hero--plain .kh-site-eyebrow{color:var(--kh-green,#1f4338)}
.kh-seo-hero__cta{display:inline-flex;margin-top:20px;background:#fff!important;color:#1f4338!important;border-color:#fff!important}
.kh-seo-event-summary{background:#fff;border-bottom:1px solid rgba(31,67,56,.12)}
.kh-seo-event-summary__inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:24px;align-items:center;padding-top:24px;padding-bottom:24px}
.kh-seo-event-summary__inner div{display:grid;gap:3px}
.kh-seo-event-summary__inner span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#6e756e}
.kh-seo-event-summary__inner strong{font-size:1rem;color:#1d261f}
.kh-seo-event-summary__inner small{color:#71766f}
.kh-seo-event-summary__inner>a{justify-self:end;font-weight:800;color:#1f4338;text-decoration:none}
.kh-seo-section{padding:clamp(54px,8vw,96px) 0}
.kh-seo-content{max-width:900px}
.kh-seo-content>*:first-child{margin-top:0}
.kh-seo-content h2{margin:1.8em 0 .45em;font-size:clamp(1.8rem,3.4vw,3rem);line-height:1.05}
.kh-seo-content h3{margin:1.5em 0 .4em;font-size:clamp(1.35rem,2vw,1.85rem)}
.kh-seo-content p,.kh-seo-content li{font-size:1.05rem;line-height:1.8;color:#4f574f}
.kh-seo-content a{color:#1f4338;font-weight:700;text-underline-offset:3px}
.kh-seo-content img{max-width:100%;height:auto;border-radius:18px}
.kh-seo-cabins{background:#f1ece3;border-top:1px solid rgba(31,67,56,.1);border-bottom:1px solid rgba(31,67,56,.1)}
.kh-seo-section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}
.kh-seo-section-heading h2{margin:.15em 0;font-size:clamp(2rem,4vw,3.5rem)}
.kh-seo-section-heading p{max-width:640px;color:#636a63}
.kh-seo-section-heading>a{white-space:nowrap;color:#1f4338;font-weight:800;text-decoration:none}
.kh-seo-cabin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.kh-seo-cabin-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid rgba(31,67,56,.14);border-radius:18px;box-shadow:0 10px 34px rgba(27,39,32,.06)}
.kh-seo-cabin-card__image{display:block;aspect-ratio:4/3;background:#e8e8e4;overflow:hidden}
.kh-seo-cabin-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.kh-seo-cabin-card:hover .kh-seo-cabin-card__image img{transform:scale(1.025)}
.kh-seo-cabin-card__body{display:flex;flex:1;flex-direction:column;padding:18px 18px 20px}
.kh-seo-cabin-card h3{margin:0 0 10px;font-size:1.25rem;line-height:1.14}
.kh-seo-cabin-card h3 a{color:inherit;text-decoration:none}
.kh-seo-cabin-card p{margin:0 0 18px;color:#687068}
.kh-seo-card-link{margin-top:auto;color:#1f4338;font-weight:800;text-decoration:none}
.kh-seo-cta{padding:clamp(54px,8vw,88px) 0;background:#1f4338;color:#fff}
.kh-seo-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:34px}
.kh-seo-cta .kh-site-kicker{color:#d7c9aa}
.kh-seo-cta h2{margin:.12em 0 .28em;color:#fff;font-size:clamp(2rem,4vw,3.5rem)}
.kh-seo-cta p{margin:0;max-width:650px;color:rgba(255,255,255,.82)}
.kh-seo-cta .kh-site-button{flex:0 0 auto;background:#fff;color:#1f4338;border-color:#fff}
@media(max-width:980px){.kh-seo-cabin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kh-seo-event-summary__inner{grid-template-columns:1fr 1fr}.kh-seo-event-summary__inner>a{grid-column:1/-1;justify-self:start}.kh-seo-cta__inner{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.kh-seo-hero{min-height:500px}.kh-seo-hero__content{padding-top:120px;padding-bottom:40px}.kh-seo-hero--plain .kh-seo-hero__content{padding-top:120px;padding-bottom:46px}.kh-seo-event-summary__inner{grid-template-columns:1fr;gap:16px}.kh-seo-event-summary__inner>a{grid-column:auto}.kh-seo-section{padding:48px 0}.kh-seo-section-heading{align-items:flex-start;flex-direction:column}.kh-seo-cabin-grid{grid-template-columns:1fr}.kh-seo-content p,.kh-seo-content li{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.kh-seo-cabin-card__image img{transition:none}}


/* v1.0.9 conversion-focused SEO landing actions */
.kh-seo-hero__actions,.kh-seo-cta__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.kh-seo-hero__actions{margin-top:24px}
.kh-seo-hero__actions .kh-site-button{margin-top:0}
.kh-seo-cta__actions{justify-content:flex-end}
.kh-seo-cta__actions .kh-site-button:not(.kh-site-button--secondary){background:#fff!important;color:#1f4338!important;border-color:#fff!important}
.kh-seo-landing .kh-site-button--secondary{background:transparent!important;color:var(--kh-deep)!important;border-color:rgba(47,59,49,.32)!important}
.kh-seo-hero .kh-site-button--secondary{color:#fff!important;border-color:rgba(255,255,255,.72)!important;background:rgba(0,0,0,.08)!important}
.kh-seo-cta .kh-site-button--secondary{color:#fff!important;border-color:rgba(255,255,255,.58)!important;background:transparent!important}
@media(max-width:700px){.kh-seo-hero__actions,.kh-seo-cta__actions{display:grid;width:100%;justify-content:stretch}.kh-seo-hero__actions .kh-site-button,.kh-seo-cta__actions .kh-site-button{width:100%;max-width:420px}.kh-seo-cta__actions{margin-top:20px}}
