/* Steffen Kairies — WordPress responsive polish, 2026-10-28 */
:root{--skp-ink:#193d34;--skp-ink-soft:#2f574b;--skp-paper:#f4f6f0;--skp-paper-warm:#f8f6ed;--skp-line:#cad8bc;--skp-lime:#dfeaaf;--skp-body:#405b50;--skp-ease:cubic-bezier(.16,1,.3,1)}
html,body{max-width:100%;overflow-x:clip}
body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(h1,h2,h3,p,a,button,span,strong,li,div){min-width:0}
body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(h1,h2,h3){text-wrap:balance;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none}
body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(p,li,blockquote){overflow-wrap:break-word}

/* Continue the homepage typography and palette across the visible subpages. */
body.page-id-8915{background:var(--skp-paper)!important;color:var(--skp-body)!important;font-family:Arial,Helvetica,sans-serif!important}
body.page-id-8915 :is(.sk-h1,.sk-h2){font-family:"Iowan Old Style",Georgia,"Times New Roman",serif!important;color:var(--skp-ink)!important;letter-spacing:-.04em!important}
body.page-id-8915 .sk-h1{font-size:clamp(3.15rem,6.2vw,5.7rem)!important;line-height:.96!important;max-width:12ch!important}
body.page-id-8915 .sk-h2{font-size:clamp(2.6rem,4.2vw,4.1rem)!important;line-height:1.02!important}
body.page-id-8915 :is(.sk-lead,.sk-body-copy,.sk-hero-callout,.sk-section-copy){font-family:Arial,Helvetica,sans-serif!important;color:var(--skp-body)!important}
body.page-id-8915 .sk-hero-section{background:radial-gradient(circle at 88% 10%,rgba(223,234,175,.20),transparent 40%),radial-gradient(circle at 8% 92%,rgba(25,61,52,.055),transparent 38%),var(--skp-paper)!important}
body.page-id-8915 .sk-portrait-frame{overflow:hidden!important;border-radius:28% 28% 8px 8px!important;box-shadow:0 22px 55px rgba(25,61,52,.10)!important}
body.page-id-8915 .sk-portrait-frame img{animation:skpPortraitBreath 22s ease-in-out infinite alternate;transform-origin:50% 45%;will-change:transform}

body.page-id-8658{background:var(--skp-paper)!important;color:var(--skp-body)!important;font-family:Arial,Helvetica,sans-serif!important}
body.page-id-8658 :is(.sk-hero-title,h2,h3){font-family:"Iowan Old Style",Georgia,"Times New Roman",serif!important;letter-spacing:-.035em!important}
body.page-id-8658 .sk-hero-title{font-size:clamp(3rem,5.4vw,5.35rem)!important;line-height:1.02!important;max-width:15ch!important;margin-inline:auto!important;color:var(--skp-ink)!important}
body.page-id-8658 .sk-hero-title .text-gold-gradient{background:none!important;-webkit-text-fill-color:initial!important;color:#7f6840!important}
body.page-id-8658 .sk-hero-lead{font-family:Arial,Helvetica,sans-serif!important;color:var(--skp-body)!important;max-width:68ch!important}
body.page-id-8658 .sk-hero-steffen-chip{background:rgba(248,246,237,.84)!important;border:1px solid var(--skp-line)!important;box-shadow:0 10px 28px rgba(25,61,52,.07)!important}
body.page-id-8658 .sk-hero-avatar{box-shadow:0 0 0 5px rgba(223,234,175,.18)!important;animation:skpAvatarPulse 5s ease-in-out infinite}

/* One button system: no accidental price wrapping, stable heights, tabular numbers. */
body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(
.sk-about-btn-primary,.sk-about-btn-secondary,.sk-btn-gold,.sk-btn-outline,.sk-hero-video-link,.sk-login-submit-btn,
.sk-btn-primary,.sk-btn-secondary,.single_add_to_cart_button,.checkout-button,.wc-forward,.button.alt,.wp-element-button,.wc-block-components-button
){
  box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.65rem!important;
  max-width:100%!important;min-height:54px!important;height:auto!important;padding:0 1.25rem!important;border-radius:999px!important;
  font-family:Arial,Helvetica,sans-serif!important;font-size:clamp(.72rem,.82vw,.88rem)!important;font-weight:650!important;letter-spacing:.025em!important;line-height:1.08!important;
  text-align:center!important;text-decoration:none!important;white-space:nowrap!important;font-variant-numeric:tabular-nums!important;
  transition:transform .28s var(--skp-ease),box-shadow .28s ease,background-color .28s ease,border-color .28s ease,color .28s ease!important
}
body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(.sk-about-btn-primary,.sk-btn-gold,.sk-login-submit-btn,.sk-btn-primary,.single_add_to_cart_button,.checkout-button,.button.alt,.wc-block-components-button){
  background:var(--skp-ink)!important;background-image:none!important;color:#fff!important;border:1px solid var(--skp-ink)!important;box-shadow:0 10px 25px rgba(25,61,52,.14)!important
}
body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(.sk-about-btn-secondary,.sk-btn-outline,.sk-hero-video-link,.sk-btn-secondary,.wc-forward:not(.checkout-button),.wp-element-button){
  background:rgba(248,246,237,.88)!important;background-image:none!important;color:var(--skp-ink)!important;border:1px solid rgba(25,61,52,.28)!important;box-shadow:0 8px 22px rgba(25,61,52,.055)!important
}
body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(.sk-about-btn-primary,.sk-about-btn-secondary,.sk-btn-gold,.sk-btn-outline,.sk-hero-video-link,.sk-login-submit-btn,.sk-btn-primary,.sk-btn-secondary,.single_add_to_cart_button,.checkout-button,.wc-forward,.button.alt,.wp-element-button,.wc-block-components-button):hover{
  transform:translateY(-2px)!important;box-shadow:0 15px 32px rgba(25,61,52,.17)!important
}
body.page-id-8915 :is(.sk-hero-actions,.sk-closing-actions){gap:12px!important}
body.page-id-8915 .sk-coaching-offer-price-card .sk-about-btn-primary{width:100%!important;min-height:56px!important}
body.page-id-8658 .sk-hero-ctas{gap:12px!important;align-items:stretch!important}
body.page-id-8658 .sk-hero-video-link{min-height:48px!important}
body.page-id-8658 .sk-buy-cta-wrap .sk-btn-gold{width:100%!important;min-height:58px!important;padding-inline:18px!important}
body.single-product .single_add_to_cart_button{width:100%!important}

/* Shop archive: preserve its editorial card system but bring buttons and typography home. */
body.woocommerce-shop #sk-master-wrapper{font-family:Arial,Helvetica,sans-serif!important;background:var(--skp-paper)!important;color:var(--skp-body)!important}
body.woocommerce-shop #sk-master-wrapper :is(h1,h2,h3,.sk-card-title){font-family:"Iowan Old Style",Georgia,"Times New Roman",serif!important;color:var(--skp-ink)!important;letter-spacing:-.035em!important}
body.woocommerce-shop #sk-master-wrapper :is(.sk-shop-container,.sk-card,.sk-featured-card){min-width:0!important;max-width:100%!important}
body.woocommerce-shop #sk-master-wrapper :is(.sk-btn-primary,.sk-btn-secondary){width:100%!important;min-height:56px!important;padding-inline:18px!important}
body.woocommerce-shop #sk-master-wrapper .sk-btn-primary{background:var(--skp-ink)!important;color:#fff!important}
body.woocommerce-shop #sk-master-wrapper .sk-btn-secondary{background:rgba(248,246,237,.72)!important;color:var(--skp-ink)!important;border-color:rgba(25,61,52,.26)!important}
body.woocommerce-shop #sk-master-wrapper :is(.sk-price-main,.sk-price-note){font-variant-numeric:tabular-nums!important}

/* Defensive responsive geometry. */
body.page-id-8915 :is(.sk-container,.sk-hero-grid,.sk-story-grid,.sk-work-grid,.sk-coaching-offer-grid,.sk-certs-grid),
body.page-id-8658 :is(.sk-hero-wrap,.sk-section-inner,.sk-modules-grid,.sk-tools-grid),
body.woocommerce-shop #sk-master-wrapper :is(.sk-shop-container,.sk-cards-grid){max-width:100%!important}
@media(max-width:699px){
  body.page-id-8915 .sk-hero-section{padding-top:42px!important;padding-bottom:64px!important}
  body.page-id-8915 .sk-h1{font-size:clamp(2.65rem,13vw,3.75rem)!important;max-width:11.5ch!important}
  body.page-id-8915 .sk-h2{font-size:clamp(2.15rem,10.5vw,3.1rem)!important;line-height:1.02!important}
  body.page-id-8915 .sk-portrait-frame{border-radius:22px 22px 6px 6px!important}
  body.page-id-8915 :is(.sk-hero-actions,.sk-closing-actions){display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  body.page-id-8915 :is(.sk-about-btn-primary,.sk-about-btn-secondary){width:100%!important}
  body.page-id-8658 .sk-hero-title{font-size:clamp(2.45rem,11.6vw,3.55rem)!important;line-height:1.02!important;max-width:12.5ch!important}
  body.page-id-8658 .sk-hero-lead{font-size:.94rem!important;line-height:1.62!important}
  body.page-id-8658 .sk-hero-ctas{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  body.page-id-8658 :is(.sk-btn-gold,.sk-btn-outline,.sk-hero-video-link,.sk-login-submit-btn){width:100%!important}
  body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(.sk-about-btn-primary,.sk-about-btn-secondary,.sk-btn-gold,.sk-btn-outline,.sk-hero-video-link,.sk-login-submit-btn,.sk-btn-primary,.sk-btn-secondary,.single_add_to_cart_button,.checkout-button,.wc-forward,.button.alt,.wp-element-button,.wc-block-components-button){
    padding-inline:clamp(12px,4vw,18px)!important;font-size:clamp(.68rem,3.1vw,.79rem)!important;letter-spacing:.015em!important
  }
  body.woocommerce-shop #sk-master-wrapper :is(.sk-btn-primary,.sk-btn-secondary){min-height:54px!important}
}
@media(max-width:359px){
  body:is(.page-id-8915,.page-id-8658,.woocommerce-shop,.single-product,.woocommerce-cart,.woocommerce-checkout) :is(.sk-about-btn-primary,.sk-about-btn-secondary,.sk-btn-gold,.sk-btn-outline,.sk-hero-video-link,.sk-login-submit-btn,.sk-btn-primary,.sk-btn-secondary,.single_add_to_cart_button,.checkout-button,.wc-forward,.button.alt,.wp-element-button,.wc-block-components-button){font-size:.65rem!important;padding-inline:10px!important}
}
@media(min-width:1600px){
  body.page-id-8915 .sk-container{max-width:1320px!important}
  body.page-id-8658 .sk-hero-wrap{max-width:1120px!important}
}
@keyframes skpPortraitBreath{from{transform:scale(1.015) translate3d(0,0,0)}to{transform:scale(1.045) translate3d(-.35%,.18%,0)}}
@keyframes skpAvatarPulse{0%,100%{box-shadow:0 0 0 5px rgba(223,234,175,.16)}50%{box-shadow:0 0 0 9px rgba(223,234,175,.05)}}
@media(prefers-reduced-motion:reduce){body.page-id-8915 .sk-portrait-frame img,body.page-id-8658 .sk-hero-avatar{animation:none!important}}

/* WooCommerce adds a clearfix wrapper around gallery + summary on this theme.
   Make that wrapper the actual responsive product grid. */
body.single-product div.product>.clearfix{
  grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(34px,5vw,76px)!important;align-items:start!important;width:100%!important;max-width:100%!important
}
body.single-product div.product>.clearfix>.woocommerce-product-gallery,
body.single-product div.product>.clearfix>.summary{float:none!important;width:100%!important;max-width:100%!important;margin:0!important}
body.single-product div.product>.clearfix>.summary{padding:clamp(8px,1.2vw,18px) 0!important}
body.single-product .sk-product-ust-notice{color:#6b7c74!important;margin-top:-8px!important;margin-bottom:18px!important;line-height:1.55!important}
body.single-product form.cart{width:100%!important}
body.single-product form.cart .single_add_to_cart_button{width:100%!important;min-height:54px!important}
body.page-id-8658 #page-container :is(.sk-hero-title,h2,h3){font-family:"Iowan Old Style",Georgia,"Times New Roman",serif!important}
@media(max-width:760px){
  body.single-product div.product>.clearfix{grid-template-columns:minmax(0,1fr)!important;gap:26px!important}
  body.single-product div.product>.clearfix>.summary{padding-top:0!important}
}
