/*
Theme Name: JJW Contracting Native
Theme URI: https://jjwcontractingllc.com
Author: JRS Media Group
Description: Native WordPress block theme for JJW Contracting LLC. No Elementor or page-builder dependency.
Version: 1.7.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: jjw-contracting-native
*/

:root{--jjw-navy:#041a30;--jjw-navy2:#072642;--jjw-gold:#f0aa20;--jjw-white:#fff;--jjw-ink:#071a30}.wp-site-blocks{overflow:hidden}.jjw-header{position:relative;z-index:20}.jjw-header-row{min-height:112px}.jjw-header .wp-block-site-logo img{max-height:100px;width:auto}.jjw-header .wp-block-navigation-item__content{font-family:var(--wp--preset--font-family--condensed);font-weight:700;text-transform:uppercase;font-size:.85rem}.jjw-header .wp-block-navigation-item__content:hover{color:var(--jjw-gold)}.jjw-call{white-space:nowrap}.jjw-hero{position:relative;min-height:570px}.jjw-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,26,48,.98),rgba(4,26,48,.9) 42%,rgba(4,26,48,.08));z-index:1}.jjw-hero>.wp-block-cover__inner-container{position:relative;z-index:2}.jjw-hero h1{font-family:var(--wp--preset--font-family--condensed);font-size:clamp(3.2rem,6vw,5.6rem);font-weight:800;line-height:.92}.jjw-gold{color:var(--jjw-gold)}.jjw-proof{border:2px solid var(--jjw-gold);border-radius:8px;overflow:hidden}.jjw-proof>.wp-block-column{padding:14px;border-right:1px solid var(--jjw-gold)}.jjw-proof>.wp-block-column:last-child{border:0}.jjw-proof p{margin:0}.jjw-proof strong{color:var(--jjw-gold)}.jjw-specialty{background:linear-gradient(90deg,#f7bd3d,#e9a017)}.jjw-benefits{display:grid;grid-template-columns:1fr 1fr;gap:10px}.jjw-benefits p{margin:0;font-weight:600;font-size:.85rem}.jjw-cards{background:#fff}.jjw-card{height:100%;background:var(--jjw-navy);box-shadow:0 4px 15px rgba(0,0,0,.2)}.jjw-card .wp-block-image img{width:100%;height:230px;object-fit:cover}.jjw-card-content{padding:10px 28px 30px}.jjw-card h2{font-family:var(--wp--preset--font-family--condensed);font-size:2rem;line-height:1;text-align:center}.jjw-card ul{padding-left:1.35rem}.jjw-card li::marker{color:var(--jjw-gold)}.jjw-services-grid>.wp-block-column{padding:12px;border-right:1px solid #9ca6b0}.jjw-services-grid>.wp-block-column:last-child{border:0}.jjw-services-grid h3,.jjw-why h3{font-family:var(--wp--preset--font-family--condensed);text-transform:uppercase;line-height:1}.jjw-services-grid p,.jjw-why p{font-size:.8rem}.jjw-why>.wp-block-column{padding:14px;border-right:1px solid #738192}.jjw-why>.wp-block-column:last-child{border:0}.jjw-cta{position:relative}.jjw-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.96) 58%,rgba(255,255,255,.2));z-index:1}.jjw-cta>.wp-block-cover__inner-container{position:relative;z-index:2}.jjw-back-top{position:fixed;right:22px;bottom:22px;z-index:9999;width:58px;height:58px;border:2px solid var(--jjw-gold);border-radius:50%;background:var(--jjw-navy);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 6px 22px rgba(0,0,0,.3);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(14px);transition:.2s}.jjw-back-top span{color:var(--jjw-gold);font-size:24px;line-height:.8}.jjw-back-top b{font-size:10px}.jjw-back-top.visible{opacity:1;visibility:visible;transform:none}.jjw-back-top:hover,.jjw-back-top:focus-visible{background:var(--jjw-gold);color:var(--jjw-navy);outline:3px solid rgba(240,170,32,.3);outline-offset:3px}.jjw-back-top:hover span{color:var(--jjw-navy)}
@media(max-width:1000px){.jjw-header-row{flex-wrap:wrap;padding-block:12px!important}.jjw-header .wp-block-navigation{order:3;flex-basis:100%;justify-content:center}.jjw-proof{flex-direction:column}.jjw-proof>.wp-block-column{border-right:0;border-bottom:1px solid var(--jjw-gold)}.jjw-benefits{grid-template-columns:1fr}.jjw-services-grid,.jjw-why{flex-wrap:wrap!important}.jjw-services-grid>.wp-block-column,.jjw-why>.wp-block-column{flex-basis:31%!important}}
@media(max-width:781px){.jjw-header-row{min-height:90px}.jjw-header .wp-block-site-logo img{max-height:78px}.jjw-header .wp-block-navigation{order:initial;flex-basis:auto;margin-left:auto}.jjw-header .jjw-call{display:none}.jjw-hero:before{background:rgba(4,26,48,.76)}.jjw-hero .wp-block-column:last-child{display:none}.jjw-specialty,.jjw-cards,.jjw-services-grid,.jjw-why,.jjw-cta .wp-block-columns{flex-direction:column}.jjw-services-grid>.wp-block-column,.jjw-why>.wp-block-column{flex-basis:100%!important;border-right:0;border-bottom:1px solid #8090a0}.jjw-card{margin-bottom:16px}.jjw-cta:before{background:rgba(255,255,255,.9)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.jjw-back-top{transition:none}}

/* Match the standalone site's final call-to-action: strong photo and readable type. */
.jjw-cta{background-color:var(--jjw-navy)}
.jjw-cta .wp-block-cover__image-background{object-position:center 44%}
.jjw-cta:before{background:linear-gradient(90deg,rgba(4,26,48,.96) 0%,rgba(4,26,48,.88) 48%,rgba(4,26,48,.38) 100%)}
.jjw-cta h2,.jjw-cta p{color:#fff;text-shadow:0 2px 5px rgba(0,0,0,.55)}
.jjw-cta h2{font-family:var(--wp--preset--font-family--condensed);font-size:clamp(2.2rem,4vw,3.5rem);line-height:.98}
@media(max-width:781px){.jjw-cta:before{background:rgba(4,26,48,.78)}.jjw-cta .wp-block-cover__image-background{object-position:60% center}}

/* Standalone-inspired graphic system. */
.jjw-svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
.jjw-icon{display:block;width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.jjw-proof>.wp-block-column{display:flex;align-items:center;gap:12px}
.jjw-proof .jjw-icon{width:42px;height:42px;color:var(--jjw-gold)}
.jjw-specialty-title{display:flex;align-items:center;gap:22px}
.jjw-specialty-title .jjw-icon-xl{width:82px;height:82px;color:var(--jjw-navy);stroke-width:2.5}
.jjw-specialty-title h2,.jjw-specialty-title h3{margin-block:0 7px}
.jjw-card{position:relative}
.jjw-card-icon{position:absolute;top:198px;left:50%;z-index:3;display:grid;place-items:center;width:68px;height:68px;transform:translateX(-50%);border:3px solid #fff;border-radius:50%;background:var(--jjw-navy);color:#fff;box-shadow:0 3px 10px rgba(0,0,0,.3)}
.jjw-card-icon .jjw-icon{width:42px;height:42px;stroke-width:2.4}
.jjw-card-content{padding-top:28px}
.jjw-service-icon{width:55px;height:55px;margin:0 auto 12px;color:var(--jjw-navy);stroke-width:2.5}
.jjw-services-grid>.wp-block-column{min-width:0}
.jjw-why-icon{width:54px;height:54px;margin:0 auto 10px;color:var(--jjw-gold);stroke-width:2.8}
.jjw-footer-details>.wp-block-column{display:flex;align-items:center;gap:14px}
.jjw-footer-icon{width:42px;height:42px;color:var(--jjw-gold);stroke-width:2.6}
.jjw-cta .wp-block-button__link{display:flex;align-items:center;justify-content:center;gap:14px}
.jjw-phone-icon{width:42px;height:42px;fill:var(--jjw-navy);stroke:var(--jjw-navy)}
@media(max-width:1000px){.jjw-services-grid{display:grid!important;grid-template-columns:repeat(4,1fr)}.jjw-services-grid>.wp-block-column{border-bottom:1px solid #9ca6b0}}
@media(max-width:781px){.jjw-proof>.wp-block-column{justify-content:center}.jjw-specialty-title{flex-direction:column;text-align:center}.jjw-services-grid{grid-template-columns:repeat(2,1fr)}.jjw-footer-details>.wp-block-column{justify-content:center}.jjw-card-icon{top:198px}}
@media(max-width:480px){.jjw-services-grid{grid-template-columns:1fr}.jjw-cta .wp-block-button__link{gap:8px}.jjw-phone-icon{width:34px;height:34px}}

/* Flush section stacking and equal-height primary service cards. */
.wp-site-blocks,.wp-site-blocks>main.wp-block-group{--wp--style--block-gap:0}
.wp-site-blocks>*,.wp-site-blocks>main.wp-block-group>*{margin-block-start:0!important;margin-block-end:0!important}
.jjw-cards>.wp-block-columns{align-items:stretch}
.jjw-cards .jjw-card{display:flex;flex-direction:column;height:auto;margin-block:0}
.jjw-card>.wp-block-image{flex:0 0 auto;margin:0}
.jjw-card-content{display:flex;flex:1;flex-direction:column;box-sizing:border-box;width:100%}
.jjw-card-content h2{display:flex;align-items:center;justify-content:center;min-height:64px;margin-block:0 14px}
.jjw-card-content>p{min-height:72px;margin-block:0 12px}
.jjw-card-content>ul{margin-block:auto 0}
@media(max-width:781px){.jjw-cards .jjw-card{margin-bottom:0}.jjw-card-content h2,.jjw-card-content>p{min-height:0}}

/* Footer symbols and gold circle dividers, including saved footer overrides. */
footer .jjw-footer-details>.wp-block-column{display:flex;align-items:center;gap:14px}
footer .jjw-footer-icon{display:block;visibility:visible;width:46px;height:46px;color:var(--jjw-gold);fill:var(--jjw-gold);stroke:var(--jjw-gold);stroke-width:2.4;filter:drop-shadow(0 2px 2px rgba(0,0,0,.2))}
footer .jjw-footer-tagline{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;letter-spacing:.08em}
footer .jjw-footer-tagline i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--jjw-gold);box-shadow:0 0 0 2px rgba(240,170,32,.18)}
@media(max-width:781px){footer .jjw-footer-details>.wp-block-column{justify-content:flex-start;max-width:340px;margin-inline:auto}footer .jjw-footer-tagline{gap:8px;font-size:.72rem}}

/* Our Work photo and video portfolio; v1.6 spacing remains unchanged. */
.jjw-work-hero{position:relative;background:linear-gradient(135deg,var(--jjw-navy),var(--jjw-navy2));overflow:hidden}
.jjw-work-hero:after{content:"";position:absolute;right:-80px;top:-130px;width:430px;height:430px;border:55px solid rgba(240,170,32,.1);border-radius:50%}
.jjw-work-hero>*{position:relative;z-index:1}
.jjw-work-eyebrow{color:var(--jjw-gold);font-family:var(--wp--preset--font-family--condensed);font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.jjw-work-content{min-height:360px}
.jjw-work-content>.wp-block-post-content:empty:before{content:"Project photos and videos will appear here soon.";display:block;padding:70px 24px;border:2px dashed #c9ced4;border-radius:12px;color:#687483;text-align:center;font-weight:700}
.jjw-work-content .wp-block-gallery{gap:16px!important}
.jjw-work-content .wp-block-gallery figure{overflow:hidden;border-radius:8px;box-shadow:0 5px 18px rgba(4,26,48,.18)}
.jjw-work-content .wp-block-gallery img{transition:transform .25s ease}
.jjw-work-content .wp-block-gallery figure:hover img{transform:scale(1.025)}
.jjw-work-content .wp-block-video,.jjw-work-content .wp-block-embed{overflow:hidden;border-radius:10px;box-shadow:0 5px 20px rgba(4,26,48,.18)}
.jjw-work-content figcaption{font-size:.85rem}
.jjw-work-cta{border-top:5px solid var(--jjw-gold)}
@media(max-width:781px){.jjw-work-hero{padding-block:64px!important}.jjw-work-content{padding-inline:18px!important}}
