

.jh-landing,.jh-landing *{box-sizing:border-box}
.jh-landing{--jh-bg:none;position:relative!important;left:auto!important;min-height:100vh!important;width:100vw!important;max-width:none!important;margin-top:0!important;margin-right:calc(50% - 50vw)!important;margin-bottom:0!important;margin-left:calc(50% - 50vw)!important;padding:22px 18px 70px!important;background-color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;color:#17191b!important;font-size:16px!important;line-height:1.4!important;overflow:hidden!important}
.jh-landing .jh-card{position:relative!important;z-index:2!important;width:min(510px,100%)!important;max-width:510px!important;margin:0 auto!important;padding:0!important;text-align:center!important}
.jh-landing .jh-photo{display:block!important;width:230px!important;height:230px!important;max-width:62vw!important;max-height:62vw!important;object-fit:cover!important;border-radius:36%!important;margin:0 auto 15px!important;box-shadow:0 7px 24px rgba(0,0,0,.07)!important}
.jh-landing .jh-placeholder{background:#eee!important;display:grid!important;place-items:center!important;font-size:48px!important;color:#555!important}
.jh-landing .jh-card h1{font-family:Arial,Helvetica,sans-serif!important;font-size:38px!important;line-height:1.08!important;margin:0 0 8px!important;padding:0!important;font-weight:700!important;letter-spacing:-.7px!important;color:#17191b!important;text-transform:none!important}
.jh-landing .jh-title{font-family:Arial,Helvetica,sans-serif!important;font-size:20px!important;line-height:1.3!important;font-weight:400!important;letter-spacing:0!important;color:#17191b!important;margin:0 0 14px!important;padding:0!important}
.jh-landing .jh-socials{display:flex!important;justify-content:center!important;align-items:center!important;gap:20px!important;margin:8px 0 20px!important;padding:0!important}
.jh-landing .jh-socials a{color:#3e3e3e!important;text-decoration:none!important;border:0!important;box-shadow:none!important}
.jh-landing .jh-social-icon{display:grid!important;place-items:center!important;width:26px!important;height:26px!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:700!important;font-size:21px!important;line-height:1!important}
.jh-landing .jh-facebook{border-radius:50%!important;background:#444!important;color:#fff!important;font-size:19px!important}
.jh-landing .jh-youtube{font-size:18px!important}.jh-landing .jh-email{font-size:22px!important}.jh-landing .jh-instagram{font-size:29px!important;font-weight:400!important}
.jh-landing .jh-buttons{display:grid!important;gap:11px!important;margin:0!important;padding:0!important}
.jh-landing .jh-button{width:100%!important;height:64px!important;min-height:64px!important;border:0!important;border-radius:999px!important;background:linear-gradient(100deg,#484848,#333)!important;color:#fff!important;text-decoration:none!important;display:grid!important;grid-template-columns:54px 1fr 30px!important;align-items:center!important;text-align:left!important;padding:0 20px!important;margin:0!important;box-shadow:0 4px 12px rgba(0,0,0,.07)!important;font-family:Arial,Helvetica,sans-serif!important;line-height:1!important;transition:transform .15s ease,filter .15s ease!important}
.jh-landing .jh-button:hover{transform:translateY(-1px)!important;filter:brightness(1.08)!important;color:#fff!important}
.jh-landing .jh-bi{display:grid!important;place-items:center!important}
.jh-landing .jh-bi svg{display:block!important;width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.6!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.jh-landing .jh-label{font-family:Arial,Helvetica,sans-serif!important;font-size:19px!important;line-height:1!important;font-weight:600!important;letter-spacing:0!important;color:#fff!important;text-transform:none!important}
.jh-landing .jh-arrow{font-family:Arial,Helvetica,sans-serif!important;font-size:34px!important;font-weight:200!important;text-align:right!important;line-height:1!important;color:#fff!important}
@media(max-width:600px){
 .jh-landing{padding:18px 14px 60px!important}
 .jh-landing .jh-card{max-width:460px!important}
 .jh-landing .jh-photo{width:190px!important;height:190px!important;margin-bottom:13px!important}
 .jh-landing .jh-card h1{font-size:32px!important}
 .jh-landing .jh-title{font-size:18px!important}
 .jh-landing .jh-socials{margin-bottom:17px!important;gap:18px!important}
 .jh-landing .jh-button{height:60px!important;min-height:60px!important;grid-template-columns:48px 1fr 26px!important;padding:0 18px!important}
 .jh-landing .jh-label{font-size:18px!important}
 .jh-landing .jh-bi svg{width:23px!important;height:23px!important}
 .jh-landing .jh-buttons{gap:10px!important}
}

@media(max-width:600px){
  }


/* v2.0: remove theme/page-wrapper whitespace above the landing experience */
body:has(.jh-landing) .wp-site-blocks,
body:has(.jh-landing) main,
body:has(.jh-landing) .site-main,
body:has(.jh-landing) .entry-content,
body:has(.jh-landing) .wp-block-post-content{
    margin-top:0!important;
    padding-top:0!important;
}
body:has(.jh-landing) .entry-content > .jh-landing,
body:has(.jh-landing) .wp-block-post-content > .jh-landing{
    margin-top:0!important;
}


/* v2.3: full-bleed homepage when the landing shortcode is present.
   These rules only activate on a page that actually contains .jh-landing. */
html:has(.jh-landing),
body:has(.jh-landing){
    margin:0!important;
    padding:0!important;
    overflow-x:hidden!important;
}

body:has(.jh-landing) .wp-site-blocks{
    margin:0!important;
    padding:0!important;
    max-width:none!important;
    width:100%!important;
}

body:has(.jh-landing) .wp-block-post-content,
body:has(.jh-landing) .entry-content,
body:has(.jh-landing) main,
body:has(.jh-landing) .site-main{
    margin:0!important;
    padding:0!important;
    max-width:none!important;
    width:100%!important;
}

body:has(.jh-landing) .wp-block-post-content > .jh-landing,
body:has(.jh-landing) .entry-content > .jh-landing{
    margin-top:0!important;
    margin-bottom:0!important;
}

/* Remove WordPress block-gap space before/after the one-block landing template. */
body:has(.jh-landing) .wp-site-blocks > *,
body:has(.jh-landing) .wp-block-post-content > *{
    margin-block-start:0!important;
    margin-block-end:0!important;
}

/* v2.4 corrects the horizontal full-bleed calculation without shifting the landing element. */


/* v2.6 — remove theme-generated space after the landing page.
   The landing layout itself is intentionally unchanged. */
body:has(.jh-landing) .wp-site-blocks,
body:has(.jh-landing) main,
body:has(.jh-landing) .site-main,
body:has(.jh-landing) article,
body:has(.jh-landing) .wp-block-post-content,
body:has(.jh-landing) .entry-content{
    padding-bottom:0!important;
    margin-bottom:0!important;
}

/* Twenty Twenty-Three and block themes can leave block-gap after post content. */
body:has(.jh-landing) .wp-site-blocks > *,
body:has(.jh-landing) article > *,
body:has(.jh-landing) .wp-block-post-content > *,
body:has(.jh-landing) .entry-content > *{
    margin-block-end:0!important;
}

/* If the theme creates an empty footer/template-part after this dedicated
   landing page, collapse it on this page only. */
body:has(.jh-landing) footer.wp-block-template-part:empty,
body:has(.jh-landing) .wp-site-blocks > footer:empty{
    display:none!important;
    margin:0!important;
    padding:0!important;
}


/* v2.7 — keep the background behind the final button instead of allowing
   the theme canvas to show immediately after the shortcode. This changes
   only the landing page's internal bottom breathing room. */
.jh-landing .jh-buttons{
    padding-bottom:72px!important;
}

@media(max-width:600px){
    .jh-landing .jh-buttons{
        padding-bottom:54px!important;
    }
}


/* v2.8 — dedicated root-domain canvas.
   The plugin now renders the public homepage outside the theme template. */
html:has(body.jh-standalone-home),
body.jh-standalone-home{
    margin:0!important;
    padding:0!important;
    width:100%!important;
    min-height:100%!important;
    background:#fff!important;
    overflow-x:hidden!important;
}
body.jh-standalone-home .jh-landing{
    left:auto!important;
    width:100%!important;
    max-width:none!important;
    min-height:100vh!important;
    margin:0!important;
}
body.jh-standalone-home #wpadminbar{
    position:fixed!important;
}
