/*
Theme Name: JP's Storefront
Template: storefront
Version: 1.0.0
*/
:root{--navy:#0b1a33;--navy2:#13284d;--blue:#1f5fd1;--gold:#d4a72c;--gold2:#b88a12;--silver:#c9ced6;--ink:#1d2433;--light:#f4f6f9}
html,body{overflow-x:hidden}
body{color:var(--ink);background:#fff}
h1,h2,h3,.jps-eyebrow,.main-navigation a,.button,button{font-family:"Oswald",Arial,sans-serif;letter-spacing:.02em}
h1,h2,h3{color:var(--navy);font-weight:600}
a{color:var(--blue)}
/* header */
.site-header{background:#fff;border-bottom:0;padding-top:1em;margin-bottom:0}
.site-header .custom-logo-link img{max-height:110px;width:auto}
.site-header .site-branding{margin-bottom:1em}
.site-search .widget_product_search input[type=search]{border:2px solid var(--silver);background:#fff;border-radius:4px}
.storefront-primary-navigation{background:var(--navy);border-bottom:4px solid var(--gold);padding:0 1em}
@media (min-width:768px){.storefront-primary-navigation{margin:0;padding:0;border-bottom:0;box-shadow:0 0 0 100vmax var(--navy),0 4px 0 100vmax var(--gold);clip-path:inset(0 -100vmax -4px)}}
.main-navigation ul.menu>li>a,.main-navigation ul.nav-menu>li>a{color:#fff;text-transform:uppercase;font-size:.95em;padding:1.1em 1em}
.main-navigation ul.menu>li>a:hover,.main-navigation ul.menu>li.current-menu-item>a{color:var(--gold)}
.main-navigation ul.menu ul{background:var(--navy2)}
.main-navigation ul.menu ul a{color:#fff}
.site-header-cart .cart-contents,.site-header-cart .cart-contents .amount{color:#fff}
.site-header-cart .widget_shopping_cart{background:var(--navy2)}
.storefront-handheld-footer-bar{display:none}
.site-content{padding-top:2.5em}
/* buttons */
.button,button,input[type=submit],.added_to_cart,.wc-block-components-button{background:var(--gold)!important;color:var(--navy)!important;border-radius:4px;font-weight:600;text-transform:uppercase}
.button:hover,button:hover,input[type=submit]:hover{background:var(--gold2)!important;color:#fff!important}
.woocommerce-store-notice,p.demo_store{background:var(--navy)}
ul.products li.product .price,.single-product div.product .price{color:var(--navy);font-weight:700}
ul.products li.product .woocommerce-loop-product__title{color:var(--navy)}
.onsale{border-color:var(--gold);color:var(--navy)}
/* full-bleed bands */
.jps-band{width:100vw;margin-left:calc(50% - 50vw);padding:3.5em 0}
.jps-wrap{max-width:1200px;margin:0 auto;padding:0 1.5em}
.home .site-content{padding-top:0}
.home .entry-header,.home .site-main>.page>.entry-header{display:none}
/* hero */
.jps-hero{background:radial-gradient(circle at 80% 20%,#1f3b70 0,var(--navy) 60%);color:#fff;padding:4.5em 0 4em;border-bottom:4px solid var(--gold);margin-top:0}
.jps-hero h1{color:#fff;font-size:3em;line-height:1.1;margin:0 0 .3em;text-transform:uppercase}
.jps-hero h1 span{color:var(--gold)}
.jps-hero p{font-size:1.2em;color:#dfe4ec;max-width:640px}
.jps-eyebrow{color:var(--gold);text-transform:uppercase;font-size:.9em;letter-spacing:.2em;margin-bottom:.8em;display:block}
.jps-btn{display:inline-block;padding:.85em 1.6em;border-radius:4px;font-family:"Oswald",Arial,sans-serif;text-transform:uppercase;font-weight:600;text-decoration:none!important;margin:.6em .6em 0 0}
.jps-btn-gold{background:var(--gold);color:var(--navy)!important}
.jps-btn-gold:hover{background:#e6bb43}
.jps-btn-line{border:2px solid #fff;color:#fff!important}
.jps-btn-line:hover{border-color:var(--gold);color:var(--gold)!important}
.jps-hero-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:2em;align-items:center}
.jps-hero-badge{background:#fff;border-radius:12px;padding:1.2em;box-shadow:0 20px 50px rgba(0,0,0,.35);max-width:330px;justify-self:end}
.jps-hero-badge img{display:block;width:100%;height:auto}
/* trust strip */
.jps-trust{background:var(--light);padding:1.6em 0;border-bottom:1px solid #e3e7ee}
.jps-trust ul{list-style:none;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1em}
.jps-trust li{font-weight:600;color:var(--navy);padding-left:1.8em;position:relative;font-size:.95em}
.jps-trust li:before{content:"\2605";color:var(--gold);position:absolute;left:0;top:-.05em;font-size:1.2em}
/* departments */
.jps-section-title{text-align:center;margin-bottom:1.6em}
.jps-section-title h2{font-size:2.1em;text-transform:uppercase;margin:0}
.jps-section-title p{color:#5a6475;margin:.3em 0 0}
.jps-depts{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2em}
.jps-dept{display:block;background:var(--navy);color:#fff!important;text-decoration:none!important;border-radius:8px;padding:1.6em 1.3em;border-top:5px solid var(--gold);transition:transform .15s,box-shadow .15s;min-height:150px}
.jps-dept:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(11,26,51,.25)}
.jps-dept h3{color:#fff;margin:0 0 .35em;font-size:1.3em;text-transform:uppercase}
.jps-dept p{color:var(--silver);margin:0;font-size:.92em;line-height:1.45}
.jps-dept .go{color:var(--gold);font-weight:600;font-size:.85em;margin-top:.8em;display:block;text-transform:uppercase;letter-spacing:.08em}
/* services */
.jps-services{background:var(--light)}
.jps-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4em}
.jps-card{background:#fff;border-radius:8px;padding:1.8em;border:1px solid #e3e7ee;box-shadow:0 4px 14px rgba(11,26,51,.06)}
.jps-card h3{margin:0 0 .4em;text-transform:uppercase;font-size:1.25em}
.jps-card p{margin:0 0 .8em;color:#4a5466}
/* agency */
.jps-agency{background:linear-gradient(90deg,var(--navy) 0,var(--navy2) 100%);color:#fff;border-top:4px solid var(--gold)}
.jps-agency-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:2em;align-items:center}
.jps-agency h2{color:#fff;text-transform:uppercase;font-size:2em;margin:0 0 .4em}
.jps-agency ul{margin:0 0 0 1.2em;color:#dfe4ec}
.jps-agency li{margin-bottom:.35em}
/* visit */
.jps-visit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4em;text-align:center}
.jps-visit-grid h3{text-transform:uppercase;font-size:1.1em;margin-bottom:.3em}
.jps-visit-grid p{color:#4a5466;margin:0}
/* footer */
.site-footer{background:var(--navy);color:var(--silver);border-top:4px solid var(--gold)}
.site-footer a{color:#fff}
.site-footer .site-info{padding:1.5em 0}
@media (max-width:900px){.jps-hero-grid,.jps-agency-grid{grid-template-columns:1fr}.jps-hero-badge{justify-self:start;max-width:220px}.jps-depts{grid-template-columns:repeat(2,1fr)}.jps-trust ul,.jps-cards,.jps-visit-grid{grid-template-columns:1fr 1fr}.jps-hero h1{font-size:2.2em}}
@media (max-width:560px){.jps-depts,.jps-trust ul,.jps-cards,.jps-visit-grid{grid-template-columns:1fr}}

.home .site-header,.home.page:not(.page-template-template-homepage) .site-header{margin-bottom:0!important}
.home .site-main>.woocommerce:empty{display:none}
.home .site-main{margin-bottom:0}
.site-footer{margin-top:0}
@media (max-width:767px){.menu-toggle{color:#fff!important;border-color:#fff!important;background:transparent!important}.storefront-primary-navigation{padding:.6em 0}}
@media (max-width:767px){.jps-hero-badge{display:none}.jps-hero{padding:2.5em 0}.site-header .custom-logo-link img{max-height:80px}.site-header .site-branding{float:left;width:auto;margin:0 0 .8em}.site-header .site-search{display:none}}
.storefront-breadcrumb{margin:0 0 1.5em;padding:1em 0}
.site-content{padding-top:0}
.woocommerce-products-header{padding-top:0}
.single-product div.product{padding-top:0}
.variations select,.woocommerce-ordering select{border:2px solid var(--silver);border-radius:4px;padding:.45em .6em;background:#fff;min-width:200px}
.widget-area .widget .widget-title,.widget-area .widget h2{color:var(--navy);text-transform:uppercase;font-size:1.1em;border-bottom:3px solid var(--gold);padding-bottom:.4em}
/* community redesign */
.jps-hero-photo{background-size:cover;background-position:center right;padding:7em 0 6.5em}
.jps-hero-photo h1{font-size:3.4em;max-width:640px}
.jps-eyebrow-dark{color:var(--gold2)}
.jps-story{background:#fbf8f1}
.jps-story-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:3em;align-items:center}
.jps-story h2{font-size:2.3em;margin:0 0 .5em}
.jps-story p{font-size:1.08em;color:#3a4252;line-height:1.7}
.jps-sign{font-family:Georgia,serif;font-style:italic;color:var(--navy)!important;font-size:1.2em!important}
.jps-story-photos{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:.8em;height:460px}
.jps-story-photos img{width:100%;height:100%;object-fit:cover;border-radius:10px;box-shadow:0 8px 20px rgba(11,26,51,.18)}
.jps-story-photos img:first-child{grid-row:1/3}
.jps-dept{padding:0;overflow:hidden;min-height:0}
.jps-dept-img{display:block;height:170px;background-size:cover;background-position:center 25%;border-bottom:4px solid var(--gold)}
.jps-dept h3,.jps-dept p,.jps-dept .go{padding:0 1.2rem}
.jps-dept h3{padding-top:1rem}
.jps-dept .go{padding-bottom:1.1rem}
.jps-dept{border-top:0}
@media (max-width:900px){.jps-story-grid{grid-template-columns:1fr}.jps-story-photos{height:320px}.jps-hero-photo{padding:4em 0;background-position:center}.jps-hero-photo h1{font-size:2.3em}}
.jps-story-photos{grid-template-rows:repeat(2,minmax(0,1fr))}
.jps-story-photos img{min-height:0}
