/*
Theme Name: JOK Consultancy
Theme URI: https://jokconsultancy.com
Author: JOK Consultancy
Description: Editable block theme for JOK Consultancy, its consulting services, digital resources and event landing pages.
Version: 2.6.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: jok-consultancy
*/

@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=League+Spartan:wght@700;800&family=Manrope:wght@400;500;600;700&display=swap');

:root{--jok-ink:#171016;--jok-paper:#fff9f5;--jok-blush:#fceaf2;--jok-pink:#f725a8;--jok-orange:#ff6b35;--jok-coral:#f8576f;--jok-berry:#49152f;--jok-muted:#6c6269;--jok-line:rgba(23,16,22,.17)}
html{scroll-behavior:smooth}body{overflow-x:hidden}.wp-site-blocks{overflow:hidden}.jok-uppercase{text-transform:uppercase}.jok-display{font-family:'League Spartan',sans-serif!important;font-weight:800!important;line-height:.9!important;letter-spacing:-.04em;text-transform:uppercase}.jok-editorial{font-family:'Instrument Serif',serif!important;font-style:italic}.jok-eyebrow{font-size:.75rem!important;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.jok-gradient{background:linear-gradient(100deg,var(--jok-pink),var(--jok-orange))}.jok-card{height:100%;border:1px solid var(--jok-line)}.jok-card-dark{background:var(--jok-berry);color:#fff}.jok-button .wp-block-button__link{transition:transform .2s,box-shadow .2s}.jok-button .wp-block-button__link:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(23,16,22,.18)}.jok-rule{border-top:1px solid var(--jok-line)}.jok-event-title{font-family:'League Spartan',sans-serif!important;font-size:clamp(2.4rem,5vw,4.25rem)!important;font-weight:800!important;line-height:.9!important;letter-spacing:-.03em;text-transform:uppercase;color:var(--jok-pink)}details.jok-accordion{border-top:1px solid currentColor;border-bottom:1px solid currentColor;padding:.9rem 0}details.jok-accordion summary{cursor:pointer;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.jok-site-header{border-bottom:1px solid var(--jok-line)}.jok-nav a{text-decoration:none}.jok-nav a:hover{color:var(--jok-pink)}
@media(max-width:781px){.jok-desktop-row{display:block!important}.jok-display{letter-spacing:-.025em}.jok-stack-mobile{gap:1.25rem!important}}

.jok-nav-cta{border:1px solid var(--jok-ink);padding:.65rem .9rem}.jok-page{margin:0}.jok-hero{padding:clamp(4rem,7vw,7rem) 5vw;min-height:680px;display:grid;grid-template-columns:1.12fr .88fr;gap:6vw;align-items:center;background:var(--jok-paper)}.jok-hero h1{font-family:'League Spartan',sans-serif;font-size:clamp(3.6rem,6.5vw,6.5rem);font-weight:800;line-height:.86;letter-spacing:-.045em;text-transform:uppercase;margin:0}.jok-hero h1 em{display:block;color:var(--jok-pink);font-family:'Instrument Serif',serif;font-weight:400;text-transform:none;letter-spacing:-.01em}.jok-lead{font-size:1.06rem;line-height:1.75;color:var(--jok-muted);max-width:650px}.jok-actions{display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap;margin-top:2rem}.jok-action{display:inline-block;background:var(--jok-ink);color:#fff;padding:1rem 1.35rem;font-size:.78rem;font-weight:700;text-decoration:none}.jok-text-link{font-size:.78rem;font-weight:700;border-bottom:1px solid;padding:.45rem 0}.jok-hero-photo{min-height:530px;position:relative}.jok-hero-photo img{width:100%;height:530px;object-fit:cover;object-position:center top}.jok-note{position:absolute;left:-2rem;bottom:-1.2rem;background:var(--jok-pink);color:#fff;padding:1.2rem;width:240px;font-family:'Instrument Serif',serif;font-style:italic;font-size:1.25rem}.jok-strip{padding:2rem 5vw;color:#fff;background:linear-gradient(100deg,var(--jok-pink),var(--jok-orange));display:grid;grid-template-columns:1fr 2fr;gap:2rem;align-items:center}.jok-strip strong{font-family:'League Spartan',sans-serif;text-transform:uppercase;font-size:1.5rem}.jok-section{padding:clamp(4.5rem,8vw,7rem) 5vw}.jok-section.blush{background:var(--jok-blush)}.jok-section.berry{background:var(--jok-berry);color:#fff}.jok-section.ink{background:var(--jok-ink);color:#fff}.jok-section h2{font-family:'League Spartan',sans-serif;font-size:clamp(2.6rem,5vw,4.5rem);line-height:.94;letter-spacing:-.035em;text-transform:uppercase;margin:.4rem 0 1.5rem}.jok-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.jok-card{padding:1.8rem;min-height:320px;display:flex;flex-direction:column}.jok-card h3{font-family:'League Spartan',sans-serif;text-transform:uppercase;font-size:1.75rem;line-height:1;margin:2.5rem 0 1rem}.jok-card p{color:var(--jok-muted);line-height:1.7}.jok-card.berry{background:var(--jok-berry);color:#fff}.jok-card.berry p{color:#e5d8df}.jok-number{color:var(--jok-pink);font-size:.75rem}.jok-price{font-family:'League Spartan',sans-serif;font-size:3.4rem;font-weight:800;margin-top:auto}.jok-page-hero{padding:clamp(4rem,7vw,6rem) 5vw;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.jok-page-hero h1{font-family:'League Spartan',sans-serif;font-size:clamp(3.3rem,6vw,5.7rem);line-height:.88;letter-spacing:-.045em;text-transform:uppercase;margin:0}.jok-page-image{height:480px;object-fit:cover}.jok-split{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.jok-list{border-top:1px solid currentColor}.jok-list p{padding:1rem 0;margin:0;border-bottom:1px solid var(--jok-line)}.jok-accordion-list details{border-top:1px solid var(--jok-line)}.jok-accordion-list details:last-child{border-bottom:1px solid var(--jok-line)}.jok-accordion-list summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 2rem;gap:1rem;align-items:center;padding:1.3rem 0;cursor:pointer}.jok-accordion-list summary::-webkit-details-marker{display:none}.jok-accordion-list summary strong{font-family:'League Spartan',sans-serif;font-size:1.35rem;text-transform:uppercase}.jok-accordion-list summary i{font-style:normal;font-size:1.5rem}.jok-accordion-list details[open] summary i{transform:rotate(45deg)}.jok-accordion-content{padding:0 0 1.5rem;max-width:850px;color:var(--jok-muted);line-height:1.7}.jok-contact{padding:clamp(4.5rem,8vw,7rem) 5vw;background:var(--jok-berry);color:#fff}.jok-contact a{color:#fff}.jok-placeholder-form{border:1px solid rgba(255,255,255,.45);padding:1.5rem;margin-top:2rem}.jok-placeholder-form p{color:#ded0d9}.jok-event-title{font-size:clamp(3rem,6vw,5.5rem)!important}.jok-product-cover{min-height:350px;background:linear-gradient(145deg,var(--jok-pink),var(--jok-coral));color:#fff;padding:2rem;display:flex;flex-direction:column}.jok-product-cover strong{font-family:'League Spartan',sans-serif;font-size:2.5rem;line-height:.9;text-transform:uppercase;margin:auto 0 1rem}.jok-product-cover.berry{background:linear-gradient(145deg,var(--jok-berry),#7e204f)}.jok-product-cover.orange{background:linear-gradient(145deg,var(--jok-orange),var(--jok-coral))}
@media(max-width:820px){.jok-hero,.jok-page-hero,.jok-split{grid-template-columns:1fr}.jok-grid-3{grid-template-columns:1fr}.jok-hero{padding-top:4rem}.jok-hero-photo{min-height:400px}.jok-hero-photo img{height:400px}.jok-strip{grid-template-columns:1fr}.jok-note{left:1rem}.jok-site-header{padding-left:6vw!important;padding-right:6vw!important}}

/* Consolidated customer, commerce and enquiry experience */
.jok-site-header{position:relative;z-index:20;background:var(--jok-paper)}
.jok-site-header .wp-block-site-title a{font-family:'League Spartan',sans-serif;font-weight:800;letter-spacing:-.055em;text-decoration:none}
.jok-contact-page{min-height:72vh}.jok-contact-page h1{font-size:clamp(3.2rem,6vw,5.8rem)!important}.jok-contact-page h2{font-family:'League Spartan',sans-serif;font-size:clamp(2rem,3.5vw,3.25rem);line-height:.95;text-transform:uppercase;margin:0 0 .75rem}
.jok-contact-details{display:flex;flex-direction:column;gap:.65rem;margin-top:2rem;color:#e7dce3}.jok-contact-details a{font-size:1.2rem;font-weight:700}
.jok-form-panel{padding:0 5vw 6rem!important;background:var(--jok-berry);color:#fff}.jok-form-panel>.wp-block-shortcode{max-width:820px!important;margin:0 auto!important}.jok-event-form-panel{padding-top:1rem!important}
.jok-proof{display:flex;gap:2.5rem;margin-top:3rem;padding-top:1.25rem;border-top:1px solid var(--jok-line)}.jok-proof div{display:flex;flex-direction:column}.jok-proof strong{font-family:'League Spartan',sans-serif;font-size:2rem}.jok-proof span{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.jok-visual-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center}.jok-image-stack{min-height:560px;display:grid;grid-template-columns:1.35fr .75fr;gap:1rem;align-items:end}.jok-image-stack img{width:100%;height:72%;object-fit:cover}.jok-image-stack img:first-child{height:100%}.jok-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.jok-grid-4 .jok-card{min-height:360px}.jok-grid-4 .jok-card a{margin-top:auto;font-weight:700}
.jok-enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:1.15rem;margin-top:1.5rem}.jok-enquiry-form label{display:flex;flex-direction:column;gap:.45rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.jok-enquiry-form .full-field,.jok-enquiry-form button{grid-column:1/-1}.jok-enquiry-form input,.jok-enquiry-form select,.jok-enquiry-form textarea{width:100%;padding:.8rem .15rem;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;color:inherit;font:inherit;font-size:.9rem;text-transform:none;letter-spacing:0}.jok-enquiry-form textarea{padding:.8rem;border:1px solid currentColor;resize:vertical}.jok-enquiry-form select option{color:var(--jok-ink)}.jok-enquiry-form .jok-consent{display:grid;grid-template-columns:auto 1fr;align-items:start;text-transform:none;letter-spacing:0;font-weight:400;line-height:1.5}.jok-consent input{width:auto;margin:.25rem .45rem 0 0}.jok-honeypot{position:absolute!important;left:-9999px!important}.jok-enquiry-form button{border:0;cursor:pointer;justify-self:start}.jok-form-notice{padding:1rem 1.15rem;margin:1rem 0;border:1px solid currentColor}.jok-form-notice.success{background:#e8f7ee;color:#164b2d}.jok-form-notice.error{background:#fff0f0;color:#7a1d1d}
.woocommerce div.product{padding:clamp(2.5rem,6vw,5rem) 5vw}.woocommerce div.product .product_title{font-family:'League Spartan',sans-serif;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.92;text-transform:uppercase}.woocommerce div.product p.price{font-family:'League Spartan',sans-serif;font-size:2.8rem;color:var(--jok-ink)}.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{border-radius:0!important;background:var(--jok-ink)!important;color:#fff!important;padding:1rem 1.25rem!important}.woocommerce-info,.woocommerce-message{border-top-color:var(--jok-pink)}.woocommerce-info:before,.woocommerce-message:before{color:var(--jok-pink)}
.jok-customer-tools{padding:1rem 0 3rem}.jok-customer-tools>h2{font-family:'League Spartan',sans-serif;font-size:clamp(2.2rem,4vw,3.7rem);line-height:.95;text-transform:uppercase}.jok-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.jok-tool-grid article{border:1px solid var(--jok-line);padding:1.75rem;min-height:230px;display:flex;flex-direction:column}.jok-tool-grid h3{font-family:'League Spartan',sans-serif;font-size:1.45rem;line-height:1;text-transform:uppercase}.jok-tool-grid a{margin-top:auto;background:var(--jok-ink);color:#fff;padding:.9rem 1rem;width:max-content;text-decoration:none;font-weight:700}
@media(max-width:1050px){.jok-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.jok-visual-intro{grid-template-columns:1fr}.jok-image-stack{min-height:480px}}
@media(max-width:700px){.jok-enquiry-form,.jok-tool-grid,.jok-grid-4{grid-template-columns:1fr}.jok-enquiry-form label,.jok-enquiry-form button{grid-column:1}.jok-contact-page{padding-left:6vw;padding-right:6vw}.woocommerce div.product{padding-left:6vw;padding-right:6vw}.jok-proof{gap:1rem;justify-content:space-between}.jok-image-stack{min-height:0;grid-template-columns:1fr}.jok-image-stack img,.jok-image-stack img:first-child{height:320px}}

/* v1.3 visual refinement */
body{font-size:17px;background:var(--jok-paper)}
.jok-site-header{min-height:96px;flex-wrap:nowrap!important;gap:2rem}
.jok-site-header .wp-block-site-title{white-space:nowrap;margin:0}
.jok-site-header .wp-block-site-title a{font-size:clamp(1.75rem,2.1vw,2.35rem)}
.jok-site-header .wp-block-navigation{font-size:.96rem;font-weight:600}
.jok-site-header .wp-block-navigation__container{gap:clamp(1rem,1.8vw,2rem)}
.jok-nav-cta{padding:.8rem 1.15rem}
.jok-hero,.jok-page-hero,.jok-section>*,.jok-contact>*{max-width:1440px;margin-left:auto;margin-right:auto}
.jok-hero{min-height:720px;padding-left:max(5vw,calc((100vw - 1440px)/2));padding-right:max(5vw,calc((100vw - 1440px)/2))}
.jok-hero h1{font-size:clamp(4.5rem,6.6vw,7.2rem)}
.jok-lead{font-size:1.12rem;line-height:1.72}
.jok-action{padding:1.05rem 1.5rem;font-size:.84rem;letter-spacing:.01em}
.jok-strip{padding-left:max(5vw,calc((100vw - 1440px)/2));padding-right:max(5vw,calc((100vw - 1440px)/2))}
.jok-strip strong{font-size:1.75rem}.jok-strip span{font-size:1.02rem}
.jok-section{padding-left:max(5vw,calc((100vw - 1440px)/2));padding-right:max(5vw,calc((100vw - 1440px)/2))}
.jok-section h2{max-width:1050px;font-size:clamp(3.2rem,5vw,5.25rem)}
.jok-grid-3,.jok-grid-4{gap:1.5rem}
.jok-card{padding:2.15rem;min-height:390px;border-top:5px solid var(--jok-pink);box-shadow:0 12px 36px rgba(73,21,47,.05)}
.jok-card h3{font-size:2rem;margin-top:2.1rem}.jok-card p{font-size:1rem}.jok-card .jok-action{width:100%;box-sizing:border-box;text-align:center;margin-top:1.25rem}
.jok-card.berry{border-color:var(--jok-orange);box-shadow:0 18px 45px rgba(73,21,47,.18)}
.jok-page-hero{min-height:600px;padding-left:max(5vw,calc((100vw - 1440px)/2));padding-right:max(5vw,calc((100vw - 1440px)/2))}
.jok-page-hero h1{font-size:clamp(4rem,6vw,6.5rem)}
.jok-accordion-list summary{padding:1.55rem 0}.jok-accordion-list summary strong{font-size:1.55rem}.jok-accordion-list summary b{font-size:1.15rem}
.jok-contact{padding-left:max(5vw,calc((100vw - 1440px)/2));padding-right:max(5vw,calc((100vw - 1440px)/2))}
.jok-contact-page{padding-bottom:3.5rem;min-height:auto}.jok-contact-page .jok-split{align-items:end}
.jok-contact-page h1{max-width:800px}.jok-contact-page .jok-lead{color:#eadde5}
.jok-form-panel{padding:0 max(5vw,calc((100vw - 1440px)/2)) 7rem!important}
.jok-form-panel>.wp-block-shortcode{max-width:1000px!important;background:var(--jok-paper);color:var(--jok-ink);padding:clamp(1.5rem,4vw,3.5rem);box-sizing:border-box;box-shadow:0 24px 70px rgba(14,7,12,.24)}
.jok-enquiry-form{gap:1.5rem 1.75rem;margin-top:0}.jok-enquiry-form label{font-size:.78rem;gap:.7rem}.jok-enquiry-form input,.jok-enquiry-form select,.jok-enquiry-form textarea{padding:.85rem 1rem;border:1px solid rgba(23,16,22,.38);background:#fff;font-size:1rem;box-sizing:border-box}.jok-enquiry-form input:focus,.jok-enquiry-form select:focus,.jok-enquiry-form textarea:focus{outline:3px solid rgba(247,37,168,.18);border-color:var(--jok-pink)}.jok-enquiry-form button{margin-top:.5rem;min-width:210px}
.jok-event-form-panel{padding-top:0!important}.jok-event-title{font-size:clamp(4rem,6vw,6.5rem)!important}
.jok-product-cover{min-height:500px;padding:2.75rem;position:relative;overflow:hidden;border:1px solid rgba(23,16,22,.12);box-shadow:18px 18px 0 var(--jok-berry)}
.jok-product-cover:before{content:"JOK";position:absolute;right:-.06em;top:.05em;font-family:'League Spartan',sans-serif;font-size:12rem;font-weight:800;line-height:1;color:rgba(255,255,255,.14)}
.jok-product-cover:after{content:"PRICE  •  PLAN  •  PROFIT";display:block;margin-top:1.2rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.65);font-size:.72rem;letter-spacing:.16em;font-weight:700}
.jok-product-cover span,.jok-product-cover strong,.jok-product-cover em{position:relative;z-index:1}.jok-product-cover span{font-weight:700;letter-spacing:.14em}.jok-product-cover strong{font-size:clamp(3rem,4vw,4.6rem);max-width:520px}.jok-product-cover em{font-family:'Instrument Serif',serif;font-size:1.35rem}
footer .wp-block-group.alignfull{padding-left:max(5vw,calc((100vw - 1440px)/2))!important;padding-right:max(5vw,calc((100vw - 1440px)/2))!important}
footer .wp-block-site-title{margin:0;white-space:nowrap}footer .wp-block-site-title a{font-size:2.2rem;text-decoration:none}footer .wp-block-columns{gap:4rem;align-items:start}footer p{font-size:1rem}
.wp-block-query .wp-block-post-title a{font-family:'League Spartan',sans-serif;text-decoration:none;text-transform:uppercase}
@media(min-width:1600px){body{font-size:18px}.jok-site-header{padding-left:max(5vw,calc((100vw - 1540px)/2))!important;padding-right:max(5vw,calc((100vw - 1540px)/2))!important}}
@media(max-width:1100px){.jok-site-header{min-height:80px}.jok-site-header .wp-block-navigation{font-size:.88rem}.jok-site-header .wp-block-navigation__container{gap:.85rem}.jok-hero{min-height:620px}.jok-card{padding:1.65rem}}
@media(max-width:820px){body{font-size:16px}.jok-site-header{flex-wrap:nowrap!important;padding-top:18px!important;padding-bottom:18px!important}.jok-site-header .wp-block-navigation__responsive-container-open{display:flex}.jok-site-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}.jok-hero{min-height:auto;padding-top:4rem;padding-bottom:5rem}.jok-hero h1{font-size:clamp(3.35rem,15vw,5rem)}.jok-page-hero{min-height:auto}.jok-section h2{font-size:clamp(2.75rem,12vw,4rem)}.jok-card{min-height:0}.jok-product-cover{min-height:400px;box-shadow:10px 10px 0 var(--jok-berry)}footer .wp-block-columns{gap:1.5rem}}
@media(max-width:520px){.jok-proof{display:grid;grid-template-columns:repeat(3,1fr)}.jok-proof strong{font-size:1.55rem}.jok-enquiry-form{gap:1.1rem}.jok-form-panel>.wp-block-shortcode{padding:1.35rem}.jok-product-cover{padding:1.6rem}.jok-product-cover:before{font-size:7rem}.jok-product-cover strong{font-size:2.75rem}.jok-accordion-list summary{grid-template-columns:minmax(0,1fr) auto 1.5rem}.jok-accordion-list summary strong{font-size:1.15rem}}
