
/*
Theme Name: PrintStrokes
Theme URI: https://printstrokes.example/
Author: PrintStrokes
Description: A modern responsive custom-printing WordPress theme designed for WooCommerce and the PrintStrokes photo designer.
Version: 3.11.94
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: printstrokes
*/
:root{--ps-font-body:"Inter",Arial,sans-serif;--ps-font-heading:"Poppins",Arial,sans-serif;--ps-ink:#0f172a;--ps-muted:#667085;--ps-card:#fff;--ps-line:#e5eaf1;--ps-shadow:0 20px 55px rgba(15,49,88,.10);--ps-radius:22px;}
body{margin:0;background:#fff;}
a{color:inherit;text-decoration:none;}
button,
input,
textarea,
select{font:inherit;}
button{cursor:pointer;}
.container{width:min(1180px,calc(100% - 40px));}

.eyebrow{color:var(--ps-blue);}
.section-title{font-size:40px;letter-spacing:-.03em;}
.section-copy{max-width:700px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;transition:.25s ease;white-space:nowrap;}
.btn-primary{background:var(--ps-blue);box-shadow:0 12px 25px rgba(40,87,135,.24);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 32px rgba(40,87,135,.30);}
.btn-secondary{color:var(--ps-blue);}
.btn-secondary:hover{border-color:var(--ps-blue);transform:translateY(-2px);}
.btn-light{color:var(--ps-blue-3);}
.badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:#eef5fb;color:var(--ps-blue);font-weight:800;}
.site-header{background:rgba(255,255,255,.90);}
.header-inner{display:flex;align-items:center;justify-content:space-between;}
.brand img{display:block;width:auto;height:52px;max-width:210px;object-fit:contain;}
.primary-nav{align-items:center;}

/* Navigation reset / WordPress menu compatibility */
.primary-nav > ul,
.primary-nav ul.menu,
.primary-nav ul#primary-menu,
.mobile-panel > ul,
.mobile-panel ul.menu,
.mobile-panel ul#primary-menu{list-style:none;margin:0;padding:0;}
.primary-nav > ul{display:flex;align-items:center;}
.primary-nav li,
.mobile-panel li{list-style:none;margin:0;padding:0;}
.mobile-panel > ul{display:grid;gap:2px;}
.mobile-panel .sub-menu{list-style:none;margin:0 0 4px 10px;padding:0 0 0 10px;border-left:1px solid var(--ps-line);}
.primary-nav a{color:#26374b;}
.primary-nav a:after{transition:.25s;}
.primary-nav a:hover:after,
.primary-nav .current-menu-item>a:after{right:0;}
.header-actions{display:flex;align-items:center;}
.header-account{font-size:14px;font-weight:800;color:var(--ps-blue);}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--ps-line);border-radius:12px;background:#fff;align-items:center;justify-content:center;}
.menu-toggle span,
.menu-toggle span:before,
.menu-toggle span:after{width:20px;height:2px;background:var(--ps-ink);display:block;content:"";position:relative;}
.menu-toggle span:before{position:absolute;top:-7px;}
.menu-toggle span:after{position:absolute;top:7px;}

.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#f6faff 0%,#fff 80%);}
.hero:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(40,87,135,.10);filter:blur(2px);top:-240px;right:-150px;}
.hero-grid{min-height:690px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:55px;}
.hero h1{font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-.055em;margin:16px 0 24px;max-width:730px;}
.hero h1 span{color:var(--ps-blue);}
.hero p{font-size:18px;color:var(--ps-muted);max-width:650px;}
.hero-actions{display:flex;flex-wrap:wrap;}
.hero-proof{display:flex;gap:18px;align-items:center;margin-top:28px;font-size:14px;color:var(--ps-muted);}
.hero-proof strong{color:var(--ps-ink);}
.hero-art{position:relative;min-height:520px;display:grid;place-items:center;}
.hero-board{width:min(500px,100%);aspect-ratio:1/1;border-radius:34px;background:linear-gradient(145deg,#e9f2fb,#fff);box-shadow:0 35px 90px rgba(15,49,88,.17);padding:22px;transform:rotate(2deg);animation:float 6s ease-in-out infinite;}
.hero-board-inner{height:100%;border-radius:24px;background:#fff;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;}
.hero-photo{border-radius:17px;position:relative;overflow:hidden;background:linear-gradient(135deg,#b9d6ef,#eef6fd);}
.hero-photo:nth-child(2){background:linear-gradient(135deg,#f5c8c2,#fff2ef);}
.hero-photo:nth-child(3){background:linear-gradient(135deg,#c7e4d8,#effbf5);}
.hero-photo:nth-child(4){background:linear-gradient(135deg,#d9c9f0,#f7f1ff);}
.hero-photo:after{content:"";position:absolute;inset:16% 14%;border:2px dashed rgba(255,255,255,.85);border-radius:18px;}
.hero-sticker{position:absolute;right:0;bottom:32px;padding:15px 18px;background:#fff;border-radius:18px;box-shadow:var(--ps-shadow);font-weight:800;animation:float 5s 1s ease-in-out infinite;}
@keyframes float{0%,100%{transform:translateY(0) rotate(2deg)}50%{transform:translateY(-10px) rotate(2deg)}}
.trust-strip{border-top:1px solid var(--ps-line);border-bottom:1px solid var(--ps-line);background:#fff;}
.trust-grid{display:grid;gap:0;}
.trust-item{border-right:1px solid var(--ps-line);display:flex;align-items:center;gap:12px;}
.trust-item:last-child{border-right:0;}
.trust-icon{background:#edf5fb;color:var(--ps-blue);display:grid;place-items:center;font-weight:900;}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:38px;}
.product-card{border:1px solid var(--ps-line);border-radius:20px;overflow:hidden;background:#fff;transition:.28s ease;box-shadow:0 10px 30px rgba(15,49,88,.04);}
.product-card:hover{transform:translateY(-6px);box-shadow:var(--ps-shadow);}
.product-visual{aspect-ratio:1/1;background:linear-gradient(135deg,#edf5fb,#fff);display:grid;place-items:center;position:relative;overflow:hidden;}
.product-visual:before{content:"";width:62%;height:62%;border-radius:18px;background:linear-gradient(135deg,rgba(40,87,135,.85),rgba(40,87,135,.15));transform:rotate(-7deg);box-shadow:20px 25px 40px rgba(15,49,88,.16);}
.product-card:nth-child(2) .product-visual:before{background:linear-gradient(135deg,#e74031,#f6b5ad);}
.product-card:nth-child(3) .product-visual:before{background:linear-gradient(135deg,#e4d4a4,#fff7df);}
.product-card:nth-child(4) .product-visual:before{background:linear-gradient(135deg,#a8d8cb,#effbf8);}
.product-info{padding:18px;}.product-info h3{font-size:18px;margin:0 0 4px;}.product-info p{margin:0;color:var(--ps-muted);font-size:14px;}
.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;}
.feature-art{min-height:470px;border-radius:30px;background:linear-gradient(145deg,#0f3158,#285787);position:relative;overflow:hidden;padding:35px;}
.feature-art:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.10);top:-80px;right:-60px;}
.feature-card{position:relative;background:#fff;border-radius:24px;padding:30px;box-shadow:0 30px 70px rgba(0,0,0,.20);max-width:420px;margin:auto;}
.feature-card h3{font-size:28px;line-height:1.1;margin:0 0 10px;}
.feature-list{display:grid;margin-top:26px;}.feature-list div{display:flex;gap:12px;align-items:flex-start;}.check{flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:#eaf6f1;color:#198754;display:grid;place-items:center;font-weight:900;}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px;}.step{padding:28px;border:1px solid var(--ps-line);border-radius:20px;background:#fff;position:relative;}.step-number{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--ps-blue),#3477b8);color:#fff;display:grid;place-items:center;font-weight:900;margin-bottom:20px;}.step h3{font-size:20px;margin:0 0 8px;}.step p{margin:0;color:var(--ps-muted);}
.testimonial-grid{display:grid;margin-top:38px;}.quote{border-radius:22px;border:1px solid var(--ps-line);}.stars{color:#e7a21a;letter-spacing:2px;}.quote strong{font-size:14px;}
.cta{padding:70px 0;}.cta-box{background:linear-gradient(135deg,var(--ps-blue-3),var(--ps-blue));color:#fff;position:relative;overflow:hidden;}.cta-box:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;border:1px solid rgba(255,255,255,.15);right:-80px;top:-150px;}.cta-box .section-title{max-width:650px;}
.footer-brand{margin-bottom:18px;}.footer-brand .site-logo{display:block;}
.site-footer{background:#081a2e;color:#dce7f3;}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(4,minmax(0,1fr));gap:30px;}.footer-logo{height:52px;width:auto;filter:none;}.footer-copy{color:#9db0c5;font-size:14px;max-width:350px;}.footer-title{color:#fff;text-transform:uppercase;margin:0 0 15px;}.footer-links{display:grid;gap:9px;font-size:14px;color:#aebfd0;}.footer-links a:hover{color:#fff;}.footer-bottom{border-top:1px solid rgba(255,255,255,.10);margin-top:45px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#8fa3b8;}
.page-hero{border-bottom:1px solid var(--ps-line);}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}.post-card{border:1px solid var(--ps-line);border-radius:20px;overflow:hidden;background:#fff;transition:.25s;}.post-card:hover{transform:translateY(-5px);box-shadow:var(--ps-shadow);}.post-thumb{aspect-ratio:16/10;background:linear-gradient(135deg,#dcebf7,#f7fbff);display:grid;place-items:center;color:var(--ps-blue);font-weight:900;}.post-body{padding:22px;}.post-meta{font-size:13px;color:var(--ps-muted);}.post-body h2{font-size:22px;line-height:1.2;margin:8px 0;}.post-body p{font-size:14px;color:var(--ps-muted);}
.single-post .entry-content{font-size:18px;}.single-post .entry-content img{border-radius:20px;}
.contact-grid,
.auth-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;}.info-card,
.form-card{padding:32px;border:1px solid var(--ps-line);box-shadow:0 15px 45px rgba(15,49,88,.06);}.contact-item{padding:18px 0;border-bottom:1px solid var(--ps-line);}.contact-item:last-child{border-bottom:0;}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;}.field{display:grid;gap:7px;margin-bottom:16px;}.field label{font-size:14px;font-weight:800;}.field input,
.field textarea,
.field select{width:100%;border:1px solid #d4dce7;padding:12px 14px;outline:none;}.field input:focus,
.field textarea:focus{border-color:var(--ps-blue);box-shadow:0 0 0 4px rgba(40,87,135,.10);}.field textarea{min-height:150px;resize:vertical;}.notice{padding:13px 15px;border-radius:12px;background:#edf7ef;color:#1c6b35;margin-bottom:18px;}.error{background:#fff0ef;color:#9d2920;}
.pagination{display:flex;justify-content:center;gap:8px;margin-top:45px;}.pagination a,
.pagination span{width:42px;height:42px;border:1px solid var(--ps-line);border-radius:11px;display:grid;place-items:center;font-weight:800;}.pagination .current{background:var(--ps-blue);color:#fff;border-color:var(--ps-blue);}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);}.woocommerce ul.products:before,
.woocommerce ul.products:after{display:none!important;}.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:0!important;border:1px solid var(--ps-line);border-radius:20px;overflow:hidden;}.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:15px 18px 4px!important;font-size:18px!important;}.woocommerce ul.products li.product .price{padding:0 18px 10px;}.woocommerce ul.products li.product .button{margin:0 18px 18px!important;background:var(--ps-blue);color:#fff;border-radius:10px;}
.ps-empty{padding:55px 20px;text-align:center;border:1px dashed #ccd7e4;border-radius:20px;color:var(--ps-muted);}
.reveal{transform:translateY(18px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s ease var(--reveal-delay,0ms);}
@media (max-width:1024px){
 .container{width:min(100% - 32px,900px);}
 .primary-nav,
.header-actions .header-account,
.header-actions .btn{display:none;}
 .mobile-panel{position:absolute;left:16px;right:16px;background:#fff;border:1px solid var(--ps-line);border-radius:18px;box-shadow:0 25px 60px rgba(15,49,88,.18);display:none;}
 .mobile-panel.open{animation:menuIn .2s ease;}
 @keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
 .mobile-panel a{display:block;padding:13px 12px;border-radius:10px;font-weight:800;}.mobile-panel a:hover{background:#f2f6fa;}
 .mobile-panel .mobile-cta{margin-top:7px;}
 .hero-grid{grid-template-columns:1fr;min-height:auto;padding:75px 0;}
 .hero-art{min-height:430px;}
 .product-grid{grid-template-columns:repeat(2,1fr);}
 .feature-grid{grid-template-columns:1fr;}
 
 .woocommerce ul.products{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:700px){
 body{font-size:14px;}
 .section-title{font-size:32px;}.section-copy{font-size:16px;}.brand img{height:44px;max-width:175px;}
 .hero-grid{padding:55px 0;}.hero h1{font-size:43px;}.hero p{font-size:16px;}.hero-art{min-height:330px;}.hero-board{width:min(360px,100%);padding:12px;border-radius:24px;}.hero-sticker{right:5px;bottom:8px;font-size:12px;}
 .trust-grid{grid-template-columns:1fr 1fr;}.trust-item{padding:16px 10px;border-bottom:1px solid var(--ps-line);}.trust-item:nth-child(2){border-right:0;}
 .product-grid,
.steps,
.testimonial-grid,
.blog-grid,
.woocommerce ul.products{grid-template-columns:1fr;}
 .feature-art{min-height:390px;padding:20px;}.feature-card{padding:24px;}
 .cta-box{padding:38px 24px;}.cta-box .section-title{font-size:32px;}
 .footer-grid{grid-template-columns:1fr;}.footer-bottom{flex-direction:column;}
 .page-hero{padding:60px 0;}.form-row,
.contact-grid,
.auth-grid{grid-template-columns:1fr;}
 .info-card,
.form-card{padding:22px;}
}

.ps-content-image,
.about-hero-image img,
.contact-image img,
.woocommerce-hero-image img,
.auth-showcase-image img,
.account-hero-visual img,
.generic-page-grid img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease,box-shadow .7s ease;will-change:transform;}
.about-hero-image,
.contact-image,
.woocommerce-hero-image,
.auth-showcase-image,
.account-hero-visual,
.generic-page-grid{overflow:hidden;border-radius:28px;}
.about-hero-image:hover img,
.contact-image:hover img,
.woocommerce-hero-image:hover img,
.auth-showcase-image:hover img,
.account-hero-visual:hover img,
.generic-page-grid:hover img{transform:scale(1.045);}
.hero-image-wrap{animation:heroFloat 7s ease-in-out infinite;}
.hero-image-wrap img{transition:transform .8s cubic-bezier(.2,.7,.2,1),box-shadow .8s ease;}
.hero-image-wrap:hover img{transform:scale(1.025) rotate(.25deg);box-shadow:0 35px 85px rgba(15,49,88,.22);}
.product-card .product-visual,
.blog-card-image,
.post-thumb,
.woocommerce ul.products li.product a img{transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .5s ease;}
.product-card:hover .product-visual,
.blog-card:hover .blog-card-image img,
.post-card:hover .post-thumb img{transform:scale(1.04);}
.blog-card,
.post-card,
.about-values article,
.info-card,
.form-card,
.auth-form-card,
.account-panel{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;}
.blog-card:hover,
.post-card:hover,
.about-values article:hover,
.info-card:hover,
.form-card:hover,
.auth-form-card:hover,
.account-panel:hover{transform:translateY(-7px);box-shadow:0 24px 60px rgba(15,49,88,.12);}
.btn{position:relative;overflow:hidden;isolation:isolate;}
.btn:after{content:"";position:absolute;inset:0;background:transparent;transform:translateX(-130%);transition:transform .65s ease;z-index:-1;}
.btn:hover:after{transform:translateX(130%);}
.primary-nav a{position:relative;}
.primary-nav a:after{content:"";position:absolute;left:0;right:0;bottom:4px;transform:scaleX(0);transform-origin:center;transition:transform .25s ease;}
.primary-nav a:hover:after{transform:scaleX(1);}
.section-head-row,
.blog-filter-row{animation:sectionEnter .8s both;}
.trust-item,
.step{transition:transform .35s ease,box-shadow .35s ease;background:rgba(255,255,255,.76);border-radius:18px;}
.trust-item:hover,
.step:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(15,49,88,.08);}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes sectionEnter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (max-width:700px){
  .hero-image-wrap{animation-duration:9s;}
  .product-card:hover,
.blog-card:hover,
.post-card:hover{transform:translateY(-3px);}
}

@media (prefers-reduced-motion:reduce){
 *,
*:before,
*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important;}
}

.site-header{box-shadow:0 6px 28px rgba(15,49,88,.05);}
.header-inner{min-height:88px;gap:18px;}
.brand{flex:0 0 auto;}
.brand .site-logo{height:66px;max-width:245px;width:auto;display:block;object-fit:contain;}
.primary-nav{flex:1;min-width:0;display:flex;justify-content:center;}
.primary-nav .primary-menu{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:14px;flex-wrap:nowrap;}
.primary-nav .primary-menu > li,
.primary-nav .fallback-nav-list > li{list-style:none;white-space:nowrap;}
.primary-nav .primary-menu > li > a,
.primary-nav .fallback-nav-list > li > a{padding:10px 0;}
.primary-nav .fallback-nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:14px;flex-wrap:nowrap;}
.header-actions{flex:0 0 auto;}
.header-icon-link{background:#fff;color:var(--ps-blue);transition:.25s ease;}

.icon-bag{line-height:1;}
.cart-count{border:2px solid #fff;}
.header-login,
.header-account-pill,
.header-logout{color:var(--ps-blue);white-space:nowrap;padding:7px 5px;}
.header-account-pill{padding:10px 12px;border-radius:11px;background:#edf5fb;}
.header-register{border-radius:11px;}
.menu-toggle{flex:0 0 44px;}

.mobile-account-card{margin-bottom:12px;}
.mobile-account-avatar{background:linear-gradient(135deg,var(--ps-blue),#4a91ca);font-weight:900;}

.mobile-menu-list a{font-size:14px!important;padding:12px 11px!important;}
.mobile-actions{margin-top:8px;padding-top:10px;}

.btn-full{width:100%;}

/* Auth */
.auth-hero{position:relative;overflow:hidden;}
.auth-hero:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(40,87,135,.08);right:-140px;top:-190px;}
.auth-hero-inner{position:relative;z-index:1;}
.auth-modern-grid{display:grid;align-items:stretch;}
.auth-showcase{position:relative;overflow:hidden;background:linear-gradient(145deg,#0f3158,#285787 66%,#3985c4);color:#fff;box-shadow:0 30px 75px rgba(15,49,88,.18);}
.auth-showcase:before,
.auth-showcase:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.13);border-radius:50%;pointer-events:none;}
.auth-showcase:before{width:390px;height:390px;right:-170px;top:-150px;}
.auth-showcase:after{width:250px;height:250px;left:-100px;bottom:-130px;}
.auth-badge{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;position:relative;z-index:2;}
.auth-showcase h2{font-size:52px;line-height:1.02;letter-spacing:-.055em;margin:30px 0 18px;position:relative;z-index:2;}
.auth-showcase h2 span{color:#b8dcfa;}
.auth-showcase>p{max-width:510px;color:rgba(255,255,255,.75);font-size:17px;position:relative;z-index:2;}
.auth-feature-list{display:grid;gap:16px;margin-top:36px;position:relative;z-index:2;}
.auth-feature-list>div{display:flex;align-items:flex-start;gap:13px;padding:14px 0;border-top:1px solid rgba(255,255,255,.12);}
.auth-feature-list>div:last-child{border-bottom:1px solid rgba(255,255,255,.12);}
.auth-feature-list>div>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.12);font-weight:900;}
.auth-feature-list p{margin:0;color:rgba(255,255,255,.72);font-size:13px;line-height:1.55;}.auth-feature-list strong{color:#fff;font-size:14px;}
.auth-form-card{box-shadow:0 25px 65px rgba(15,49,88,.09);display:flex;flex-direction:column;justify-content:center;}
.auth-form-head h2{margin:7px 0 4px;}.auth-form-head p{margin:0 0 25px;}
.ps-wp-login-form #loginform{margin:0;padding:0;background:none;border:0;box-shadow:none;}
.ps-wp-login-form label{display:block;font-weight:800;font-size:13px;margin-bottom:7px;}
.ps-wp-login-form input[type=text],
.ps-wp-login-form input[type=password]{width:100%;height:50px;border:1px solid #d2dce7;border-radius:13px;padding:0 14px;outline:none;box-shadow:none;margin-top:7px;background:#fff;color:var(--ps-ink);}
.ps-wp-login-form input[type=text]:focus,
.ps-wp-login-form input[type=password]:focus{border-color:var(--ps-blue);box-shadow:0 0 0 4px rgba(40,87,135,.10);}
.ps-wp-login-form .login-remember{color:var(--ps-muted);}
.ps-wp-login-form .login-remember input{accent-color:var(--ps-blue);margin:0;}

.ps-wp-login-form input[type=submit]{width:100%;min-height:50px;border:0;border-radius:13px;background:var(--ps-blue);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 14px 27px rgba(40,87,135,.22);transition:.25s ease;}
.ps-wp-login-form input[type=submit]:hover{transform:translateY(-2px);box-shadow:0 18px 35px rgba(40,87,135,.28);}
.ps-wp-login-form .login-remember+br,
.ps-wp-login-form .login-password br,
.ps-wp-login-form .login-username br{display:none;}
.ps-wp-login-form p{margin:0 0 16px;}
.ps-wp-login-form #user_login,
.ps-wp-login-form #user_pass{margin-bottom:8px;}
.auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0;font-size:12px;}.auth-divider:before,
.auth-divider:after{content:"";height:1px;flex:1;}.auth-divider span{white-space:nowrap;}
.auth-success-box,
.auth-error-box{padding:15px;border-radius:14px;margin-bottom:18px;}.auth-success-box{background:#eef9f0;border:1px solid #cfead3;color:#236838;}.auth-success-box strong,
.auth-success-box span{display:block;}.auth-success-box span{font-size:13px;margin-top:3px;}.auth-error-box{background:#fff2f1;border:1px solid #f3d0cc;color:#a3382f;font-size:13px;}
.ps-register-form .field{margin-bottom:16px;}.ps-register-form .field label{font-size:13px;font-weight:800;}.ps-register-form .field input{height:50px;border-radius:13px;}
.register-showcase{min-height:580px;}.register-visual{position:absolute;left:45px;right:45px;bottom:35px;height:190px;}.floating-card{position:absolute;min-width:230px;padding:18px 19px;border-radius:18px;color:var(--ps-ink);background:#fff;box-shadow:0 25px 60px rgba(0,0,0,.16);animation:accountFloat 5s ease-in-out infinite;}.floating-card strong,
.floating-card span{display:block;}.floating-card strong{font-size:15px;}.floating-card span{font-size:12px;color:var(--ps-muted);margin-top:4px;}.fc-one{left:0;bottom:0;transform:rotate(-5deg);}.fc-two{right:0;top:0;transform:rotate(5deg);animation-delay:1.2s;}@keyframes accountFloat{0%,100%{translate:0 0}50%{translate:0 -9px}}

/* Account */
.account-hero{position:relative;overflow:hidden;padding:72px 0;color:#fff;background:linear-gradient(135deg,#0f3158,#285787 70%,#3985c4);}
.account-hero:after{content:"";position:absolute;width:480px;height:480px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-190px;top:-230px;}.account-hero-grid{display:grid;gap:30px;position:relative;z-index:2;}.account-hero .auth-badge{background:rgba(255,255,255,.12);}.account-hero h1{font-size:54px;line-height:1;letter-spacing:-.05em;margin:17px 0 13px;}.account-hero p{font-size:17px;color:rgba(255,255,255,.74);max-width:660px;}.account-hero-actions{display:flex;align-items:center;gap:17px;margin-top:24px;}.account-logout-light{color:#fff;font-weight:800;font-size:14px;}.account-avatar-large{width:128px;height:128px;border-radius:35px;display:grid;place-items:center;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);font-size:50px;font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.2);}
.account-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}.account-stat-card{padding:22px 24px;border:1px solid var(--ps-line);border-radius:20px;background:#fff;box-shadow:0 16px 42px rgba(15,49,88,.06);display:grid;grid-template-columns:auto 1fr;column-gap:14px;}.account-stat-card>*:not(.account-stat-icon){grid-column:2;}.account-stat-icon{grid-row:1 / span 2;width:40px;height:40px;border-radius:12px;background:#eef5fb;color:var(--ps-blue);display:grid;place-items:center;font-weight:900;}.account-stat-card strong{font-size:23px;line-height:1.1;}.account-stat-card span:last-child{font-size:12px;color:var(--ps-muted);margin-top:3px;}
.account-layout-grid{display:grid;gap:22px;margin-top:24px;}.account-nav-card,
.account-content-panel{border:1px solid var(--ps-line);border-radius:23px;background:#fff;box-shadow:0 17px 50px rgba(15,49,88,.06);}.account-nav-card{height:max-content;}.account-nav-head{padding:8px 8px 12px;}.account-nav-head h3{margin:5px 0 0;font-size:21px;}.account-nav-link{display:flex;align-items:center;gap:10px;font-weight:800;color:#506176;transition:.2s;}.account-nav-link span{display:grid;place-items:center;border-radius:8px;color:var(--ps-blue);}.account-nav-link:hover,
.account-nav-link.is-active{background:#eef5fb;color:var(--ps-blue);}
.account-content-panel{padding:27px;}.account-content-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;border-bottom:1px solid var(--ps-line);padding-bottom:18px;}.account-content-head h2{font-size:28px;letter-spacing:-.03em;margin:4px 0 0;}.text-link{font-size:13px;}.account-order-list{display:grid;}.account-order-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border-bottom:1px solid #edf0f4;}.account-order-row:last-child{border-bottom:0;}.order-main{display:grid;gap:2px;}.order-number{font-size:12px;font-weight:900;color:var(--ps-blue);}.order-main strong{font-size:14px;}.order-main span:last-child{color:var(--ps-muted);font-size:12px;}.order-side{display:flex;align-items:center;gap:16px;}.order-side>strong{font-size:14px;}.order-side>a{font-size:12px;color:var(--ps-blue);font-weight:900;}.order-status{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:900;color:#28723b;}.status-processing{color:var(--ps-blue);}
.account-empty-state{padding:48px 20px;text-align:center;}.empty-orb{margin:0 auto 15px;width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:#edf5fb;color:var(--ps-blue);font-size:22px;font-weight:900;}.account-empty-state h3{font-size:22px;margin:0 0 5px;}.account-empty-state p{color:var(--ps-muted);margin:0 auto 20px;max-width:450px;}.woocommerce-account-wrapper{margin-top:28px;}.woocommerce-account-wrapper.is-endpoint{margin-top:0;}
.account-logged-out-card{padding:34px;border:1px solid var(--ps-line);border-radius:26px;background:#fff;box-shadow:0 22px 60px rgba(15,49,88,.07);display:flex;justify-content:space-between;align-items:center;gap:24px;}.account-logged-out-card h2{font-size:31px;margin:8px 0 4px;}.account-logged-out-card p{margin:0;color:var(--ps-muted);}

/* WooCommerce */
.woocommerce-page-wrap{min-height:65vh;background:#fff;}.woocommerce-hero{margin-inline:calc((1180px - 100vw)/2);padding-left:max(20px,calc((100vw - 1180px)/2));padding-right:max(20px,calc((100vw - 1180px)/2));}
.woocommerce-content{padding-top:38px;}.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--ps-muted);margin:0 0 22px;}.woocommerce .quantity .qty{height:50px;min-width:74px;border:1px solid #d2dce7;border-radius:12px;padding:0 10px;}.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{min-height:48px;border:0!important;border-radius:12px!important;background:var(--ps-blue)!important;color:#fff!important;font-weight:900!important;box-shadow:0 12px 25px rgba(40,87,135,.18);transition:.25s ease;}.woocommerce .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{transform:translateY(-2px);box-shadow:0 17px 32px rgba(40,87,135,.24);}.woocommerce ul.products{gap:22px!important;}.woocommerce ul.products li.product{background:#fff;box-shadow:0 15px 45px rgba(15,49,88,.05);transition:.28s ease!important;}.woocommerce ul.products li.product:hover{transform:translateY(-6px);box-shadow:0 25px 60px rgba(15,49,88,.10);}.woocommerce ul.products li.product a img{aspect-ratio:1/1;object-fit:cover;}.woocommerce span.onsale{min-height:42px!important;min-width:42px!important;padding:7px!important;display:grid!important;place-items:center!important;background:var(--ps-red)!important;font-size:10px!important;top:12px!important;left:12px!important;}.woocommerce .star-rating{color:#f3ae2d;}.woocommerce-message,
.woocommerce-info,
.woocommerce-error{border-radius:13px!important;border-top:0!important;padding:15px 18px!important;background:#f7f9fc!important;color:#44546a!important;}.woocommerce-message{border-left:4px solid #31834d!important;}.woocommerce-info{border-left:4px solid var(--ps-blue)!important;}.woocommerce-error{border-left:4px solid var(--ps-red)!important;}.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register{border:1px solid var(--ps-line);border-radius:22px;padding:25px;background:#fff;box-shadow:0 15px 45px rgba(15,49,88,.05);}.woocommerce table.shop_table{border-radius:18px!important;overflow:hidden;}.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:25px;}.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{width:100%;float:none;}.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{height:49px;border:1px solid #d2dce7;border-radius:12px;padding:0 13px;background:#fff;}.woocommerce form .form-row textarea{height:auto;padding:13px;}.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{outline:0;border-color:var(--ps-blue);box-shadow:0 0 0 4px rgba(40,87,135,.1);}.woocommerce-account .woocommerce-MyAccount-navigation{width:240px;float:left;}.woocommerce-account .woocommerce-MyAccount-content{width:calc(100% - 270px);float:right;}.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;border:1px solid var(--ps-line);border-radius:18px;overflow:hidden;background:#fff;}.woocommerce-MyAccount-navigation li{border-bottom:1px solid #edf0f4;}.woocommerce-MyAccount-navigation li:last-child{border-bottom:0;}.woocommerce-MyAccount-navigation li a{display:block;padding:12px 14px;font-size:13px;font-weight:800;}.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li a:hover{background:#eef5fb;color:var(--ps-blue);}.woocommerce-MyAccount-content{min-height:220px;}.woocommerce-MyAccount-content p{color:#5b6b7d;}.woocommerce form.login{max-width:600px;margin:auto;}.woocommerce form.login .button,
.woocommerce form.register .button{width:100%;}.woocommerce-account .woocommerce{zoom:1;}

/* About */
.about-hero-grid{display:grid;gap:60px;align-items:center;}.about-hero{padding:90px 0;}.about-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:27px;}.about-collage{height:430px;position:relative;}.about-card{position:absolute;border-radius:28px;padding:28px;box-shadow:0 30px 70px rgba(15,49,88,.13);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;}.about-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(40,87,135,.18),rgba(231,64,49,.10));}.about-card span,
.about-card strong{position:relative;z-index:1;}.about-card span{font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:900;color:#506176;}.about-card strong{font-size:28px;line-height:1.04;letter-spacing:-.03em;}.about-card-a{width:56%;height:290px;left:0;top:40px;background:linear-gradient(145deg,#dff0ff,#fff);}.about-card-b{width:50%;height:250px;right:0;top:0;background:linear-gradient(145deg,#fff0ee,#fff);}.about-card-c{width:48%;height:210px;right:8%;bottom:0;background:linear-gradient(145deg,#edf9f2,#fff);}.about-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;}.about-story-panel p{font-size:16px;color:#5d6b7d;max-width:630px;}.about-values{display:grid;gap:13px;}.about-values article{padding:22px;border:1px solid var(--ps-line);border-radius:19px;background:#fff;transition:.25s ease;}.about-values article:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(15,49,88,.08);}.about-values article>span{font-size:11px;font-weight:900;color:var(--ps-blue);letter-spacing:.14em;}.about-values h3{font-size:19px;margin:6px 0 3px;}.about-values p{margin:0;color:var(--ps-muted);font-size:13px;}.about-blue-section{background:linear-gradient(135deg,#0f3158,#285787);color:#fff;}.about-blue-section .section-title{max-width:750px;margin-inline:auto;}.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px;}.about-stat{padding:25px;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(255,255,255,.06);}.about-stat strong{display:block;font-size:13px;}.about-stat span{display:block;font-size:16px;font-weight:800;margin-top:12px;}.about-cta{padding:32px;border:1px solid var(--ps-line);border-radius:25px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:25px;box-shadow:0 16px 45px rgba(15,49,88,.06);}.about-cta .section-title{font-size:32px;margin-bottom:5px;}.about-cta .section-copy{font-size:15px;}

/* Footer logo */
.footer-brand .site-logo{width:auto;}.footer-brand a{display:inline-flex;}.footer-actions{display:flex;gap:9px;flex-wrap:wrap;}.btn-footer-ghost{border-color:rgba(255,255,255,.2);color:#fff;background:rgba(255,255,255,.05);}.btn-footer-ghost:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.35);color:#fff;}

/* Small screens */
@media (max-width:1180px){
 .primary-nav .primary-menu,
.primary-nav .fallback-nav-list{gap:10px;}.primary-nav{font-size:12px;}.brand .site-logo{height:60px;max-width:220px;}.header-inner{gap:10px;}.header-actions{gap:4px;}.header-login,
.header-account-pill,
.header-logout{display:none;}.header-register{padding:0 13px;}
}
@media (max-width:1024px){
 .header-inner{height:78px;min-height:78px;}.brand .site-logo{height:58px;max-width:210px;}.primary-nav{display:none;}.header-actions{margin-left:auto;}.header-register{display:none;}.menu-toggle{display:flex;}.mobile-panel{top:78px;padding:0;max-height:calc(100vh - 88px);overflow:auto;}.mobile-panel.open{display:block;}.mobile-panel-inner{width:100%;padding:14px 0 18px;}.mobile-panel .container{width:calc(100% - 24px);}
 .auth-modern-grid{grid-template-columns:1fr;}.auth-showcase{min-height:0;}.register-showcase{min-height:480px;}.account-layout-grid{grid-template-columns:1fr;}.account-nav-card{position:static;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;}.account-nav-head{grid-column:1/-1;}.account-nav-link{justify-content:center;text-align:center;flex-direction:column;gap:5px;}.woocommerce-checkout .col2-set{grid-template-columns:1fr;}.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;}.woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:25px;}
}
@media (max-width:700px){
 .container{width:calc(100% - 24px);}.brand .site-logo{height:46px;max-width:175px;}.header-inner{height:70px;min-height:70px;}.mobile-panel{top:70px;}.header-icon-link{width:40px;height:40px;}
 .mobile-actions{grid-template-columns:1fr;}.auth-showcase,
.auth-form-card{padding:26px;border-radius:24px;}.auth-showcase h2{font-size:39px;}.auth-modern-grid{gap:18px;}.register-showcase{min-height:430px;}.register-visual{left:25px;right:25px;}.floating-card{min-width:190px;padding:15px;}.fc-two{right:-8px;}
 .account-hero{padding:54px 0;}.account-avatar-large{width:86px;height:86px;border-radius:24px;font-size:34px;}.account-hero h1{font-size:40px;}.account-stat-grid{grid-template-columns:1fr;}.account-stat-card{padding:18px;}.account-nav-card{grid-template-columns:1fr 1fr;}.account-content-panel{padding:19px;}.account-content-head{align-items:flex-start;flex-direction:column;}.account-order-row{display:grid;gap:10px;}.order-side{justify-content:space-between;flex-wrap:wrap;}.account-logged-out-card{display:grid;padding:24px;}.account-logged-out-actions{display:grid;grid-template-columns:1fr;}
 .woocommerce-hero{margin-inline:0;padding-left:0;padding-right:0;}.woocommerce-content{padding-top:20px;}.woocommerce ul.products{grid-template-columns:1fr!important;}.woocommerce-cart table.shop_table,
.woocommerce-checkout #order_review,
.woocommerce-checkout #customer_details{padding:16px;}.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register{padding:18px;}.woocommerce-checkout .col2-set{display:block;}.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{margin-bottom:20px;}.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid;grid-template-columns:1fr 1fr;}.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:0;border-right:1px solid #edf0f4;}.woocommerce-account .woocommerce-MyAccount-navigation li:nth-child(even){border-right:0;}.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0;}
 .about-hero{padding:60px 0;}.about-hero-grid,
.about-story-grid{grid-template-columns:1fr;gap:35px;}.about-collage{height:350px;}.about-stats{grid-template-columns:1fr 1fr;}.about-cta{display:grid;padding:24px;}.about-card-a{width:61%;height:245px;}.about-card-b{width:56%;height:215px;}.about-card-c{width:57%;height:185px;}
 .footer-brand .site-logo{height:62px;max-width:220px;}
}
@media (max-width:380px){
 .brand .site-logo{height:41px;max-width:155px;}.header-icon-link{width:37px;height:37px;}.menu-toggle{width:40px;height:40px;}.auth-showcase h2{font-size:34px;}.account-nav-card{grid-template-columns:1fr;}.about-stats{grid-template-columns:1fr;}
}

/* === PrintStrokes header/logo refinements === */
.brand-large{display:flex;align-items:center;min-width:0;}
.brand-large .site-logo{height:82px!important;width:auto!important;max-width:310px!important;display:block;object-fit:contain;}
.footer-brand .site-logo,
.footer-logo{height:70px!important;width:auto!important;max-width:280px!important;object-fit:contain;}
.site-footer .footer-brand{min-height:76px;display:flex;align-items:center;}
.site-footer .footer-brand a{display:inline-flex;align-items:center;}

/* Contact Form 7 branded fields */
.contact-form7-card .wpcf7{width:100%;}
.contact-form7-card .wpcf7-form{display:grid;}
.contact-form7-card .wpcf7-form p{margin:0 0 16px;}
.contact-form7-card .ps-cf7-row{display:grid;grid-template-columns:1fr 1fr;}
.contact-form7-card .ps-cf7-field{display:grid;}
.contact-form7-card .ps-cf7-label{font-weight:800;}
.contact-form7-card input[type=text],
.contact-form7-card input[type=email],
.contact-form7-card input[type=tel],
.contact-form7-card select,
.contact-form7-card textarea{width:100%;box-sizing:border-box;border:1px solid #d4dce7;outline:none;background:#fff;color:#17283b;font:inherit;transition:.2s ease;}

.contact-form7-card textarea{resize:vertical;}
.contact-form7-card input:focus,
.contact-form7-card select:focus,
.contact-form7-card textarea:focus{border-color:var(--ps-blue);box-shadow:0 0 0 4px rgba(40,87,135,.10);}
.contact-form7-card input[type=submit]{border:0;background:var(--ps-blue);color:#fff;font:inherit;font-weight:900;cursor:pointer;box-shadow:0 12px 25px rgba(40,87,135,.18);transition:.25s ease;}
.contact-form7-card input[type=submit]:hover{transform:translateY(-2px);box-shadow:0 17px 32px rgba(40,87,135,.24);}
.contact-form7-card .wpcf7-response-output{border-radius:12px!important;padding:12px 14px!important;}
.contact-form7-card .wpcf7-not-valid-tip{font-size:12px;margin-top:4px;}

@media (max-width:1280px){
    .brand-large .site-logo{height:76px!important;max-width:285px!important;}
    .footer-brand .site-logo,
.footer-logo{height:66px!important;max-width:255px!important;}
}
@media (max-width:1024px){
    .brand-large .site-logo{height:62px!important;max-width:235px!important;}
    .footer-brand .site-logo,
.footer-logo{height:60px!important;max-width:235px!important;}
}
@media (max-width:640px){
    .brand-large .site-logo{height:52px!important;max-width:190px!important;}
    .footer-brand .site-logo,
.footer-logo{height:54px!important;max-width:210px!important;}
    .contact-form7-card .ps-cf7-row{grid-template-columns:1fr;gap:0;}
}
@media (max-width:380px){
    .brand-large .site-logo{height:46px!important;max-width:170px!important;}
}

/* === Visual content / image system === */
.ps-content-image{display:block;width:100%;height:auto;border-radius:24px;}
.hero-image-wrap{position:relative;max-width:620px;margin-inline:auto;}.hero-image-wrap img{width:100%;display:block;border-radius:32px;box-shadow:0 28px 70px rgba(15,49,88,.16);}.hero-image-wrap .hero-sticker{position:absolute;right:-22px;bottom:28px;}
.product-visual img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}.feature-visual{position:absolute;inset:22px 22px auto;height:245px;border-radius:24px;overflow:hidden;box-shadow:0 18px 45px rgba(15,49,88,.14);}.feature-visual img{width:100%;height:100%;object-fit:cover;}.feature-art .feature-card{margin-top:285px;}
.section-head-row{display:flex;justify-content:space-between;}.blog-card-grid{display:grid;grid-template-columns:repeat(3,1fr);}.blog-card{box-shadow:0 16px 45px rgba(15,49,88,.06);transition:.28s ease;}.blog-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(15,49,88,.12);}.blog-card-image img{transition:transform .45s ease;}.blog-card:hover .blog-card-image img{transform:scale(1.04);}.blog-meta{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#7b8897;}.blog-card h3{font-size:23px;line-height:1.2;margin:8px 0 10px;letter-spacing:-.02em;}.blog-card p{color:var(--ps-muted);font-size:14px;margin:0 0 17px;}.text-link{font-weight:800;color:var(--ps-blue);}
.blog-hero{padding:84px 0 42px;background:linear-gradient(135deg,#f7fbff,#fff5f3);}.blog-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:55px;}.blog-hero-image img{width:100%;display:block;border-radius:30px;box-shadow:0 28px 70px rgba(15,49,88,.15);}.blog-card-grid-lg{grid-template-columns:repeat(3,1fr);}.blog-filter-row{margin-bottom:28px;}.blog-pagination{margin-top:40px;}.blog-pagination ul{list-style:none;padding:0;margin:0;display:flex;justify-content:center;gap:8px;}.blog-pagination a,
.blog-pagination span{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;border:1px solid var(--ps-line);border-radius:11px;font-weight:800;}.blog-pagination .current{background:var(--ps-blue);color:#fff;border-color:var(--ps-blue);}
.single-post{max-width:920px;margin:70px auto 100px;}.single-post-head{text-align:center;margin-bottom:32px;}.single-post-image{margin-bottom:36px;box-shadow:0 28px 70px rgba(15,49,88,.12);}.single-post-content{margin-inline:auto;}.single-post-content h2{color:var(--ps-ink);font-size:32px;margin-top:38px;}
.about-hero-grid{grid-template-columns:.9fr 1.1fr;}.about-hero-image img{width:100%;border-radius:30px;box-shadow:0 24px 60px rgba(15,49,88,.13);}.contact-image{margin-bottom:24px;}.contact-image img{border-radius:18px;}.auth-showcase-image{margin:-10px -10px 26px;border-radius:20px;overflow:hidden;}.auth-showcase-image img{display:block;width:100%;height:230px;object-fit:cover;}.account-hero-grid{grid-template-columns:1fr 360px 150px;align-items:center;}.account-hero-visual img{width:100%;border-radius:26px;display:block;box-shadow:0 22px 55px rgba(0,0,0,.16);}
.woocommerce-hero-grid{display:grid;grid-template-columns:1fr 430px;align-items:center;gap:35px;}.woocommerce-hero-image img{width:100%;border-radius:28px;display:block;box-shadow:0 24px 60px rgba(15,49,88,.12);}.product-story-banner{display:grid;grid-template-columns:1fr 330px;gap:28px;align-items:center;margin:0 0 38px;padding:28px;border:1px solid var(--ps-line);border-radius:28px;background:linear-gradient(135deg,#f7fbff,#fff5f3);}.product-story-banner h2{font-size:32px;line-height:1.12;margin:8px 0;}.product-story-banner p{margin:0;color:var(--ps-muted);}.product-story-banner img{width:100%;border-radius:20px;display:block;}
@media (max-width:1024px){.section-head-row{align-items:flex-start;flex-direction:column;}.blog-hero-grid,
.woocommerce-hero-grid{grid-template-columns:1fr;}.blog-card-grid,
.blog-card-grid-lg{grid-template-columns:repeat(2,1fr);}.account-hero-grid{grid-template-columns:1fr 1fr;}.account-hero-visual{grid-column:1/-1;grid-row:2;max-width:560px;}.account-avatar-large{grid-column:2;grid-row:3;justify-self:end;}.account-hero-grid>div:first-child{grid-column:1;grid-row:3;}.product-story-banner{grid-template-columns:1fr;}}
@media (max-width:700px){.blog-card-grid,
.blog-card-grid-lg{grid-template-columns:1fr;}.blog-card-image{height:220px;}.blog-hero{padding-top:50px;}.feature-visual{position:relative;inset:auto;height:220px;margin-bottom:20px;}.feature-art .feature-card{margin-top:0;}.hero-image-wrap .hero-sticker{right:-5px;bottom:12px;}.auth-showcase-image{margin:-8px -8px 22px;height:190px;}.auth-showcase-image img{height:100%;}.account-hero-grid{grid-template-columns:1fr;}.account-hero-visual{grid-column:1;grid-row:2;}.account-hero-grid>div:first-child{grid-column:1;grid-row:1;}.account-avatar-large{grid-column:1;grid-row:3;justify-self:start;}.product-story-banner{padding:20px;}.single-post{margin:45px auto 65px;}.single-post-content{font-size:16px;}.single-post-content h2{font-size:27px;}}

.ps-announcement{background:#0f3158;}
.ps-announcement-inner{display:flex;align-items:center;gap:26px;white-space:nowrap;overflow:auto;}
.ps-announcement-right{margin-left:auto;opacity:.9;}

.ps-hero-slider{position:relative;background:linear-gradient(120deg,#eef7ff,#fff7f5 80%);min-height:640px;}

.ps-hero-slide{transform:translateX(26px) scale(.985);transition:opacity .65s ease,transform .75s cubic-bezier(.2,.8,.2,1),visibility .65s ease;}
.ps-hero-slide.is-active{opacity:1;transform:none;}
.ps-hero-copy{display:flex;flex-direction:column;z-index:2;}
.ps-hero-copy h1{letter-spacing:-.055em;}
.ps-hero-copy p{margin:0;}
.ps-hero-media{position:relative;}
.ps-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(239,247,255,.65),rgba(239,247,255,0) 20%,rgba(255,255,255,0) 70%,rgba(255,255,255,.08));pointer-events:none;}
.ps-hero-media img{animation:psHeroZoom 9s ease-in-out infinite alternate;}
@keyframes psHeroZoom{from{transform:scale(1.02)}to{transform:scale(1.08)}}
.hero-mini-proof{display:flex;flex-wrap:wrap;font-weight:800;}
.hero-mini-proof span{display:inline-flex;}
.badge-coral{background:#fff0ee;color:#c93224;}.badge-blue{background:#e9f3ff;color:#185d98;}
.ps-hero-arrow{position:absolute;top:50%;z-index:5;transform:translateY(-50%);width:44px;height:44px;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(255,255,255,.88);color:var(--ps-blue-3);font-size:27px;box-shadow:0 12px 30px rgba(15,49,88,.12);transition:.25s ease;}
.ps-hero-arrow:hover{transform:translateY(-50%) scale(1.06);box-shadow:0 16px 35px rgba(15,49,88,.18);}

.ps-hero-dots{position:absolute;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:5;}
.ps-hero-dots button{width:9px;height:9px;border-radius:50%;border:0;padding:0;transition:.25s ease;}
.ps-hero-dots button.is-active{width:27px;border-radius:999px;background:var(--ps-red);}

.ps-category-card{box-shadow:0 12px 28px rgba(15,49,88,.045);transition:.32s ease;display:flex;flex-direction:column;}
.ps-category-card:hover{box-shadow:0 22px 48px rgba(15,49,88,.12);}
.ps-category-image img{transition:transform .5s ease;}.ps-category-card:hover .ps-category-image img{transform:scale(1.07);}
.ps-category-copy span{color:var(--ps-blue);}
.ps-editor-section{background:linear-gradient(135deg,#edf6ff 0%,#fff6f2 100%);}
.ps-editor-grid{display:grid;align-items:center;}
.ps-editor-image{box-shadow:0 28px 70px rgba(15,49,88,.13);position:relative;}.ps-editor-image img{transition:transform .8s cubic-bezier(.2,.7,.2,1);}.ps-editor-image:hover img{transform:scale(1.025);}
.ps-editor-list{margin-top:28px;}

.ps-steps-grid{display:grid;}
.ps-step{position:relative;box-shadow:0 12px 30px rgba(15,49,88,.04);overflow:hidden;transition:.3s ease;}
.ps-step:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;background:rgba(40,87,135,.06);right:-40px;top:-45px;}.ps-step:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(15,49,88,.10);}
.ps-step-num{position:absolute;top:18px;right:18px;}.ps-step-icon{background:#edf5fb;color:var(--ps-blue);font-size:20px;margin-bottom:22px;position:relative;z-index:1;}.ps-step h3{margin:0 0 7px;}.ps-step p{margin:0;}

.ps-about-home-grid{display:grid;align-items:center;}.ps-about-home-image{box-shadow:0 28px 65px rgba(15,49,88,.12);}.ps-about-home-image img{transition:transform .7s ease;}.ps-about-home-image:hover img{transform:scale(1.04);}
.ps-about-home-stats div{background:#fff;}.ps-about-home-stats strong{color:var(--ps-blue-3);}.ps-about-home-stats span{font-weight:700;}

.ps-product-grid{display:grid;}.ps-product-card{box-shadow:0 12px 30px rgba(15,49,88,.04);transition:.3s ease;}.ps-product-card:hover{transform:translateY(-7px);box-shadow:0 24px 52px rgba(15,49,88,.11);}.ps-product-image{display:block;}.ps-product-card:hover .ps-product-image img{transform:scale(1.06);}.ps-product-heart{background:rgba(255,255,255,.92);color:#b63d48;box-shadow:0 8px 18px rgba(15,49,88,.12);}.ps-product-meta h3{line-height:1.2;}.ps-product-meta h3 a:hover{color:var(--ps-blue);}.ps-product-bottom span{font-size:12px;color:var(--ps-blue);font-weight:900;}

.ps-cta-box{display:grid;grid-template-columns:1fr 340px;gap:30px;align-items:center;}.ps-cta-box img{width:100%;display:block;border-radius:24px;box-shadow:0 18px 50px rgba(0,0,0,.20);}
.ps-page-image-wrap{position:relative;}.ps-page-image-wrap:after{content:"";position:absolute;inset:10% 12%;border:1px solid rgba(255,255,255,.35);border-radius:24px;pointer-events:none;}
.footer-brand .site-logo{height:70px!important;max-width:280px!important;}
@media (max-width:1180px){.ps-hero-copy{padding-left:28px;}.ps-hero-slide{grid-template-columns:46% 54%;}}
@media (max-width:1024px){.ps-announcement-inner{gap:16px;}.ps-announcement-right{display:none;}.ps-hero-slider,
.ps-hero-slides{min-height:unset;}.ps-hero-slide{position:relative;display:none;grid-template-columns:1fr;}.ps-hero-copy{padding:55px 24px 26px;order:1;}.ps-hero-copy h1{max-width:760px;font-size:clamp(38px, 4.8vw, 48px)!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}.ps-hero-copy p{max-width:760px;}.ps-hero-media{order:2;min-height:390px;}.ps-hero-media img{height:390px;}.ps-hero-arrow{top:58%;}.ps-hero-dots{bottom:16px;}.ps-editor-grid,
.ps-about-home-grid{grid-template-columns:1fr;gap:30px;}.ps-cta-box{grid-template-columns:1fr;}.ps-cta-box img{max-width:440px;}.ps-product-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:700px){.ps-announcement{font-size:10px;}.ps-announcement-inner{min-height:28px;justify-content:center;}.ps-announcement-inner span:nth-child(2),
.ps-announcement-inner span:nth-child(3){display:none;}.ps-hero-copy{padding:42px 18px 22px;}.ps-hero-copy h1{font-size:42px;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}.ps-hero-copy p{font-size:16px;}.hero-mini-proof{gap:8px 16px!important;font-size:11px;margin-top:12px!important;}.ps-hero-media{min-height:300px;}.ps-hero-media img{height:300px;}.ps-hero-arrow{top:59%;width:39px;height:39px;}.ps-hero-prev{left:10px;}.ps-hero-next{right:10px;}.ps-category-grid{grid-template-columns:repeat(2,1fr);gap:12px;}.ps-category-copy{padding:13px;}.ps-category-copy h3{font-size:16px;}.ps-category-copy p{font-size:12px;}.ps-steps-grid{grid-template-columns:1fr;}.ps-about-home-stats{grid-template-columns:repeat(2,1fr);}.ps-product-grid{gap:12px;}.ps-product-meta{padding:14px;}.ps-product-meta h3{font-size:16px;}.ps-product-bottom{align-items:flex-start;flex-direction:column;gap:3px;}.section{padding:64px 0;}}
@media (max-width:460px){.ps-category-grid{grid-template-columns:1fr 1fr;}.ps-product-grid{grid-template-columns:1fr;}.ps-hero-copy h1{font-size:36px;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}.ps-hero-actions{display:grid;}.hero-actions .btn{width:100%;}.ps-hero-media,
.ps-hero-media img{min-height:250px;height:250px;}.ps-about-home-stats{gap:8px;}.ps-cta-box{padding:28px;}.section-title{font-size:34px;}}
@media (prefers-reduced-motion:reduce){.ps-hero-media img,
.reveal,
.ps-category-card,
.ps-product-card,
.ps-step{animation:none!important;transition:none!important;}}

/* WooCommerce live-page polish */
.ps-wc-hero{padding:62px 0;}.ps-wc-hero .section-title{max-width:760px;}.ps-wc-hero .woocommerce-hero-image{max-width:560px;justify-self:end;}
.woocommerce-page-wrap .woocommerce-content{background:#fff;}.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{border:1px solid var(--ps-line);border-radius:22px;padding:0 0 18px;overflow:hidden;box-shadow:0 12px 30px rgba(15,49,88,.045);transition:.3s ease;}.woocommerce ul.products li.product:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(15,49,88,.11);}.woocommerce ul.products li.product a img{margin:0!important;width:100%!important;}.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .button{margin-left:18px!important;margin-right:18px!important;}.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{border-radius:12px!important;background:var(--ps-blue)!important;color:#fff!important;padding:12px 18px!important;font-weight:800!important;border:0!important;transition:.25s ease!important;}.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{transform:translateY(-2px)!important;background:var(--ps-red)!important;}.woocommerce .quantity .qty,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{border:1px solid #d4dce7!important;border-radius:12px!important;min-height:48px;padding:11px 13px!important;}.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{border-radius:14px!important;border-top-color:var(--ps-blue)!important;}.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-checkout form{border:1px solid var(--ps-line);border-radius:20px;background:#fff;box-shadow:0 12px 35px rgba(15,49,88,.05);padding:22px;}.woocommerce table.shop_table{border:0!important;}.woocommerce table.shop_table th,
.woocommerce table.shop_table td{padding:15px!important;}.woocommerce-cart .cart-collaterals .cart_totals h2{margin-top:0;}.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review{background:#fff;}
.ps-back-top{position:fixed;right:20px;bottom:20px;z-index:1100;width:44px;height:44px;border:0;border-radius:50%;background:var(--ps-blue);color:#fff;font-size:19px;box-shadow:0 14px 35px rgba(15,49,88,.22);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s ease;}.ps-back-top.is-visible{opacity:1;visibility:visible;transform:none;}.ps-back-top:hover{background:var(--ps-red);transform:translateY(-3px);}
@media(max-width:700px){.ps-wc-hero{padding:45px 0;}.woocommerce ul.products[class*=columns-] li.product,
.woocommerce-page ul.products[class*=columns-] li.product{width:calc(50% - 9px)!important;margin-right:0!important;}.woocommerce ul.products[class*=columns-] li.product:nth-child(2n){float:right;clear:none;}.woocommerce ul.products[class*=columns-] li.product:nth-child(2n/**/+1){clear:both;}.woocommerce-cart-form,
.cart_totals,
.woocommerce-checkout-review-order,
.woocommerce-checkout form{padding:15px;}}
@media(max-width:460px){.woocommerce ul.products[class*=columns-] li.product,
.woocommerce-page ul.products[class*=columns-] li.product{width:100%!important;float:none!important;clear:both!important;}.ps-back-top{right:13px;bottom:13px;}}

:root{--ps-blue:#203a4b;--ps-blue-2:#2f566b;--ps-blue-3:#102934;--ps-red:#c87963;--ps-ink:#18252b;--ps-muted:#69777d;--ps-bg:#f7f4ef;--ps-card:#fffdf9;--ps-line:#e7e0d7;--ps-shadow:0 24px 70px rgba(25,42,50,.11);--ps-radius:24px;}
body{background:#fffdf9;}
h1,
h2,
h3,
h4,
h5,
h6,
.section-title,
.hero h1,
.page-hero h1{font-family:var(--ps-font-heading);font-weight:600;letter-spacing:-.035em;color:var(--ps-blue-3);}

.section-title{font-size:clamp(38px,4.2vw,60px);}
.section-copy{color:#68757a;}
.eyebrow{color:var(--ps-red);}
.btn{letter-spacing:-.01em;}
.btn-primary{background:var(--ps-blue-3);box-shadow:0 12px 28px rgba(16,41,52,.18);}
.btn-primary:hover{background:var(--ps-blue);box-shadow:0 18px 35px rgba(16,41,52,.22);}
.btn-secondary{color:var(--ps-blue-3);}
.badge{background:#f1ebe4;color:var(--ps-blue-3);padding:8px 14px;font-size:12px;letter-spacing:.03em;}

/* Header */
.ps-announcement{background:var(--ps-blue-3)!important;font-size:11px;letter-spacing:.04em;}
.ps-announcement-inner{min-height:34px;}
.site-header{background:rgba(255,253,249,.94);}

.brand img,
.site-logo{height:54px;max-width:238px;}
.primary-nav{letter-spacing:.01em;}
.primary-nav a{color:#31434b;}
.primary-nav a:after{background:var(--ps-red);}

.header-login,
.header-account-pill,
.header-logout{font-size:13px;font-weight:800;}
.header-icon-link{background:#fffdf9;}
.icon-bag{font-size:17px;filter:grayscale(1);}
.cart-count{position:absolute;right:-4px;top:-5px;min-width:17px;height:17px;padding:2px 4px!important;border-radius:999px;background:var(--ps-red);color:#111;display:grid;place-items:center;font-size:10px;font-weight:600!important;}
.header-register{padding:0 18px;}

/* Hero — editorial, image first */
.ps-hero-slider{background:#f4f0e9;border-bottom:1px solid var(--ps-line);}
.ps-hero-slide{display:grid;align-items:center;}

.ps-hero-media img{display:block;}

.hero-mini-proof{letter-spacing:.02em;color:#65737a;}

/* Trust */

.trust-icon{background:#f1ebe4;color:var(--ps-red);}
.trust-item strong{font-size:13px;}
.trust-item div span{font-size:12px;}

/* Category cards */
.ps-categories{background:#fffdf9;}
.section-head-row{gap:30px;}
.ps-category-grid{display:grid;}
.ps-category-card{transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;}
.ps-category-card:hover{transform:translateY(-7px);box-shadow:var(--ps-shadow);}

.ps-category-image img{display:block;transition:transform .6s ease;}
.ps-category-card:hover .ps-category-image img{transform:scale(1.045);}

.ps-category-copy h3{line-height:1.05;}

.ps-category-copy span{color:var(--ps-red);letter-spacing:.04em;}

/* Designer section */
.ps-editor-section{background:#f4f0e9;}

.ps-editor-image{overflow:hidden;box-shadow:0 30px 70px rgba(16,41,52,.14);}
.ps-editor-image img{width:100%;height:100%;display:block;}
.ps-editor-list{gap:18px;}
.ps-editor-list div{font-size:14px;}
.ps-editor-list strong{color:var(--ps-blue-3);}

/* Steps */
.ps-how-section{background:#fffdf9;}
.ps-steps-grid{margin-top:44px;}
.ps-step{padding:28px 24px;border:1px solid var(--ps-line);box-shadow:0 8px 25px rgba(25,42,50,.03);}
.ps-step-num{font-size:11px;font-weight:900;letter-spacing:.12em;}
.ps-step-icon{width:48px;height:48px;border-radius:15px;background:#f1ebe4;color:var(--ps-red);display:grid;place-items:center;font-weight:900;margin:22px 0 20px;}
.ps-step h3{font-family:var(--ps-font-heading);font-size:17px;font-weight:800;letter-spacing:-.02em;}
.ps-step p{font-size:13px;line-height:1.7;color:#748086;}

/* About */

.ps-about-home-image{box-shadow:0 30px 75px rgba(16,41,52,.14);}

.ps-about-home-stats strong{font-family:var(--ps-font-body);}

/* Products */
.ps-favourites{background:#fffdf9;}
.ps-product-grid{margin-top:44px;}
.ps-product-card{border:1px solid var(--ps-line);overflow:hidden;background:#fff;transition:.35s ease;}
.ps-product-card:hover{transform:translateY(-6px);box-shadow:var(--ps-shadow);}
.ps-product-image{aspect-ratio:1/1;overflow:hidden;position:relative;}
.ps-product-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.ps-product-card:hover .ps-product-image img{transform:scale(1.04);}
.ps-product-heart{width:36px;height:36px;border-radius:50%;background:rgba(255,253,249,.94);display:grid;place-items:center;position:absolute;top:14px;right:14px;box-shadow:0 8px 20px rgba(0,0,0,.08);font-size:17px;}

.ps-product-type{font-size:10px;letter-spacing:.13em;text-transform:uppercase;font-weight:900;}
.ps-product-meta h3{font-family:var(--ps-font-heading);font-size:17px;font-weight:800;letter-spacing:-.02em;margin:7px 0 14px;}
.ps-product-bottom{font-size:12px;color:#7a858a;display:flex;justify-content:space-between;gap:12px;align-items:center;}
.ps-product-bottom strong{color:var(--ps-blue-3);font-size:14px;}

/* Testimonials */
.ps-testimonial-section{background:#f4f0e9;}

.quote{padding:30px;}
.quote p{font-size:15px;line-height:1.75;color:#5e6d73;}
.stars{color:var(--ps-red);font-size:13px;}

/* Blog */
.ps-blog-home{background:#fffdf9;}
.blog-card-grid{gap:20px;}
.blog-card{border:1px solid var(--ps-line);overflow:hidden;background:#fff;}

.blog-card-image img{transition:transform .55s ease;}
.blog-card:hover .blog-card-image img{transform:scale(1.045);}
.blog-card-body{padding:22px;}
.blog-card-body h3{font-family:var(--ps-font-heading);font-size:19px;font-weight:800;line-height:1.25;}
.blog-card-body p{font-size:13px;color:#758187;line-height:1.7;}

/* CTA */

.cta-box{border-radius:30px;background:var(--ps-blue-3);padding:60px;display:grid;grid-template-columns:1fr 360px;align-items:center;gap:45px;}
.cta-box .section-title{color:#fff;}
.cta-box .section-copy{color:#b9c7cc;}
.cta-box>img{width:100%;border-radius:22px;}

/* Footer */
.site-footer{background:#102934;padding:78px 0 24px;}
.footer-title{font-family:var(--ps-font-heading);font-size:11px;letter-spacing:.16em;}
.footer-copy,
.footer-links{font-size:13px;}
.footer-bottom{font-size:11px;}

/* General content/image treatment */
.page-hero{background:#f4f0e9;border-color:var(--ps-line);}

.ps-page-image-wrap{border-radius:26px;overflow:hidden;box-shadow:0 25px 65px rgba(16,41,52,.14);}
.ps-page-image-wrap img{width:100%;height:360px;display:block;}
.post-thumb,
.post-card .post-thumb{background:#eee7de;overflow:hidden;}
.post-thumb img,
.post-card img{width:100%;height:100%;object-fit:cover;display:block;}

/* Forms/cards */
.info-card,
.form-card{border-color:var(--ps-line);border-radius:22px;background:#fffdf9;box-shadow:0 15px 45px rgba(25,42,50,.06);}
.field input,
.field textarea,
.field select{border-radius:13px;}
.field input:focus,
.field textarea:focus{border-color:var(--ps-red);box-shadow:0 0 0 4px rgba(200,121,99,.10);}

/* Responsive */
@media (max-width: 1050px){
  .ps-hero-slide{grid-template-columns:1fr 1fr;padding:55px 32px;min-height:590px;}
  .ps-hero-media{height:450px;}
  .ps-product-grid{grid-template-columns:repeat(2,1fr);}
  .ps-steps-grid{grid-template-columns:repeat(2,1fr);}
  .cta-box{grid-template-columns:1fr;}
  .cta-box>img{height:260px;}
}
@media (max-width: 760px){
  .container{width:min(100% - 30px,1240px);}
  .section{padding:72px 0;}
  .header-inner{height:74px;}
  .brand img,
.site-logo{height:45px;max-width:185px;}
  .primary-nav{display:none;}
  .header-login,
.header-account-pill,
.header-logout{display:none;}
  .menu-toggle{display:flex;}
  .ps-hero-slide{grid-template-columns:1fr;padding:42px 20px 54px;gap:28px;}
  .ps-hero-copy h1{font-size:50px;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-hero-media{height:360px;border-radius:24px;}
  .trust-grid{grid-template-columns:1fr 1fr;}
  .trust-item{border-bottom:1px solid var(--ps-line);}
  .ps-category-grid{grid-template-columns:1fr;}
  .ps-editor-grid,
.ps-about-home-grid{grid-template-columns:1fr;gap:38px;}
  .ps-about-home-image{min-height:350px;}
  .ps-steps-grid{grid-template-columns:1fr;}
  .ps-product-grid{grid-template-columns:1fr 1fr;}
  .testimonial-grid{grid-template-columns:1fr;}
  .cta-box{padding:38px 28px;}
  .cta-box>img{height:220px;}
}
@media (max-width: 480px){
  .ps-product-grid{grid-template-columns:1fr;}
  .trust-grid{grid-template-columns:1fr;}
  .ps-hero-copy h1{font-size:43px;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
}

.ps-skip-link{position:fixed;left:18px;top:12px;z-index:99999;transform:translateY(-160%);padding:10px 14px;border-radius:10px;background:var(--ps-blue-3);color:#fff;font:800 12px/1 "Inter",Arial,sans-serif;box-shadow:0 10px 30px rgba(16,41,52,.2);transition:transform .2s ease;}
.ps-skip-link:focus{transform:none;}

/* Give WooCommerce single-product pages the same calm editorial rhythm as the homepage. */

/* Keep product columns robust for the Photo Print Designer and ordinary WooCommerce pages. */

/* Shop / cart / checkout surfaces */

.ps-centered-copy{margin-inline:auto;}
.eyebrow-light{color:#b9d8f4!important;font-weight:700!important;}

/* Keep long product images crisp instead of accidentally filling/cropping the media box. */
.ps-page-image-wrap img{object-fit:cover;}

:root{--ps-white:#FFFFFF;}

html{scroll-behavior:smooth;}
body{background:var(--ps-white);color:var(--ps-ink);font-size:16px;line-height:1.7;}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 92% 5%,rgba(232,93,73,.065),transparent 28%),
    radial-gradient(circle at 5% 42%,rgba(22,77,104,.055),transparent 25%);}
*{box-sizing:border-box;}
img{max-width:100%;height:auto;}
.container{width:min(1240px,calc(100% - 48px));margin-inline:auto;}
.section{padding:104px 0;}
.section-sm{padding:68px 0;}
.section-title,
h1,
h2,
h3,
h4,
h5,
h6{font-family:var(--ps-font-heading);color:var(--ps-navy);font-weight:600;letter-spacing:-.035em;}
.section-title{font-size:clamp(38px,4vw,64px);line-height:1.04;margin:10px 0 16px;}
.section-copy{color:var(--ps-muted);font-size:17px;line-height:1.8;}
.eyebrow{color:var(--ps-coral)!important;letter-spacing:.19em;font-size:11px;text-transform:uppercase;font-weight:700!important;}
.text-center{text-align:center;}
.btn{min-height:54px;padding:0 24px;border-radius:14px;font-size:13px;font-weight:900;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,background-color .3s ease,border-color .3s ease;}
.btn-primary{background:var(--ps-navy)!important;color:#fff!important;box-shadow:0 14px 30px rgba(14,51,71,.18);}
.btn-primary:hover{transform:translateY(-3px);background:var(--ps-navy-2)!important;box-shadow:0 22px 40px rgba(14,51,71,.23);}
.btn-secondary{background:#fffdf9!important;color:var(--ps-navy)!important;border-color:#D8CEC4!important;}
.btn-secondary:hover{transform:translateY(-3px);border-color:var(--ps-coral)!important;box-shadow:0 14px 28px rgba(14,51,71,.08);}
.btn-light{background:#fff!important;color:var(--ps-navy)!important;}
.badge{background:var(--ps-coral-soft)!important;color:var(--ps-coral)!important;border:1px solid rgba(232,93,73,.12);box-shadow:0 8px 20px rgba(232,93,73,.08);}

/* Header */
.ps-announcement{background:var(--ps-navy)!important;color:#F5FAFC!important;}
.site-header{background:rgba(255,253,249,.92)!important;border-bottom:1px solid rgba(226,218,209,.85)!important;backdrop-filter:blur(18px);}
.header-inner{height:92px;}
.brand{display:inline-flex;align-items:center;min-width:0;}
.brand img,
.brand .site-logo{height:64px!important;width:auto!important;max-width:280px!important;object-fit:contain;}
.primary-nav{gap:30px;font-size:13px;font-weight:900;}
.primary-nav > ul{gap:30px;}
.primary-nav a{color:var(--ps-navy)!important;}
.primary-nav a:after{background:var(--ps-coral)!important;height:3px;border-radius:3px;}
.header-actions{gap:10px;}
.header-icon-link,
.menu-toggle{border-color:var(--ps-line)!important;background:#fffdf9!important;}
.header-icon-link:hover,
.menu-toggle:hover{border-color:var(--ps-coral)!important;transform:translateY(-2px);}
.header-login,
.header-account-pill,
.header-logout{color:var(--ps-navy)!important;}
.header-account-pill{background:var(--ps-coral-soft)!important;color:var(--ps-coral)!important;}
.header-register{min-height:46px;}

/* Hero */
.ps-hero-slider{background:var(--ps-cream)!important;}

.ps-hero-slide{padding:0;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;gap:0!important;overflow:hidden;background:linear-gradient(135deg,#F8F4EE 0%,#FFFDF9 64%,#EEF5F7 100%);box-shadow:var(--ps-shadow-lg);}
.ps-hero-copy{max-width:none!important;padding:72px 62px!important;justify-content:center;position:relative;}
.ps-hero-copy:before{content:"";position:absolute;left:42px;top:42px;width:110px;height:110px;border:1px solid rgba(232,93,73,.18);border-radius:50%;animation:psPulse 5s ease-in-out infinite;}
.ps-hero-copy h1{font-size:clamp(40px, 4.3vw, 60px)!important;line-height:.96;margin:8px 0 12px!important;max-width:650px;color:#18374a!important;text-shadow:none!important;}
.ps-hero-copy h1 span{color:#285787!important;text-shadow:none!important;}
.ps-hero-copy p{font-size:18px!important;line-height:1.8!important;max-width:600px!important;color:#5E7078!important;}
.hero-actions{gap:12px!important;margin-top:30px!important;}
.hero-mini-proof{gap:8px 16px!important;margin-top:12px!important;font-size:12px!important;}

.ps-hero-media{height:100%!important;min-height:740px!important;border-radius:0!important;box-shadow:none!important;background:#DCCFC0!important;overflow:hidden;}
.ps-hero-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;transform:scale(1.02);animation:psHeroDrift 12s ease-in-out infinite alternate!important;}
.ps-hero-media:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,51,71,.02),rgba(14,51,71,.15));z-index:1;pointer-events:none;}
.ps-hero-media:after{background:linear-gradient(90deg,rgba(248,244,238,.55),transparent 22%,transparent 76%,rgba(248,244,238,.1))!important;z-index:2;}
.ps-hero-arrow{background:rgba(255,253,249,.92)!important;border-color:rgba(226,218,209,.95)!important;color:var(--ps-navy)!important;box-shadow:0 18px 36px rgba(14,51,71,.16)!important;}
.ps-hero-arrow:hover{background:#fff!important;color:var(--ps-coral)!important;}
.ps-hero-prev{left:22px;}.ps-hero-next{right:22px;}
.ps-hero-dots{bottom:22px;}
.ps-hero-dots button{background:#BCC8CC!important;}
.ps-hero-dots button.is-active{background:var(--ps-coral)!important;}
@keyframes psHeroDrift{0%{transform:scale(1.02) translate3d(0,0,0)}50%{transform:scale(1.055) translate3d(-.4%,-.7%,0)}100%{transform:scale(1.025) translate3d(.6%,.4%,0)}}
@keyframes psPulse{0%,100%{transform:scale(.96);opacity:.7}50%{transform:scale(1.05);opacity:1}}

/* Trust */

.trust-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.trust-item{padding:26px 22px!important;border-color:var(--ps-line)!important;}
.trust-icon{width:46px!important;height:46px!important;border-radius:14px!important;background:var(--ps-coral-soft)!important;color:var(--ps-coral)!important;font-size:18px;}
.trust-item strong{color:var(--ps-navy)!important;}
.trust-item div span{color:#7A858A!important;}

/* Content sections */
.ps-categories,
.ps-how-section,
.ps-favourites,
.ps-blog-home{background:#fff!important;}
.ps-editor-section{background:var(--ps-cream)!important;}
.ps-about-strip,
.ps-testimonial-section{background:#F5F0E9!important;}
.section-head-row{align-items:flex-end!important;margin-bottom:38px!important;}
.section-head-row>div:first-child{max-width:820px;}
.section-head-row .btn{flex:0 0 auto;}
.ps-category-grid{margin-top:44px!important;}
.ps-category-card{border-color:var(--ps-line)!important;box-shadow:var(--ps-shadow-md)!important;transform:translateZ(0);}
.ps-category-card:hover{transform:translateY(-10px)!important;box-shadow:0 30px 60px rgba(14,51,71,.13)!important;}

.ps-category-image img{transition:transform .8s cubic-bezier(.2,.8,.2,1)!important;}
.ps-category-card:hover .ps-category-image img{transform:scale(1.09)!important;}

/* Editor / feature */
.ps-editor-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;gap:72px!important;}
.ps-editor-image{border-radius:30px!important;box-shadow:0 30px 75px rgba(14,51,71,.16)!important;background:#DED1C2!important;}
.ps-editor-image:after{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.45);border-radius:22px;pointer-events:none;}
.ps-editor-image img{aspect-ratio:4/3;object-fit:cover;}
.feature-list{gap:18px!important;}
.check{background:var(--ps-coral-soft)!important;color:var(--ps-coral)!important;}
.ps-editor-list div{color:#657278!important;}
.ps-editor-list strong{color:var(--ps-navy)!important;}
.ps-editor-cta{margin-top:30px!important;}

/* How it works */
.ps-steps-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important;}
.ps-step{border-color:var(--ps-line)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 14px 38px rgba(14,51,71,.06)!important;}
.ps-step:hover{transform:translateY(-9px)!important;box-shadow:0 28px 58px rgba(14,51,71,.12)!important;}
.ps-step:after{background:rgba(232,93,73,.055)!important;}
.ps-step-icon{background:var(--ps-coral-soft)!important;color:var(--ps-coral)!important;}
.ps-step-num{color:#A4AEB2!important;}
.ps-step h3{color:var(--ps-navy)!important;}

/* About / trust stats */
.ps-about-home-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;}

.ps-about-home-stats{border-top:1px solid #D9CEC2!important;border-bottom:1px solid #D9CEC2!important;}
.ps-about-home-stats div{border-right:1px solid #D9CEC2!important;}
.ps-about-home-stats div:last-child{border-right:0;}
.ps-about-home-stats strong{font-size:34px!important;line-height:1!important;color:var(--ps-navy)!important;white-space:nowrap;}
.ps-about-home-stats span{font-size:12px!important;line-height:1.4!important;color:#738086!important;margin-top:7px;}
.ps-about-home-image{box-shadow:0 30px 75px rgba(14,51,71,.14)!important;}

/* Product cards */
.ps-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important;}
.ps-product-card{border-color:var(--ps-line)!important;border-radius:22px!important;box-shadow:0 13px 36px rgba(14,51,71,.06)!important;}
.ps-product-card:hover{transform:translateY(-9px)!important;box-shadow:0 28px 58px rgba(14,51,71,.12)!important;}
.ps-product-image{background:#EEE7DE!important;}
.ps-product-meta{padding:19px!important;}
.ps-product-type{color:#849096!important;}
.ps-product-meta h3{color:var(--ps-navy)!important;}
.ps-product-bottom strong{color:var(--ps-navy)!important;}
.ps-product-bottom span{color:var(--ps-coral)!important;}
.ps-product-heart{color:var(--ps-coral)!important;}

/* Testimonials */
.testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px!important;}
.quote{border-color:var(--ps-line)!important;background:#fffdf9!important;box-shadow:0 14px 36px rgba(14,51,71,.05);}
.stars{color:var(--ps-coral)!important;}
.quote strong{color:var(--ps-navy)!important;}

/* Blog */
.blog-card-grid,
.blog-card-grid-lg{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;}
.blog-card{border-color:var(--ps-line)!important;border-radius:24px!important;box-shadow:0 14px 38px rgba(14,51,71,.05)!important;}
.blog-card:hover{transform:translateY(-9px)!important;box-shadow:0 28px 58px rgba(14,51,71,.12)!important;}

.blog-card-body h3{color:var(--ps-navy)!important;}
.text-link{color:var(--ps-coral)!important;}
.blog-hero{background:var(--ps-cream)!important;}

/* CTA */
.cta{background:#fff!important;}
.cta-box{background:linear-gradient(135deg,var(--ps-navy),#194D67)!important;box-shadow:0 30px 80px rgba(14,51,71,.18)!important;}
.cta-box:before{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:160px;top:-130px;animation:psPulse 6s ease-in-out infinite;}
.cta-box>img{height:290px!important;object-fit:cover!important;}

/* Inner pages */
.page-hero,
.woocommerce-hero,
.auth-hero{background:var(--ps-cream)!important;border-bottom:1px solid var(--ps-line)!important;}
.page-hero{padding:84px 0!important;}
.page-hero .section-title{max-width:820px;}
.ps-page-image-wrap img,
.woocommerce-hero-image img,
.about-hero-image img{object-fit:cover!important;box-shadow:0 28px 70px rgba(14,51,71,.14);}
.about-blue-section{background:var(--ps-navy)!important;}
.about-light-eyebrow{color:#F4B2A4!important;}
.about-blue-section .section-title{color:#fff!important;}
.about-stat{border-color:rgba(255,255,255,.15)!important;background:rgba(255,255,255,.045)!important;}
.about-stat strong{color:#fff!important;}
.about-stat span{color:#C8D5D9!important;}

/* WooCommerce */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit{background:var(--ps-navy)!important;}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover{background:var(--ps-coral)!important;}
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{background:#F7F2EA!important;border-top-color:var(--ps-coral)!important;}

/* Forms / account */
.info-card,
.form-card,
.account-nav-card,
.account-content-panel{background:#fffdf9!important;border-color:var(--ps-line)!important;box-shadow:0 18px 48px rgba(14,51,71,.07)!important;}
.field input,
.field textarea,
.field select{background:#fff!important;border-color:#D8CEC4!important;}
.field input:focus,
.field textarea:focus,
.field select:focus{border-color:var(--ps-coral)!important;box-shadow:0 0 0 4px rgba(232,93,73,.10)!important;}
.notice,
.auth-success-box{background:#EEF5F7!important;border-color:#D4E3E8!important;color:var(--ps-navy)!important;}
.error,
.auth-error-box{background:#FFF0ED!important;border-color:#F3CFC7!important;color:#9E3C2D!important;}
.order-status{background:#EEF5F7!important;color:var(--ps-navy)!important;}
.status-pending,
.status-on-hold{background:#F8F1E7!important;color:#8A6B32!important;}
.status-cancelled,
.status-failed{background:#FFF0ED!important;color:#9E3C2D!important;}
.status-processing{background:#EEF5F7!important;color:var(--ps-navy)!important;}

/* Strong but controlled reveal animation */
.reveal{transform:translateY(42px) scale(.97);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.85,.2,1),filter .8s ease;}

.ps-category-card,
.ps-product-card,
.ps-step,
.blog-card{will-change:transform;}

/* Keep all long-form sections inside one predictable content width. */
.ps-home>section>.container,
.ps-home>.section>.container{max-width:1240px;}

@media (max-width:1180px){
  .ps-hero-slides{min-height:680px;}
  .ps-hero-slide{min-height:680px;}
  .ps-hero-media{min-height:680px!important;}
  .ps-hero-copy{padding:58px 46px!important;}
  .ps-hero-copy h1{font-size:clamp(44px,5.7vw,68px)!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .ps-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .ps-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:900px){
  .container{width:min(100% - 34px,1240px);}
  .header-inner{height:82px;}
  .brand img,
.brand .site-logo{height:55px!important;max-width:255px!important;}
  .primary-nav{display:none;}
  .menu-toggle{display:flex;}
  .ps-hero-slider{padding-top:18px;}
  .ps-hero-slides{width:min(100% - 28px,820px);min-height:auto;}
  .ps-hero-slide{grid-template-columns:1fr!important;min-height:auto!important;}
  .ps-hero-copy{padding:55px 28px 35px!important;order:1;}
  .ps-hero-media{order:2;min-height:420px!important;height:420px!important;}
  
  .trust-grid{grid-template-columns:1fr 1fr!important;}
  .ps-category-grid,
.blog-card-grid,
.blog-card-grid-lg{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .ps-editor-grid,
.ps-about-home-grid{grid-template-columns:1fr!important;gap:40px!important;}

  .testimonial-grid{grid-template-columns:1fr!important;}
}
@media (max-width:640px){
  .container{width:calc(100% - 28px);}
  .section{padding:76px 0;}
  .section-sm{padding:48px 0;}
  .section-title{font-size:clamp(34px,10vw,48px);}
  .section-copy{font-size:15px;}
  .brand img,
.brand .site-logo{height:48px!important;max-width:220px!important;}
  .header-actions{gap:6px;}
  .header-icon-link{width:39px;height:39px;}
  .ps-hero-slides{width:calc(100% - 18px);}
  .ps-hero-copy{padding:46px 22px 28px!important;}
  .ps-hero-copy h1{font-size:42px!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-hero-copy p{font-size:16px!important;}
  .hero-actions{flex-direction:column;}
  .hero-actions .btn{width:100%;}
  .ps-hero-media,
.ps-hero-media img{height:300px!important;min-height:300px!important;}
  .trust-grid{grid-template-columns:1fr!important;}
  .trust-item{border-right:0!important;}
  .ps-category-grid,
.blog-card-grid,
.blog-card-grid-lg,
.ps-product-grid,
.ps-steps-grid{grid-template-columns:1fr!important;}
  .ps-about-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .ps-about-home-stats div:nth-child(2){border-right:0!important;}
  .ps-about-home-stats div:nth-child(3),
.ps-about-home-stats div:nth-child(4){border-top:1px solid #D9CEC2!important;}
  .section-head-row{align-items:flex-start!important;}
  .section-head-row .btn{width:100%;}
}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;}
  .ps-hero-media img,
.ps-hero-copy:before,
.cta-box:before{animation:none!important;}
  .ps-category-card,
.ps-product-card,
.ps-step,
.blog-card{transition:none!important;}
}
/* Final brand lockups */
.footer-brand .site-logo,
.site-footer .footer-logo{width:auto!important;object-fit:contain;}

/* Keep the supplied PrintStrokes logo artwork; only scale it down slightly. */
.site-header .brand .site-logo,
.site-header .brand img{height:52px!important;width:auto!important;max-width:230px!important;}
.footer-brand .site-logo,
.site-footer .footer-logo{height:50px!important;max-width:250px!important;filter:none!important;opacity:1!important;}

/* Hero is edge-to-edge up to 2000px, then capped so ultra-wide displays
   do not make the imagery unnecessarily huge. */
.ps-hero-slider{width:100%;max-width:none;padding:0!important;overflow:hidden!important;border:0!important;}
.ps-hero-slides{position:relative;width:100%!important;max-width:2000px!important;min-height:740px!important;margin:0 auto!important;overflow:hidden!important;}
.ps-hero-slide{position:absolute!important;inset:0!important;width:100%!important;min-height:740px!important;margin:0!important;border-radius:0!important;opacity:1!important;visibility:hidden!important;transform:translate3d(100%,0,0)!important;transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear .72s!important;will-change:transform;backface-visibility:hidden;filter:none!important;}
.ps-hero-slide.is-active{position:absolute!important;inset:0!important;visibility:visible!important;transform:translate3d(0,0,0)!important;transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear 0s!important;}
.ps-hero-slide.is-out-left{visibility:visible!important;transform:translate3d(-100%,0,0)!important;transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear 0s!important;}
.ps-hero-slide.is-out-right{visibility:visible!important;transform:translate3d(100%,0,0)!important;transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear 0s!important;}
.ps-hero-slide.is-in-left{visibility:visible!important;transform:translate3d(-100%,0,0)!important;transition:none!important;}
.ps-hero-media,
.ps-hero-media img{filter:none!important;animation:none!important;}
.ps-hero-media img{transform:none!important;}

/* Design animation: keep it separate from the hero's slide motion. */
.ps-hero-slider::before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;border:1px solid rgba(232,93,73,.10);right:6vw;top:78px;pointer-events:none;animation:psAmbientFloat 7s ease-in-out infinite;z-index:0;}
.ps-hero-slider::after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(232,93,73,.10) 0%,rgba(232,93,73,0) 70%);left:9vw;bottom:42px;pointer-events:none;animation:psGlowPulse 5s ease-in-out infinite;z-index:0;}
.ps-hero-slides{isolation:isolate;}
.ps-hero-slide>*{position:relative;z-index:1;}
.ps-hero-copy .badge{animation:psBadgeFloat 4.5s ease-in-out infinite;}
.ps-hero-copy:before{animation:psAccentRing 5s ease-in-out infinite!important;}
.trust-icon{animation:psIconBob 3.8s ease-in-out infinite;}
.trust-item:nth-child(2) .trust-icon{animation-delay:.35s;}
.trust-item:nth-child(3) .trust-icon{animation-delay:.7s;}
.trust-item:nth-child(4) .trust-icon{animation-delay:1.05s;}
.ps-category-card:hover,
.ps-product-card:hover,
.ps-step:hover,
.blog-card:hover{transform:translateY(-8px) scale(1.01)!important;}

/* Remove blur from scroll reveals; use a clean slide-up only. */
.reveal{opacity:0;transform:translateY(24px);filter:none!important;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)!important;transition-delay:var(--reveal-delay,0ms);}
.reveal.is-visible{opacity:1;transform:none;filter:none!important;}

@keyframes psAmbientFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg);opacity:.55;}
  50%{transform:translate3d(-18px,14px,0) rotate(8deg);opacity:1;}
}
@keyframes psGlowPulse{
  0%,100%{transform:scale(.92);opacity:.45;}
  50%{transform:scale(1.12);opacity:.9;}
}
@keyframes psBadgeFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-4px);}
}
@keyframes psAccentRing{
  0%,100%{transform:scale(.96);opacity:.65;}
  50%{transform:scale(1.06);opacity:1;}
}
@keyframes psIconBob{
  0%,100%{transform:translateY(0) rotate(0deg);}
  50%{transform:translateY(-4px) rotate(2deg);}
}

@media (min-width:2001px){
  .ps-hero-slides{margin-top:28px!important;margin-bottom:28px!important;border-radius:32px!important;box-shadow:0 30px 80px rgba(14,51,71,.12);}
  .ps-hero-slide{border-radius:32px!important;}
}

@media (max-width:1024px){
  .ps-hero-slider::before,
.ps-hero-slider::after{display:none;}
  .ps-hero-slides{min-height:unset!important;overflow:visible!important;}
  .ps-hero-slide,
.ps-hero-slide.is-active,
.ps-hero-slide.is-out-left,
.ps-hero-slide.is-out-right,
.ps-hero-slide.is-in-left{position:relative!important;inset:auto!important;transform:none!important;visibility:hidden!important;transition:none!important;display:none!important;min-height:auto!important;}
  .ps-hero-slide.is-active{visibility:visible!important;display:grid!important;}
}

@media (max-width:640px){
  .site-header .brand .site-logo,
.site-header .brand img{height:46px!important;max-width:205px!important;}
  .footer-brand .site-logo,
.site-footer .footer-logo{height:44px!important;max-width:225px!important;filter:none!important;opacity:1!important;}
}

@media (prefers-reduced-motion:reduce){
  .ps-hero-slide{transition:none!important;}
  .ps-hero-slider::before,
.ps-hero-slider::after,
.ps-hero-copy .badge,
.ps-hero-copy:before,
.trust-icon{animation:none!important;}
}

:root{--ps-navy:#164D68;--ps-navy-2:#164D68;--ps-coral:#E85D49;--ps-coral-dark:#C94A39;--ps-coral-soft:#FCE9E4;--ps-cream:#F8F4EE;--ps-sand:#EEE4D8;--ps-white:#fff;--ps-ink:#172832;--ps-muted:#6C7A80;--ps-line:#E2DAD1;--ps-shadow-md:0 18px 48px rgba(14,51,71,.09);--ps-shadow-lg:0 28px 80px rgba(14,51,71,.14);}

/* Header: real SVG commerce icons, clean sizing and brand lockup. */

.site-header .brand-large .site-logo{height:56px!important;max-width:225px!important;width:auto!important;object-fit:contain;}

.header-icon-link{position:relative!important;width:42px!important;height:42px!important;border:1px solid var(--ps-line)!important;border-radius:13px!important;background:rgba(255,255,255,.94)!important;color:var(--ps-navy)!important;display:grid!important;place-items:center!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;}
.header-icon-link:hover{transform:none!important;box-shadow:none!important;border-color:#285787!important;translate:none!important;background:#285787!important;background-color:#285787!important;color:#fff!important;}
.ps-header-svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.cart-count,
.wishlist-count{position:absolute;right:-5px;top:-6px;min-width:18px;height:18px;padding:2px 4px!important;border-radius:999px;background:var(--ps-coral);color:#fff;font-size:10px;font-weight:600!important;display:grid;place-items:center;border:2px solid #fff;line-height:1;}

/* Product detail: hard boundaries between gallery, summary and tabs. */

/* Product summary hierarchy. */

.ps-single-wishlist{margin:0 0 18px;}
.ps-wishlist-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid var(--ps-line);border-radius:12px;background:#fff;color:var(--ps-navy);font-weight:800;font-size:12px;transition:.22s ease;}
.ps-wishlist-toggle:hover{transform:translateY(-2px);border-color:var(--ps-coral);color:var(--ps-coral-dark);box-shadow:0 10px 20px rgba(14,51,71,.08);}
.ps-wishlist-toggle.is-added{background:var(--ps-coral-soft);border-color:#f0b2a8;color:var(--ps-coral-dark);}
.ps-wishlist-toggle.is-loading{opacity:.6;pointer-events:none;}

.ps-wishlist-small{min-height:36px;padding:0 11px;font-size:11px;}
.ps-loop-wishlist{margin:2px 18px 0;}

/* Shop: compact but useful customer filter. */
.ps-shop-filter{margin:0 0 28px;border:1px solid var(--ps-line);background:linear-gradient(180deg,#fff,#fffdf9);box-shadow:0 12px 34px rgba(14,51,71,.05);}
.ps-shop-filter-form{display:grid;}
.ps-filter-heading{display:grid;gap:2px;padding:3px 6px 4px 0;}
.ps-filter-heading .eyebrow{font-size:10px;font-weight:700!important;}.ps-filter-heading strong{font-size:14px;color:var(--ps-navy);font-weight:900;}
.ps-filter-field{display:grid;gap:5px;min-width:0;}.ps-filter-field>span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#7b8588;font-weight:500!important;}.ps-filter-field input,
.ps-filter-field select{height:44px;width:100%;border:1px solid #d9d0c7;border-radius:11px;background:#fff;color:var(--ps-ink);padding:0 11px;font-size:13px;outline:0;}.ps-filter-field input:focus,
.ps-filter-field select:focus{border-color:var(--ps-coral);box-shadow:0 0 0 4px rgba(232,93,73,.08);}
.ps-filter-submit{min-height:44px;padding:0 17px;border-radius:11px!important;background:var(--ps-navy)!important;box-shadow:none!important;}.ps-filter-submit:hover{background:var(--ps-coral)!important;}
.ps-filter-reset{padding-bottom:12px;}

/* Wishlist page. */
.ps-wishlist-page{background:#fffdf9;}
.ps-wishlist-hero{background:var(--ps-cream)!important;}
.ps-wishlist-section{padding-top:54px;}
.ps-wishlist-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:16px 20px;border:1px solid var(--ps-line);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(14,51,71,.05);}
.ps-wishlist-toolbar>div{display:grid;gap:2px;}.ps-wishlist-toolbar .eyebrow{font-size:10px;font-weight:700!important;}.ps-wishlist-toolbar strong{font-size:15px;color:var(--ps-navy);}
.ps-wishlist-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.ps-wishlist-card{border:1px solid var(--ps-line);border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 13px 34px rgba(14,51,71,.05);transition:transform .28s ease,box-shadow .28s ease;}
.ps-wishlist-card:hover{transform:translateY(-6px);box-shadow:0 25px 52px rgba(14,51,71,.11);}
.ps-wishlist-card-image{aspect-ratio:1/1;display:block;background:#f0ece5;overflow:hidden;}.ps-wishlist-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease;}.ps-wishlist-card:hover .ps-wishlist-card-image img{transform:scale(1.045);}
.ps-wishlist-card-body{padding:19px 20px 20px;}.ps-wishlist-card-body h2{font-size:20px;line-height:1.25;margin:7px 0 14px;}.ps-wishlist-card-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;}.ps-wishlist-card-bottom>strong{color:var(--ps-navy);font-size:15px;}
.ps-wishlist-empty{grid-column:1/-1;text-align:center;padding:76px 20px 88px;border:1px solid var(--ps-line);border-radius:26px;background:#fff;box-shadow:0 15px 45px rgba(14,51,71,.05);}
.ps-wishlist-empty-icon{width:70px;height:70px;margin:0 auto 18px;display:grid;place-items:center;border-radius:22px;background:var(--ps-coral-soft);color:var(--ps-coral);font-size:32px;animation:psHeartPulse 3.8s ease-in-out infinite;}
.ps-wishlist-empty h2{font-family:var(--ps-font-heading);font-size:37px;margin:0 0 9px;color:var(--ps-navy);}.ps-wishlist-empty p{max-width:560px;margin:0 auto 22px;color:var(--ps-muted);}

/* FAQ / policy pages. */
.ps-faq-grid{display:grid;gap:12px;max-width:920px;}
.ps-faq-item{border:1px solid var(--ps-line);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(14,51,71,.045);overflow:hidden;}
.ps-faq-item summary{list-style:none;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:19px 22px;cursor:pointer;font-weight:900;color:var(--ps-navy);}
.ps-faq-item summary::-webkit-details-marker{display:none;}.ps-faq-item summary b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--ps-coral-soft);color:var(--ps-coral-dark);font-size:18px;transition:transform .2s ease;}.ps-faq-item[open] summary b{transform:rotate(45deg);}
.ps-faq-answer{padding:0 22px 20px;color:var(--ps-muted);line-height:1.8;}.ps-faq-answer p{margin:0;}
.ps-support-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:36px;border-radius:26px;background:var(--ps-navy);color:#fff;position:relative;overflow:hidden;box-shadow:var(--ps-shadow-lg);}
.ps-support-card:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;border:1px solid rgba(255,255,255,.11);right:-60px;top:-100px;animation:psRingDrift 7s ease-in-out infinite;}.ps-support-card>*{position:relative;z-index:1;}.ps-support-card h2{margin:3px 0 7px;font-family:var(--ps-font-heading);font-size:34px;}.ps-support-card p{margin:0;color:rgba(255,255,255,.73);}
.ps-policy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}.ps-policy-card{padding:28px 24px;border:1px solid var(--ps-line);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(14,51,71,.05);transition:.28s ease;}.ps-policy-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(14,51,71,.10);}.ps-policy-number{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--ps-navy);color:#fff;font-weight:900;font-size:12px;margin-bottom:18px;animation:psSoftFloat 4.5s ease-in-out infinite;}.ps-policy-card:nth-child(2) .ps-policy-number{animation-delay:.3s;}.ps-policy-card:nth-child(3) .ps-policy-number{animation-delay:.6s;}.ps-policy-card:nth-child(4) .ps-policy-number{animation-delay:.9s;}.ps-policy-card h2{font-size:22px;margin:0 0 8px;color:var(--ps-navy);}.ps-policy-card p{margin:0;color:var(--ps-muted);font-size:14px;line-height:1.75;}

/* Subtle always-on design motion throughout the storefront. */
.page-hero{position:relative;overflow:hidden;}
.page-hero:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;border:1px solid rgba(232,93,73,.12);right:-55px;top:-75px;pointer-events:none;animation:psRingDrift 8s ease-in-out infinite;}.page-hero>*{position:relative;z-index:1;}
.ps-product-card,
.ps-category-card,
.ps-step,
.blog-card,
.quote,
.info-card,
.form-card{will-change:transform;}
.ps-product-card:before,
.ps-category-card:before,
.ps-step:before,
.blog-card:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;opacity:.0;box-shadow:inset 0 0 0 1px rgba(232,93,73,.12);animation:psCardBreath 6s ease-in-out infinite;}
.ps-product-card,
.ps-category-card,
.ps-step,
.blog-card{position:relative;}
.ps-product-card:nth-child(2):before,
.ps-category-card:nth-child(2):before,
.ps-step:nth-child(2):before,
.blog-card:nth-child(2):before{animation-delay:.8s;}
.ps-product-card:nth-child(3):before,
.ps-category-card:nth-child(3):before,
.ps-step:nth-child(3):before,
.blog-card:nth-child(3):before{animation-delay:1.6s;}
.ps-product-card:nth-child(4):before,
.ps-category-card:nth-child(4):before,
.ps-step:nth-child(4):before,
.blog-card:nth-child(4):before{animation-delay:2.4s;}
@keyframes psSoftFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes psHeartPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes psRingDrift{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}50%{transform:translate3d(-10px,10px,0) rotate(7deg)}}
@keyframes psCardBreath{0%,100%{opacity:0}50%{opacity:1}}

/* Toast feedback for wishlist actions. */
.ps-theme-toast{position:fixed;max-width:min(360px,calc(100vw - 32px));padding:13px 17px;border-radius:13px;background:var(--ps-navy);color:#fff;font-size:13px;font-weight:800;box-shadow:0 18px 46px rgba(14,51,71,.22);opacity:0;transform:translateY(12px);pointer-events:none;transition:.25s ease;}.ps-theme-toast.is-visible{opacity:1;transform:none;}

@media (max-width:1024px){
  .site-header .brand-large .site-logo{height:52px!important;max-width:210px!important;}
  .ps-shop-filter-form{grid-template-columns:1.2fr 1fr 1fr 1fr;}.ps-filter-heading{grid-column:1/-1;}.ps-filter-submit{grid-column:span 2;}.ps-filter-reset{align-self:center;padding:0;}
  .ps-wishlist-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.ps-policy-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  
}
@media (max-width:760px){
  
  .header-icon-link{width:40px!important;height:40px!important;}
  .ps-filter-search,
.ps-filter-heading{grid-column:1/-1;}.ps-filter-submit{grid-column:1/-1;}.ps-filter-reset{grid-column:1/-1;text-align:left;padding:0 2px;}
  .ps-wishlist-toolbar{align-items:flex-start;flex-direction:column;}.ps-wishlist-grid{grid-template-columns:1fr;}.ps-policy-grid{grid-template-columns:1fr;}.ps-support-card{display:grid;padding:28px;}.ps-support-card .btn{justify-self:start;}

}
@media (max-width:480px){
  .header-icon-link{width:38px!important;height:38px!important;}.ps-header-svg{width:18px;height:18px;}
  .ps-shop-filter-form{grid-template-columns:1fr;}.ps-filter-search,
.ps-filter-heading,
.ps-filter-submit,
.ps-filter-reset{grid-column:auto;}
  .ps-wishlist-empty{padding:54px 16px 64px;}.ps-wishlist-empty h2{font-size:31px;}.ps-faq-item summary{padding:17px;}.ps-support-card h2{font-size:29px;}.ps-support-card{padding:24px;}
}

@media (prefers-reduced-motion:reduce){
  .page-hero:before,
.ps-policy-number,
.ps-wishlist-empty-icon,
.ps-support-card:after,
.ps-product-card:before,
.ps-category-card:before,
.ps-step:before,
.blog-card:before{animation:none!important;}
}

/* Final product-card/wishlist polish */
.ps-product-image-wrap{position:relative;aspect-ratio:1/1;overflow:hidden;background:#eee7de;}
.ps-product-image-wrap .ps-product-image{width:100%;height:100%;aspect-ratio:auto!important;}
.ps-product-heart{z-index:4;text-decoration:none;transition:transform .22s ease,background .22s ease,color .22s ease;}.ps-product-heart:hover{transform:scale(1.08);background:#fff!important;color:var(--ps-coral-dark)!important;}

@media (max-width:760px){
  .ps-product-image-wrap{min-height:0;}
}

.ps-hero-copy .badge,
.ps-hero-copy .eyebrow,
.ps-hero-copy > .badge{display:inline-flex!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important;align-self:flex-start;color:#e74031!important;-webkit-text-fill-color:#e74031!important;background:transparent!important;background-color:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;font-size:12px!important;letter-spacing:.09em!important;font-weight:700!important;margin-bottom:8px!important;}

/* The home hero remains a slide-only carousel. Non-hero motion lives elsewhere. */
.ps-hero-slider .ps-hero-media img{animation:none!important;transform:none!important;}

/* Full-width editorial hero for every inner page. */
.ps-inner-hero{position:relative!important;isolation:isolate;width:100%;display:flex;align-items:center;overflow:hidden;background-color:#0e3347;background-size:cover;background-position:center;border:0;}
.ps-inner-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,26,40,.78) 0%,rgba(14,51,71,.54) 46%,rgba(14,51,71,.24) 100%);}
.ps-inner-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,27,41,.10),rgba(10,27,41,.34));}
.ps-inner-hero-content{padding-top:78px;padding-bottom:78px;}
.ps-inner-hero-content .eyebrow{border:1px solid rgba(255,255,255,.16);}
.ps-inner-hero-content .section-title{font-size:clamp(42px,5vw,72px);text-shadow:0 10px 30px rgba(0,0,0,.12);}
.ps-inner-hero-content .section-copy{color:rgba(255,255,255,.82);}
.ps-inner-hero-about{background-image:url("assets/images/inner-hero-lifestyle.webp");}

.ps-inner-hero-faq{background-image:url("assets/images/inner-hero-lifestyle.webp");}
.ps-inner-hero-auth{background-image:url("assets/images/inner-hero-memory.webp");}
.ps-inner-hero-account{background-image:url("assets/images/inner-hero-lifestyle.webp");}
.ps-inner-hero-shipping{background-image:url("assets/images/inner-hero-gifts.webp");}
.ps-inner-hero-wishlist{background-image:url("assets/images/inner-hero-memory.webp");}
.ps-inner-hero-commerce{background-image:url("assets/images/inner-hero-gifts.webp");}

/* Keep the shop page visually compact while making filter controls easy to scan. */
.ps-shop-filter{padding:20px!important;border-radius:22px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 18px 50px rgba(14,51,71,.08)!important;}
.ps-shop-filter-form{grid-template-columns:minmax(190px,.85fr) minmax(260px,1.25fr) minmax(160px,.75fr) minmax(210px,1fr) auto!important;gap:12px!important;align-items:stretch!important;}
.ps-filter-intro{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:3px 6px 3px 2px;min-width:0;}
.ps-filter-intro .eyebrow{font-size:12px;letter-spacing:.09em;color:var(--ps-coral-dark);line-height:1.4;font-weight:700!important;}
.ps-filter-intro strong{font-size:19px;line-height:1.3;color:var(--ps-navy);font-weight:500!important;}
.ps-filter-intro small{font-size:13px;color:var(--ps-muted);line-height:1.55;font-weight:400!important;}
.ps-filter-input-wrap{position:relative;}.ps-filter-leading-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:17px;color:#8b969b;pointer-events:none;}.ps-filter-input-wrap input{padding-left:34px!important;}
.ps-filter-price-group{display:grid;gap:5px;align-content:end;min-width:0;}.ps-filter-price-group>span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#7b8588;font-weight:500!important;}.ps-filter-price-fields{display:flex;align-items:center;gap:7px;}.ps-filter-price-fields label{min-width:0;flex:1;font-weight:500!important;}.ps-filter-price-fields input{width:100%;height:44px;border:1px solid #d9d0c7;border-radius:11px;background:#fff;color:var(--ps-ink);padding:0 10px;font-size:13px;outline:0;}.ps-filter-price-fields input:focus{border-color:var(--ps-coral);box-shadow:0 0 0 4px rgba(232,93,73,.08);}
.ps-filter-actions{display:flex;flex-direction:column;align-items:stretch;justify-content:end;gap:6px;min-width:110px;}.ps-filter-submit{width:100%;margin:0!important;}.ps-filter-reset{text-align:center;font-size:11px;font-weight:900;color:#7d6f67;padding:2px 0;}.ps-filter-reset:hover{color:var(--ps-coral-dark);}

/* One account card containing all account links; the shortcode navigation is hidden. */
.account-layout-grid{grid-template-columns:minmax(230px,260px) minmax(0,1fr)!important;align-items:start!important;}
.account-nav-card{padding:16px!important;position:sticky!important;top:105px;}
.account-nav-links{display:grid;gap:5px;}
.account-nav-link{justify-content:flex-start!important;flex-direction:row!important;text-align:left!important;min-height:46px;padding:9px 10px!important;border-radius:12px!important;font-size:13px!important;}
.account-nav-link span{width:30px!important;height:30px!important;flex:0 0 30px!important;background:#f4f1ec!important;color:var(--ps-navy)!important;}
.account-nav-link strong{font-weight:850;}
.account-nav-link.is-active span,
.account-nav-link:hover span{background:var(--ps-coral-soft)!important;color:var(--ps-coral-dark)!important;}
.account-layout-grid.is-endpoint .account-content-panel{min-width:0;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-navigation{display:none!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content{width:100%!important;float:none!important;margin:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content>*:first-child{margin-top:0!important;}

/* Product detail — keep the gallery row self-contained, then place tabs/details below it. */

/* Homepage section geometry — one shared content rhythm, no cramped stats. */
.front-page .container,
.home .container{width:min(1180px,calc(100% - 48px));}
.front-page .ps-section,
.home .ps-section{overflow:visible;}

@media (min-width:2001px){
  .ps-inner-hero-content{width:min(1180px,calc(100% - 80px));}
}
@media (max-width:1080px){
  .ps-filter-intro{grid-column:1/-1;}.ps-shop-filter-form{grid-template-columns:1.4fr 1fr 1fr 1fr!important;}.ps-filter-actions{display:flex;flex-direction:row;align-items:center;min-width:0;grid-column:1/-1;}.ps-filter-submit{width:auto;min-width:130px;}.ps-filter-reset{padding:0 6px;}
  .account-layout-grid{grid-template-columns:1fr!important;}.account-nav-card{position:static!important;}.account-nav-links{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:760px){
  .ps-inner-hero{min-height:360px;}.ps-inner-hero-content{padding-top:58px;padding-bottom:58px;}.ps-inner-hero-content .section-title{font-size:42px;}
  .ps-shop-filter{padding:14px!important;}.ps-shop-filter-form{grid-template-columns:1fr 1fr!important;}.ps-filter-intro,
.ps-filter-search,
.ps-filter-actions{grid-column:1/-1;}.ps-filter-price-group{grid-column:1/-1;}
  .account-nav-links{grid-template-columns:1fr 1fr;}.account-nav-card{border-radius:18px!important;}
}
@media (max-width:480px){
  .ps-inner-hero-content{padding-top:48px;padding-bottom:48px;}.ps-inner-hero-content .section-title{font-size:35px;}.ps-inner-hero-content .section-copy{font-size:15px;}.ps-filter-field input,
.ps-filter-field select,
.ps-filter-price-fields input{height:42px;}.ps-filter-actions{flex-direction:column;align-items:stretch;}.ps-filter-submit{width:100%;}.account-nav-links{grid-template-columns:1fr;}
}
.ps-inner-hero-generic{background-image:url("assets/images/inner-hero-home.webp");}

/* Do not let a classic WooCommerce two-column product rule pull content into
   the gallery column. Detail tabs/description/reviews always form a full-width
   content row after the gallery + purchase summary row. */

/* Make generated inner-page images live behind the readable overlay without
   affecting the consistent content container. */
.ps-inner-hero-content .btn-secondary{background:rgba(255,255,255,.92);border-color:rgba(255,255,255,.65);color:var(--ps-navy);}
.ps-inner-hero-content .btn-secondary:hover{background:#fff;color:var(--ps-coral-dark);border-color:#fff;}

/* Small, always-on keyframe details on inner pages. */
.ps-inner-hero-content::after{content:"";position:absolute;left:-40px;bottom:28px;width:90px;height:2px;border-radius:999px;background:var(--ps-coral);opacity:.9;animation:psHeroAccent 3.8s ease-in-out infinite;}
@keyframes psHeroAccent{0%,100%{transform:translateX(0);opacity:.65}50%{transform:translateX(26px);opacity:1}}
@media(max-width:760px){.ps-inner-hero-content::after{left:20px;bottom:18px;}}

/* Remove the decorative animated line that appeared at the lower-left of every
   inner hero. Keep the hero clean and editorial. */

/* Home hero: stronger left-side composition and clean infinite slide states. */
/* Legacy automatic hero-button sweep removed; the shared hover-only shine layer is used instead. */

/* Robust infinite horizontal slide transition, including last -> first. */

/* Inner page heroes stay full-bleed with a clean visual overlay. */
.ps-inner-hero{min-height:440px!important;background-position:center!important;}
.ps-inner-hero-content{padding-left:0;padding-right:0;}

/* Shop: custom left filter + right product list. Hide Woo's duplicate sorting control;
   the custom sidebar owns search/category/sort/price filtering. */

.ps-shop-sidebar .ps-filter-price-fields{gap:7px!important;}

/* Remove wishlist buttons from shop loop cards. Header wishlist remains the single entry point. */

/* Product detail: create a dedicated primary row so Description/Reviews can never sit
   inside the canvas column. Works with the classic WooCommerce markup and the plugin's
   canvas injected inside the product gallery. */

/* Blockified single-product templates: only the true gallery+summary 2-column row is
   treated as the product primary row; details remain below. */

/* Keep product canvas crisp and unrestricted vertically. */

/* Header/menu responsiveness: never allow the desktop nav to squeeze icons off-screen. */
@media(max-width:800px){
  .ps-shop-sidebar .ps-shop-filter{box-shadow:0 14px 36px rgba(14,51,71,.07)!important;}
}
@media(max-width:560px){
  .ps-shop-results-head{padding-bottom:16px;}
}

.ps-inner-hero-content::after{display:none!important;content:none!important;animation:none!important;}

/* Home hero: refined left composition. The image stays clean; the design movement
   comes from small decorative keyframes instead of zooming the hero photograph. */

.ps-home .ps-hero-slide{box-shadow:none!important;}
.ps-home .ps-hero-copy{padding:76px clamp(30px,5vw,88px) 76px max(30px,calc((100vw - 1240px)/2 + 32px))!important;isolation:isolate;}
.ps-home .ps-hero-copy:before{left:24px;top:38px;width:150px;height:150px;border-color:rgba(232,93,73,.16)!important;animation:psHeroRing 7s ease-in-out infinite!important;z-index:-1;}
.ps-home .ps-hero-copy:after{content:"";position:absolute;right:10%;bottom:14%;width:80px;height:80px;border-radius:50%;border:1px solid rgba(14,51,71,.12);box-shadow:0 0 0 12px rgba(14,51,71,.025);animation:psHeroOrb 6s ease-in-out infinite;z-index:-1;}

.ps-home .ps-hero-media{box-shadow:none!important;}
/* Legacy automatic hero-button sweep removed; the shared hover-only shine layer is used instead. */
@keyframes psHeroRing{0%,100%{transform:translate3d(0,0,0) scale(.96);opacity:.55}50%{transform:translate3d(12px,-8px,0) scale(1.06);opacity:1}}
@keyframes psHeroOrb{0%,100%{transform:translate3d(0,0,0) scale(.9);opacity:.55}50%{transform:translate3d(-12px,-18px,0) scale(1.08);opacity:1}}

/* Robust loop animation: last -> first enters from the right; first -> last enters from the left. */
.ps-home .ps-hero-slide{z-index:1;}

.ps-home .ps-hero-slide.is-out-left{transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear 0s!important;}
.ps-home .ps-hero-slide.is-out-right{transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear 0s!important;}

/* Shop: a real left sidebar + right product grid. */
.ps-shop-shell{padding-top:48px!important;}
.ps-shop-layout{display:grid;grid-template-columns:minmax(250px,290px) minmax(0,1fr);gap:34px;align-items:start;}
.ps-shop-sidebar{position:sticky;top:108px;min-width:0;}
.ps-shop-sidebar .ps-shop-filter{margin:0!important;padding:20px!important;}
.ps-shop-sidebar .ps-shop-filter-form{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;}
.ps-shop-sidebar .ps-filter-intro{display:grid!important;gap:4px!important;padding:2px 0 8px!important;}
.ps-shop-sidebar .ps-filter-intro strong{font-size:19px!important;line-height:1.3!important;font-weight:500!important;}
.ps-shop-sidebar .ps-filter-intro small{font-size:13px!important;font-weight:400!important;}
.ps-shop-sidebar .ps-filter-field input,
.ps-shop-sidebar .ps-filter-field select,
.ps-shop-sidebar .ps-filter-price-fields input{height:46px!important;font-size:13px!important;border-radius:12px!important;}
.ps-shop-sidebar .ps-filter-actions{display:flex!important;flex-direction:column!important;gap:8px!important;}
.ps-shop-sidebar .ps-filter-submit{width:100%!important;min-height:46px!important;}
.ps-shop-sidebar .ps-filter-reset{padding:0!important;text-align:center!important;}
.ps-shop-results{min-width:0;}
.ps-shop-results-head{display:flex;justify-content:space-between;gap:22px;align-items:end;padding:4px 0 20px;border-bottom:1px solid var(--ps-line);margin-bottom:14px;}
.ps-shop-results-title{margin:4px 0 0;font-size:clamp(27px,3vw,40px);line-height:1.05;}
.ps-shop-results-note{font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#879198;white-space:nowrap;}
.ps-shop-results .woocommerce-result-count{margin:0 0 12px!important;color:#758187!important;font-size:12px!important;}
.ps-shop-results .woocommerce-ordering{display:none!important;}
.ps-shop-results ul.products{margin-top:14px!important;display:grid!important;gap:22px!important;}
.ps-shop-results ul.products::before,
.ps-shop-results ul.products::after{display:none!important;}
.ps-shop-results ul.products li.product{width:auto!important;float:none!important;margin:0!important;}
.ps-shop-results ul.products li.product .button{margin-top:12px!important;}
.ps-shop-results ul.products li.product .woocommerce-loop-product__title{font-size:17px!important;line-height:1.25!important;}
.ps-shop-results .woocommerce-pagination{margin-top:34px!important;}

/* Product detail: place gallery + summary in a dedicated primary row. */

/* Blockified WooCommerce product rows. */

/* Never crop the custom print canvas vertically. */

/* Header/menu: prevent desktop nav from squeezing the commerce icons. */
.site-header .primary-nav{justify-content:center!important;}
.site-header .primary-nav > ul{flex-wrap:nowrap!important;min-width:0!important;}

.site-header .header-icon-link{flex:0 0 42px!important;}
@media(max-width:1180px){
  .site-header .primary-nav > ul{gap:18px!important;}
  .site-header .header-actions{gap:6px!important;}
  .site-header .header-account-pill,
.site-header .header-login,
.site-header .header-register,
.site-header .header-logout{display:none!important;}
}
@media(max-width:1040px){
  .ps-shop-layout{grid-template-columns:230px minmax(0,1fr);gap:22px;}
  .ps-shop-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  
}
@media(max-width:800px){
  .ps-shop-layout{grid-template-columns:1fr!important;gap:28px;}
  .ps-shop-sidebar{position:static;}
  .ps-shop-results-head{align-items:flex-start;flex-direction:column;}
  .ps-shop-results-note{white-space:normal;}
  .ps-shop-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  
}
@media(max-width:560px){
  .ps-shop-results ul.products{grid-template-columns:1fr!important;}
  .ps-shop-results-title{font-size:30px;}
  .ps-inner-hero{min-height:360px!important;}
  .ps-inner-hero-content{padding-top:56px!important;padding-bottom:56px!important;}
  .ps-home .ps-hero-copy{padding:48px 22px 34px!important;}
}
@media(prefers-reduced-motion:reduce){
  .ps-home .ps-hero-copy:before,
.ps-home .ps-hero-copy:after,
.ps-home .hero-actions .btn-secondary:after{animation:none!important;}
}

/* Home hero: full-bleed, stable track and genuinely seamless horizontal slides. */

.ps-home .ps-hero-slide.is-active{position:absolute!important;inset:0!important;}
.ps-home .ps-hero-slide.is-out-left{z-index:2!important;}
.ps-home .ps-hero-slide.is-out-right{z-index:2!important;}
.ps-home .ps-hero-slide.is-in-left{z-index:4!important;}
.ps-home .ps-hero-slide.is-in-right{z-index:4!important;}
.ps-home .ps-hero-copy{padding:58px clamp(24px,4vw,62px) 58px max(24px,calc((100vw - 1180px)/2))!important;}

.ps-home .hero-actions .btn-secondary{background:var(--ps-navy)!important;border-color:var(--ps-navy)!important;color:#fff!important;min-height:54px!important;padding:0 24px!important;border-radius:16px!important;box-shadow:0 14px 32px rgba(14,51,71,.18)!important;position:relative!important;overflow:hidden!important;}
.ps-home .hero-actions .btn-secondary:hover{background:var(--ps-coral)!important;border-color:var(--ps-coral)!important;color:#fff!important;transform:translateY(-4px)!important;box-shadow:0 20px 40px rgba(232,93,73,.22)!important;}
.ps-home .hero-actions .btn-secondary:after{content:"→"!important;position:static!important;display:inline-block!important;margin-left:4px!important;transform:none!important;background:none!important;animation:none!important;}
@media(min-width:2001px){.ps-home .ps-hero-slider{max-width:2000px!important;margin-inline:auto!important;box-shadow:0 30px 80px rgba(14,51,71,.10);}}

/* Trust item hover: make the premium-quality tile feel intentional instead of generic. */
.ps-trust-strip .trust-item{transition:transform .28s ease,background .28s ease,box-shadow .28s ease!important;}
.ps-trust-strip .trust-item:before{content:"";position:absolute;inset:auto 18px 0 18px;height:3px;background:linear-gradient(90deg,var(--ps-coral),transparent);transform:scaleX(0);transform-origin:left;transition:transform .3s ease;}
.ps-trust-strip .trust-item:hover{box-shadow:inset 0 -1px 0 var(--ps-coral-soft),0 14px 28px rgba(14,51,71,.06)!important;}
.ps-trust-strip .trust-item:hover:before{transform:scaleX(1);}
.ps-trust-strip .trust-item:first-child .trust-icon{background:var(--ps-coral)!important;color:#fff!important;box-shadow:0 10px 24px rgba(232,93,73,.22)!important;transform:rotate(-5deg) scale(1.06)!important;}

/* Home category cards now point to the matching WooCommerce product category. */
.ps-category-card{cursor:pointer!important;}
.ps-category-card .ps-category-copy span{display:inline-flex!important;align-items:center;gap:7px;}
.ps-category-card:hover .ps-category-copy span{gap:11px;}

/* Four-card favourites grid. */
.ps-favourites .ps-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}

/* Product-card wishlist: icon only, filled red heart when saved. */
.ps-product-card-wishlist{position:absolute!important;top:13px!important;width:42px!important;height:42px!important;border:1px solid rgba(14,51,71,.08)!important;border-radius:50%!important;background:rgba(255,255,255,.96)!important;place-items:center!important;z-index:8!important;color:var(--ps-coral)!important;box-shadow:0 10px 24px rgba(14,51,71,.13)!important;transition:transform .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease!important;padding:0!important;}
.ps-product-card-wishlist .ps-wishlist-heart{font-size:22px!important;line-height:1!important;display:block!important;}
.ps-product-card-wishlist.is-added{background:var(--ps-coral)!important;color:#fff!important;border-color:var(--ps-coral)!important;box-shadow:0 12px 26px rgba(232,93,73,.25)!important;}
.ps-product-card-wishlist:hover{transform:translateY(-2px) scale(1.06)!important;}

.ps-shop-results ul.products li.product{position:relative!important;}
.ps-shop-results ul.products li.product .ps-product-card-wishlist{display:grid!important;}

/* Shop grid: keep the custom left filter and product list clean, with no duplicate sorter UI. */
.ps-shop-results .woocommerce-ordering,
.ps-shop-results .woocommerce-result-count{display:none!important;}
.ps-shop-results ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.ps-shop-sidebar .ps-shop-filter{background:#fff!important;border:1px solid var(--ps-line)!important;border-radius:22px!important;box-shadow:var(--ps-shadow-md)!important;}
.ps-shop-sidebar .ps-filter-field>span,
.ps-shop-sidebar .ps-filter-price-group>span{font-size:11px!important;font-weight:500!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:#7b878c!important;}

/* Product details: never allow Description/Reviews to share the designer's grid row. */

/* Header/mobile overflow protection. */
.site-header,
.site-header .header-inner,
.site-header .header-actions,
.site-header .primary-nav{min-width:0!important;}
.site-header .header-inner{overflow:visible!important;}
.site-header .header-actions{flex-shrink:0!important;}
.site-header .primary-nav>ul{max-width:100%!important;}

@media(max-width:760px){.site-header .header-icon-link{width:38px!important;height:38px!important;}.ps-favourites .ps-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:480px){.site-header .brand-large .site-logo{height:40px!important;max-width:150px!important;}.site-header .header-actions{gap:4px!important;}.site-header .header-icon-link{width:36px!important;height:36px!important;}.ps-favourites .ps-product-grid{grid-template-columns:1fr!important;}}

/* Keep the inner-hero clean; no decorative bottom-left line. */
.ps-inner-hero-content:after{display:none!important;content:none!important;animation:none!important;}

@media(max-width:1024px){
  .ps-home .ps-hero-slide{min-height:640px!important;height:auto!important;position:relative!important;display:none!important;grid-template-columns:1fr!important;transform:none!important;visibility:hidden!important;}
  .ps-home .ps-hero-slide.is-active{display:grid!important;visibility:visible!important;position:relative!important;}
  .ps-home .ps-hero-slides,
.ps-home .ps-hero-slider{min-height:0!important;}
  .ps-home .ps-hero-media{min-height:390px!important;height:390px!important;}
}
@media(prefers-reduced-motion:reduce){.ps-trust-strip .trust-item,
.ps-product-card-wishlist{transition:none!important;}}

/* Navigation dropdown for Shop categories */
.primary-nav li.menu-item-has-children{position:relative;}
.primary-nav li.menu-item-has-children>a{padding-right:18px;}
.primary-nav li.menu-item-has-children>a:before{content:"⌄";position:absolute;right:0;top:50%;transform:translateY(-55%);font-size:13px;color:var(--ps-coral);opacity:.8;}
.primary-nav li.menu-item-has-children>.sub-menu{position:absolute;left:50%;top:calc(100% + 14px);transform:translateX(-50%) translateY(8px);min-width:220px;padding:9px;background:#fff;border:1px solid var(--ps-line);border-radius:16px;box-shadow:0 20px 50px rgba(14,51,71,.14);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:1005;}
.primary-nav li.menu-item-has-children:hover>.sub-menu,
.primary-nav li.menu-item-has-children:focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);}
.primary-nav li.menu-item-has-children>.sub-menu li a{display:block;padding:9px 11px;border-radius:10px;color:var(--ps-navy)!important;white-space:nowrap;}
.primary-nav li.menu-item-has-children>.sub-menu li a:hover{background:var(--ps-coral-soft);color:var(--ps-coral-dark)!important;}
.primary-nav li.menu-item-has-children>.sub-menu li a:after{display:none;}
@media(max-width:1180px){.primary-nav li.menu-item-has-children>.sub-menu{position:static;transform:none;opacity:1;visibility:visible;pointer-events:auto;box-shadow:none;border:0;padding:0 0 0 10px;min-width:0;background:transparent;}.primary-nav li.menu-item-has-children>a:before{display:none;}}

/* ---------- Home hero: full-bleed image + left editorial overlay ---------- */
.ps-home .ps-hero-slider{width:100%!important;max-width:none!important;min-height:720px!important;height:min(78vh,820px)!important;box-shadow:none!important;}

.ps-home .ps-hero-slide{position:absolute!important;inset:0!important;width:100%!important;display:block!important;background:#0e3347!important;overflow:hidden!important;}
.ps-home .ps-hero-slide::before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(7,25,38,.88) 0%,rgba(7,25,38,.68) 34%,rgba(7,25,38,.22) 67%,rgba(7,25,38,.03) 100%);pointer-events:none;}
.ps-home .ps-hero-slide::after{content:"";position:absolute;right:8%;top:15%;width:110px;height:110px;border:1px solid rgba(255,255,255,.25);border-radius:50%;box-shadow:0 0 0 18px rgba(255,255,255,.035);animation:psHeroOrbit 7s ease-in-out infinite;z-index:2;pointer-events:none;}
.ps-home .ps-hero-media{inset:0!important;width:100%!important;}
.ps-home .ps-hero-media img{display:block!important;max-width:none!important;}
.ps-home .ps-hero-copy{width:min(1180px,calc(100% - 40px))!important;height:100%!important;min-height:0!important;margin:0 auto!important;padding:72px 0 92px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;color:#fff!important;isolation:auto!important;}
.ps-home .ps-hero-copy::before,
.ps-home .ps-hero-copy::after{display:none!important;content:none!important;animation:none!important;}
.ps-home .ps-hero-copy .badge{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.24)!important;box-shadow:none!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);width:max-content!important;}
.ps-home .ps-hero-copy h1{letter-spacing:-.055em!important;text-wrap:balance;}

.ps-home .ps-hero-copy p{color:rgba(255,255,255,.82)!important;}
.ps-home .hero-actions{margin-top:28px!important;display:flex!important;gap:12px!important;flex-wrap:wrap!important;}
.ps-home .hero-actions .btn{border-radius:14px!important;}
.ps-home .hero-actions .btn-primary{background:var(--ps-coral)!important;border-color:var(--ps-coral)!important;box-shadow:0 16px 34px rgba(0,0,0,.18)!important;}
.ps-home .hero-actions .btn-primary:hover{background:var(--ps-red)!important;border-color:var(--ps-red)!important;transform:translateY(-3px)!important;}
.ps-home .hero-actions .ps-hero-outline-btn{color:var(--ps-navy)!important;border:1px solid #fff!important;box-shadow:0 12px 28px rgba(0,0,0,.12)!important;position:relative!important;overflow:hidden!important;}
.ps-home .hero-actions .ps-hero-outline-btn::before{background:var(--ps-coral);transition:transform .38s cubic-bezier(.2,.8,.2,1);}
.ps-home .hero-actions .ps-hero-outline-btn:hover{border-color:var(--ps-coral)!important;transform:translateY(-3px)!important;}
.ps-home .hero-actions .btn span{display:inline-block!important;font-size:1.1em!important;}
.ps-home .hero-mini-proof{display:flex!important;flex-wrap:wrap!important;color:rgba(255,255,255,.78)!important;font-size:13px!important;}
.ps-home .hero-mini-proof span{position:relative!important;}
.ps-home .hero-mini-proof span::before{content:"";position:absolute;left:-9px;top:50%;width:3px;transform:translateY(-50%);}
.ps-home .ps-hero-arrow{background:rgba(255,255,255,.92)!important;border:1px solid rgba(255,255,255,.8)!important;box-shadow:0 12px 28px rgba(0,0,0,.14)!important;}
.ps-home .ps-hero-arrow:hover{background:var(--ps-coral)!important;color:#fff!important;border-color:var(--ps-coral)!important;transform:translateY(-50%) scale(1.06)!important;}

.ps-home .ps-hero-dots button{background:rgba(255,255,255,.45)!important;}

/* Pure slide transition — no blur/fade/zoom. */
.ps-home .ps-hero-slide{transform:translate3d(100%,0,0)!important;transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear .72s!important;will-change:transform;}
.ps-home .ps-hero-slide.is-active{transform:translate3d(0,0,0)!important;transition:transform .72s cubic-bezier(.77,0,.18,1),visibility 0s linear 0s!important;}
.ps-home .ps-hero-slide.is-out-left{visibility:visible!important;transform:translate3d(-100%,0,0)!important;}
.ps-home .ps-hero-slide.is-out-right{visibility:visible!important;transform:translate3d(100%,0,0)!important;}
.ps-home .ps-hero-slide.is-in-left{visibility:visible!important;transform:translate3d(-100%,0,0)!important;transition:none!important;}
.ps-home .ps-hero-slide.is-in-right{visibility:visible!important;transform:translate3d(100%,0,0)!important;transition:none!important;}
@keyframes psHeroOrbit{0%,100%{transform:translate3d(0,0,0) rotate(0deg);opacity:.45}50%{transform:translate3d(-14px,12px,0) rotate(18deg);opacity:.9}}

/* ---------- Trust strip: premium cards instead of plain boxes ---------- */

.ps-trust-strip .trust-item{border:1px solid #e8ddd4!important;box-shadow:0 8px 24px rgba(14,51,71,.05)!important;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;}
.ps-trust-strip .trust-item::after{right:-22px;top:-22px;border-radius:50%;border:1px solid rgba(232,93,73,.15);animation:trustOrb 5s ease-in-out infinite;}
.ps-trust-strip .trust-item:hover{transform:translateY(-5px)!important;box-shadow:0 18px 40px rgba(14,51,71,.11)!important;}
.ps-trust-strip .trust-icon{animation:trustIcon 4s ease-in-out infinite;}
.ps-trust-strip .trust-item:nth-child(2) .trust-icon{animation-delay:.6s;}.ps-trust-strip .trust-item:nth-child(3) .trust-icon{animation-delay:1.2s;}.ps-trust-strip .trust-item:nth-child(4) .trust-icon{animation-delay:1.8s;}
.ps-trust-strip .trust-item strong{display:block!important;line-height:1.2!important;margin-bottom:3px!important;}
.ps-trust-strip .trust-item br{display:none!important;}
.ps-trust-strip .trust-item div>span{font-size:12px!important;color:#77838a!important;}
@keyframes trustIcon{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-3px) rotate(-3deg)}}
@keyframes trustOrb{0%,100%{transform:scale(.85);opacity:.3}50%{transform:scale(1.1);opacity:.7}}

/* ---------- Category cards: dynamic content remains visually consistent ---------- */

.ps-category-card{background:#fff!important;border:1px solid #e8e0d8!important;border-radius:22px!important;overflow:hidden!important;box-shadow:0 12px 34px rgba(14,51,71,.06)!important;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease!important;}
.ps-category-card:hover{transform:translateY(-8px)!important;border-color:#d8c8bc!important;box-shadow:0 26px 58px rgba(14,51,71,.13)!important;}
.ps-category-image{aspect-ratio:1.35!important;background:#f1ece6!important;overflow:hidden!important;}
.ps-category-image img{width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .65s cubic-bezier(.2,.8,.2,1)!important;}
.ps-category-card:hover .ps-category-image img{transform:scale(1.055)!important;}
.ps-category-copy{padding:21px 21px 23px!important;}
.ps-category-copy h3{font-size:20px!important;color:var(--ps-navy)!important;margin:0 0 7px!important;}
.ps-category-copy p{min-height:50px!important;color:#6f7c82!important;font-size:13px!important;line-height:1.55!important;margin:0 0 15px!important;}
.ps-category-copy span{font-size:12px!important;font-weight:900!important;color:var(--ps-coral)!important;}

/* ---------- Product detail: absolute separation between designer and tabs ---------- */

/* ---------- Header / mobile menu ---------- */
.site-header .menu-toggle{box-shadow:0 8px 20px rgba(14,51,71,.06)!important;}
.site-header .menu-toggle span{transition:transform .22s ease,opacity .22s ease!important;}
.site-header .menu-toggle:hover{border-color:var(--ps-coral)!important;background:#fff8f5!important;}
.site-header .header-icon-link{overflow:visible!important;}
@media(max-width:1180px){.site-header .header-actions{max-width:100%!important;}.site-header .header-login,
.site-header .header-account-pill,
.site-header .header-logout,
.site-header .header-register{display:none!important;}}
@media(max-width:700px){.site-header .header-inner{height:70px!important;min-height:70px!important;}.site-header .brand-large .site-logo{height:40px!important;max-width:150px!important;}.site-header .header-actions{gap:4px!important;}.site-header .header-icon-link{width:37px!important;height:37px!important;}.site-header .menu-toggle{flex:0 0 37px!important;}.site-header .mobile-panel{left:10px!important;right:10px!important;top:70px!important;max-height:calc(100vh - 84px)!important;overflow:auto!important;}}

/* ---------- Footer visual polish ---------- */
.site-footer{position:relative!important;overflow:hidden!important;background:linear-gradient(135deg,#082b3d 0%,#0e3347 62%,#153f53 100%)!important;}
.site-footer::before,
.site-footer::after{content:"";position:absolute;border-radius:50%;pointer-events:none;}
.site-footer::before{width:360px;height:360px;right:-130px;top:-180px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 22px rgba(255,255,255,.025),0 0 0 44px rgba(255,255,255,.018);animation:footerOrb 9s ease-in-out infinite;}
.site-footer::after{width:170px;height:170px;left:-75px;bottom:-80px;background:rgba(232,93,73,.10);animation:footerGlow 7s ease-in-out infinite;}
.site-footer .container{position:relative;z-index:2;}
.site-footer .footer-brand .site-logo{height:48px!important;filter:none!important;opacity:1!important;}
.site-footer .footer-title{color:#fff!important;letter-spacing:.12em!important;}
.site-footer .footer-links a{transition:transform .2s ease,color .2s ease!important;display:inline-block!important;}.site-footer .footer-links a:hover{color:#ffd0c7!important;transform:translateX(4px)!important;}
@keyframes footerOrb{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-16px,14px) rotate(12deg)}}
@keyframes footerGlow{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.08);opacity:1}}

@media(max-width:900px){.ps-home .ps-hero-slider{height:720px!important;}.ps-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.ps-trust-strip .trust-item{border-right:0!important;}}
@media(max-width:620px){.ps-home .ps-hero-slider{height:680px!important;min-height:680px!important;}.ps-home .ps-hero-copy{width:calc(100% - 28px)!important;}.ps-home .ps-hero-copy h1{font-size:42px!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}.ps-home .ps-hero-slide::after{width:70px;height:70px;right:7%;top:9%;}.ps-home .hero-actions{gap:9px!important;}.ps-home .hero-actions .btn{min-height:50px!important;padding:0 17px!important;}.ps-home .hero-mini-proof{gap:8px 16px!important;font-size:11px!important;margin-top:12px!important;}.ps-category-grid{grid-template-columns:1fr!important;}.ps-trust-strip .trust-item{min-height:76px!important;}}

@media(prefers-reduced-motion:reduce){.ps-home .ps-hero-slide::after,
.ps-trust-strip .trust-icon,
.ps-trust-strip .trust-item::after,
.site-footer::before,
.site-footer::after{animation:none!important;}}
/* Prevent duplicate arrow pseudo-content on the hero outline CTA. */
.ps-home .hero-actions .ps-hero-outline-btn::after,
.ps-home .hero-actions .btn-secondary::after{content:none!important;display:none!important;animation:none!important;background:none!important;}

/* Shop menu owns live product categories. */
.primary-nav .primary-menu>li.menu-item-has-children>a::after{content:"⌄";font-size:11px;margin-left:6px;opacity:.65;}
.primary-nav .primary-menu .ps-dynamic-shop-category a{font-size:13px!important;font-weight:700!important;}

/* Hero CTA buttons stay in the PrintStrokes blue family. */
.ps-home .hero-actions .btn-primary{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;box-shadow:0 14px 30px rgba(40,87,135,.24)!important;}
.ps-home .hero-actions .btn-primary:hover{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;transform:translateY(-2px);}
.ps-home .hero-actions .ps-hero-outline-btn{background:#fff!important;color:var(--ps-blue)!important;border:1px solid var(--ps-blue)!important;box-shadow:0 10px 24px rgba(15,49,88,.12)!important;position:relative;overflow:hidden;}
.ps-home .hero-actions .ps-hero-outline-btn::before{content:"";position:absolute;inset:0;transform:translateX(-102%);background:var(--ps-blue);transition:transform .32s ease;z-index:0;}
.ps-home .hero-actions .ps-hero-outline-btn>*{position:relative;z-index:1;}
.ps-home .hero-actions .ps-hero-outline-btn{z-index:1;}
.ps-home .hero-actions .ps-hero-outline-btn:hover{color:#fff!important;border-color:var(--ps-blue)!important;}
.ps-home .hero-actions .ps-hero-outline-btn:hover::before{transform:translateX(0);}
.ps-home .hero-actions .ps-hero-outline-btn span{position:relative;z-index:2;}

/* Compact but highly visible hero proof chips. */
.ps-home .hero-mini-proof{gap:8px 16px!important;margin-top:12px!important;align-items:center!important;}
.ps-home .hero-mini-proof span{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#52636e!important;backdrop-filter:blur(6px)!important;box-shadow:none!important;background-color:transparent!important;min-height:0!important;height:auto!important;white-space:nowrap!important;}
.ps-home .hero-mini-proof span b{display:inline-grid;place-items:center;width:18px;height:auto!important;border-radius:0!important;background:transparent!important;color:#52636e!important;font-size:11px;background-color:transparent!important;box-shadow:none!important;border:0!important;padding:0!important;min-height:0!important;white-space:nowrap!important;}
.ps-home .hero-mini-proof span::before{display:none!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;min-height:0!important;height:auto!important;color:#52636e!important;white-space:nowrap!important;}

/* Product detail: description, reviews and supporting content never sit in the
   same grid row as the designer/gallery. */

/* Product information hierarchy. The short description is moved immediately
   below the title by PHP and gets a premium editorial treatment. */

/* Product-page educational content. */

.ps-product-step-no{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;background:#eef5fb;color:#285787;font-weight:900;font-size:12px;letter-spacing:.08em;}

@keyframes psProductOrb{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}50%{transform:translate3d(-8px,-8px,0) rotate(8deg)}}

/* Category archives use the exact same left-filter/right-products experience as Shop. */

@media(max-width:480px){
  .ps-home .hero-mini-proof span{font-size:10px!important;padding:0!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;min-height:0!important;height:auto!important;color:#52636e!important;white-space:nowrap!important;}.ps-home .hero-mini-proof span b{width:16px;height:auto!important;font-size:10px;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;min-height:0!important;color:#52636e!important;white-space:nowrap!important;}
  
}

/* Shop dropdown: categories live under Shop only. */
@media (min-width:1181px){
  .primary-nav .primary-menu > li.menu-item-has-children{position:relative;}
  .primary-nav .primary-menu > li.menu-item-has-children > a{padding-right:17px;}
  .primary-nav .primary-menu > li.menu-item-has-children > a::before{content:"⌄";position:absolute;right:0;top:50%;transform:translateY(-52%);font-size:12px;color:var(--ps-coral);font-weight:900;}
  .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu{position:absolute;left:50%;top:calc(100% + 12px);transform:translate(-50%,8px);display:block!important;min-width:245px;margin:0;padding:8px;background:#fff;border:1px solid var(--ps-line);border-radius:16px;box-shadow:0 22px 55px rgba(14,51,71,.16);opacity:0;visibility:hidden;pointer-events:none;z-index:1200;transition:opacity .2s ease,transform .2s ease;}
  .primary-nav .primary-menu > li.menu-item-has-children:hover > .sub-menu,
.primary-nav .primary-menu > li.menu-item-has-children:focus-within > .sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);}
  .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu li{display:block;width:100%;margin:0;padding:0;}
  .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu a{display:flex!important;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 13px;border-radius:10px;color:var(--ps-navy)!important;font-size:13px!important;font-weight:800!important;white-space:nowrap;}
  .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu a:hover{background:var(--ps-coral-soft);color:var(--ps-coral)!important;}
  .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu a::after{content:"→";position:static;display:block!important;background:none!important;height:auto!important;transform:none!important;opacity:0;transition:opacity .2s ease;}
  .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu a:hover::after{opacity:1;}
}

/* Hero secondary action — consistent blue treatment, no blank hover state. */
.ps-home-hero .ps-hero-outline-btn{position:relative;overflow:hidden;background:#fff!important;color:var(--ps-navy)!important;border:1.5px solid var(--ps-navy)!important;box-shadow:none!important;isolation:isolate;}
.ps-home-hero .ps-hero-outline-btn::before{content:"";position:absolute;inset:0;background:var(--ps-navy);transform:translateX(-101%);transition:transform .3s ease;z-index:-1;}
.ps-home-hero .ps-hero-outline-btn:hover{color:#fff!important;border-color:var(--ps-navy)!important;transform:translateY(-3px);}
.ps-home-hero .ps-hero-outline-btn:hover::before{transform:translateX(0);}
.ps-home-hero .ps-hero-outline-btn span{position:relative;z-index:2;}

/* Trust cards: compact, premium, deliberate hover instead of oversized blocks. */

.ps-trust-strip .trust-item{border:1px solid #e8e1d9!important;box-shadow:0 7px 22px rgba(14,51,71,.035);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;}
.ps-trust-strip .trust-item::after{content:"";position:absolute;left:0;bottom:0;width:42px;height:3px;background:var(--ps-coral);transform:scaleX(.35);transform-origin:left;transition:transform .3s ease;}
.ps-trust-strip .trust-item:hover{transform:translateY(-4px);border-color:#d8e1e5!important;box-shadow:0 15px 34px rgba(14,51,71,.09);}
.ps-trust-strip .trust-item:hover::after{transform:scaleX(1);}

.ps-trust-strip .trust-item strong{display:block;margin-bottom:2px;}

/* Six-card homepage category row + dynamic category directory. */
.ps-categories .section-head-row{align-items:flex-end;}
.ps-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;}
.ps-category-card{height:100%;text-decoration:none!important;}
.ps-category-copy{min-height:156px;display:flex;flex-direction:column;align-items:flex-start;}
.ps-category-copy span{margin-top:auto;}
.ps-category-directory-hero{min-height:430px;background-image:url("assets/images/inner-hero-memory.webp");background-size:cover;background-position:center;}
.ps-category-directory-grid{display:grid;}
.ps-category-directory-card{border:1px solid var(--ps-line);overflow:hidden;box-shadow:0 12px 35px rgba(14,51,71,.05);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.ps-category-directory-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(14,51,71,.11);border-color:#cfdde3;}
.ps-category-directory-image{display:block;position:relative;overflow:hidden;background:#f1f5f7;}
.ps-category-directory-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease;}
.ps-category-directory-card:hover .ps-category-directory-image img{transform:scale(1.055);}
.ps-category-directory-arrow{position:absolute;right:14px;bottom:14px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ps-navy);font-weight:900;box-shadow:0 10px 25px rgba(14,51,71,.14);transition:transform .25s ease;}
.ps-category-directory-card:hover .ps-category-directory-arrow{transform:translate(2px,-2px);}

.ps-category-count{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:var(--ps-coral);}
.ps-category-directory-copy h3{line-height:1.05;}
.ps-category-directory-copy h3 a{color:var(--ps-navy);text-decoration:none;}
.ps-category-directory-copy p{font-size:13px;line-height:1.65;color:var(--ps-muted);margin:0 0 15px;}
.ps-category-directory-copy .text-link{color:var(--ps-navy);font-weight:900;text-decoration:none;}

/* Individual WooCommerce product-category archive. */
.ps-category-archive-hero{position:relative;min-height:470px;display:flex;align-items:center;overflow:hidden;background:var(--ps-navy);}
.ps-category-archive-media{position:absolute;inset:0;}
.ps-category-archive-media img{width:100%;height:100%;object-fit:cover;object-position:center;}
.ps-category-archive-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,31,44,.91) 0%,rgba(8,31,44,.70) 42%,rgba(8,31,44,.20) 100%);}
.ps-category-archive-content{position:relative;z-index:2;padding-top:80px;padding-bottom:80px;color:#fff;}
.ps-category-archive-content h1{max-width:760px;margin:10px 0 16px;color:#fff;font-size:clamp(48px,6vw,76px);line-height:.98;}
.ps-category-archive-content p{max-width:650px;color:rgba(255,255,255,.78);font-size:17px;line-height:1.8;}
.ps-category-archive-actions{flex-wrap:wrap;}
.ps-category-archive-actions .btn-light{border:1px solid rgba(255,255,255,.7)!important;}
.ps-category-products-shell{background:#fffdf9;}

/* Product detail: clear primary purchase row, description below title, reviews below. */

.ps-product-description-card{margin:20px 0 6px;padding:22px 23px;border:1px solid var(--ps-line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(14,51,71,.045);}
.ps-product-description-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:var(--ps-coral);margin-bottom:7px;}
.ps-product-description-card h2{font-family:var(--ps-font-heading);color:var(--ps-navy);font-size:27px;line-height:1.1;margin:0 0 10px;}
.ps-product-description-content{font-size:13px;line-height:1.75;color:#65757b;}
.ps-product-description-content p:last-child{margin-bottom:0;}

/* Removed the legacy #review_form frame; the modern review card owns its appearance. */

/* Prevent plugin/theme gallery internals from reserving a second blank block. */

@media(max-width:1050px){
  .ps-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .ps-category-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  
}
@media(max-width:780px){
  .ps-trust-strip .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ps-category-grid,
.ps-category-directory-grid{grid-template-columns:1fr!important;}
  .ps-category-archive-content{padding-top:65px;padding-bottom:65px;}
  .ps-category-archive-hero{min-height:430px;}
  .ps-category-archive-overlay{background:linear-gradient(90deg,rgba(8,31,44,.91),rgba(8,31,44,.64));}

}
@media(max-width:520px){
  .ps-trust-strip .trust-grid{grid-template-columns:1fr;}
  .ps-trust-strip .trust-item{min-height:68px;}
  .ps-home-hero .ps-hero-outline-btn{width:100%;}
  .ps-category-directory-copy h3{font-size:25px;}

}
@media (min-width:1181px){
  .primary-nav .fallback-nav-list > li.menu-item-has-children{position:relative;}
  .primary-nav .fallback-nav-list > li.menu-item-has-children > .sub-menu{position:absolute;left:50%;top:calc(100% + 12px);transform:translate(-50%,8px);min-width:245px;padding:8px;margin:0;background:#fff;border:1px solid var(--ps-line);border-radius:16px;box-shadow:0 22px 55px rgba(14,51,71,.16);opacity:0;visibility:hidden;pointer-events:none;z-index:1200;transition:.2s ease;}
  .primary-nav .fallback-nav-list > li.menu-item-has-children:hover > .sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0);}
  .primary-nav .fallback-nav-list > li.menu-item-has-children > .sub-menu li{list-style:none;}
  .primary-nav .fallback-nav-list > li.menu-item-has-children > .sub-menu a{display:block;padding:11px 13px;border-radius:10px;color:var(--ps-navy)!important;}
  .primary-nav .fallback-nav-list > li.menu-item-has-children > .sub-menu a:hover{background:var(--ps-coral-soft);}
}

:root{--ps-action:#164f9c;--ps-action-dark:#103e7d;--ps-action-soft:#edf4ff;}

/* Shop -> category hierarchy: never show categories as a separate top-level menu. */
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu{display:block!important;position:absolute!important;left:50%!important;top:calc(100% + 10px)!important;transform:translate(-50%,8px)!important;min-width:250px!important;margin:0!important;padding:8px!important;background:#fff!important;border:1px solid #e5eaf0!important;border-radius:16px!important;box-shadow:0 24px 60px rgba(14,51,71,.17)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:5000!important;transition:opacity .18s ease,transform .18s ease!important;}
.primary-nav .primary-menu>li.ps-shop-parent:hover>.sub-menu,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>.sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li{display:block!important;list-style:none!important;margin:0!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:12px 14px!important;border-radius:10px!important;color:var(--ps-navy)!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover{background:var(--ps-action-soft)!important;color:var(--ps-action)!important;}
.primary-nav .primary-menu>li.ps-shop-parent>a:after{content:"⌄"!important;margin-left:7px!important;color:var(--ps-action)!important;font-size:11px!important;}

/* Home hero: full-bleed editorial image with a readable left overlay. */
.ps-home-hero{width:100%!important;max-width:2000px!important;margin:0 auto!important;min-height:680px!important;border:0!important;}
.ps-home-hero .ps-hero-slides{position:relative!important;width:100%!important;height:680px!important;min-height:680px!important;margin:0!important;overflow:hidden!important;}
.ps-home-hero .ps-hero-track{position:relative!important;width:100%!important;height:100%!important;}
.ps-home-hero .ps-hero-slide{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:680px!important;padding:0!important;opacity:0!important;visibility:hidden!important;transform:translate3d(100%,0,0)!important;transition:transform .72s cubic-bezier(.76,0,.24,1),opacity .72s ease,visibility 0s linear .72s!important;z-index:1!important;background:#0e3347!important;}
.ps-home-hero .ps-hero-slide.is-active{opacity:1!important;visibility:visible!important;transform:translate3d(0,0,0)!important;z-index:2!important;transition:transform .72s cubic-bezier(.76,0,.24,1),opacity .72s ease!important;}
.ps-home-hero .ps-hero-slide.is-in-left{opacity:1!important;visibility:visible!important;transform:translate3d(-100%,0,0)!important;z-index:3!important;}
.ps-home-hero .ps-hero-slide.is-in-right{opacity:1!important;visibility:visible!important;transform:translate3d(100%,0,0)!important;z-index:3!important;}
.ps-home-hero .ps-hero-slide.is-out-left{opacity:1!important;visibility:visible!important;transform:translate3d(-100%,0,0)!important;z-index:2!important;}
.ps-home-hero .ps-hero-slide.is-out-right{opacity:1!important;visibility:visible!important;transform:translate3d(100%,0,0)!important;z-index:2!important;}
.ps-home-hero .ps-hero-media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;border-radius:0!important;overflow:hidden!important;z-index:0!important;}
.ps-home-hero .ps-hero-media:before{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(7,28,42,.86) 0%,rgba(7,28,42,.68) 30%,rgba(7,28,42,.22) 62%,rgba(7,28,42,.08) 100%)!important;z-index:1!important;}
.ps-home-hero .ps-hero-media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;transform:none!important;animation:none!important;}
.ps-home-hero .ps-hero-copy{position:relative!important;z-index:3!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;width:min(760px,62%)!important;height:100%!important;max-width:760px!important;padding:64px 40px 70px max(32px,calc((100vw - 1240px)/2 + 12px))!important;color:#fff!important;}
.ps-home-hero .ps-hero-copy .badge{width:max-content!important;max-width:100%!important;display:inline-flex!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.26)!important;backdrop-filter:blur(10px)!important;}
.ps-home-hero .ps-hero-copy h1{max-width:680px!important;line-height:.98!important;}

.ps-home-hero .ps-hero-copy p{max-width:620px!important;color:rgba(255,255,255,.86)!important;font-size:17px!important;line-height:1.75!important;}
.ps-home-hero .hero-actions{display:flex!important;gap:12px!important;margin-top:24px!important;flex-wrap:wrap!important;}
.ps-home-hero .hero-actions .btn{min-height:48px!important;padding:0 22px!important;border-radius:999px!important;position:relative!important;overflow:hidden!important;isolation:isolate!important;transition:color .25s ease,border-color .25s ease,transform .25s ease!important;}
.ps-home-hero .hero-actions .btn:before{content:""!important;position:absolute!important;inset:0!important;background:var(--ps-blue)!important;transform:translateX(-102%)!important;transition:transform .28s cubic-bezier(.2,.8,.2,1)!important;z-index:-1!important;}
.ps-home-hero .hero-actions .btn:hover:before,
.ps-home-hero .hero-actions .btn:focus-visible:before{transform:translateX(0)!important;}
.ps-home-hero .hero-actions .btn-primary{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;}
.ps-home-hero .hero-actions .ps-hero-outline-btn{background:#fff!important;border:1px solid var(--ps-blue)!important;color:var(--ps-blue)!important;}
.ps-home-hero .hero-actions .ps-hero-outline-btn:before{background:var(--ps-blue)!important;}
.ps-home-hero .hero-actions .ps-hero-outline-btn:hover,
.ps-home-hero .hero-actions .ps-hero-outline-btn:focus-visible{color:#fff!important;border-color:var(--ps-blue)!important;transform:translateY(-2px)!important;}
.ps-home-hero .hero-actions .btn span{position:relative!important;z-index:2!important;}
.ps-home-hero .hero-mini-proof{display:flex!important;flex-wrap:wrap!important;font-size:12px!important;}
.ps-home-hero .hero-mini-proof span{display:inline-flex!important;align-items:center!important;gap:6px!important;}

.ps-home-hero .ps-hero-arrow{z-index:8!important;top:50%!important;width:48px!important;height:48px!important;background:#fff!important;border:1px solid rgba(22,79,156,.35)!important;color:var(--ps-blue)!important;box-shadow:0 16px 40px rgba(0,0,0,.18)!important;}
.ps-home-hero .ps-hero-arrow:hover{background:var(--ps-blue)!important;color:#fff!important;border-color:var(--ps-blue)!important;}
.ps-home-hero .ps-hero-prev{left:22px!important;}.ps-home-hero .ps-hero-next{right:22px!important;}
.ps-home-hero .ps-hero-dots{z-index:8!important;bottom:22px!important;}
.ps-home-hero .ps-hero-dots button.is-active{background:var(--ps-blue)!important;}

/* Trust cards: premium, quiet, interactive. */
.ps-trust-strip{position:relative!important;z-index:4!important;border-top:1px solid #edf0f3!important;border-bottom:1px solid #edf0f3!important;}

.ps-trust-strip .trust-item{position:relative!important;display:flex!important;align-items:center!important;gap:14px!important;border-right:1px solid #edf0f3!important;transition:transform .3s ease,background .3s ease,box-shadow .3s ease!important;overflow:hidden!important;}
.ps-trust-strip .trust-item:last-child{border-right:0!important;}
.ps-trust-strip .trust-item:after{content:""!important;position:absolute!important;left:22px!important;right:22px!important;bottom:0!important;height:3px!important;background:#164f9c!important;transform:scaleX(0)!important;transform-origin:left!important;transition:transform .3s ease!important;}
.ps-trust-strip .trust-item:hover{transform:translateY(-4px)!important;background:#f7faff!important;box-shadow:0 14px 32px rgba(14,51,71,.08)!important;z-index:2!important;}
.ps-trust-strip .trust-item:hover:after{transform:scaleX(1)!important;}
.ps-trust-strip .trust-icon{flex:0 0 46px!important;width:46px!important;height:46px!important;border-radius:14px!important;background:#edf4ff!important;color:#164f9c!important;display:grid!important;place-items:center!important;font-size:20px!important;font-weight:900!important;transition:transform .3s ease,background .3s ease,color .3s ease!important;}
.ps-trust-strip .trust-item:hover .trust-icon{transform:rotate(-5deg) scale(1.06)!important;background:#164f9c!important;color:#fff!important;}
.ps-trust-strip .trust-item strong{font-size:13px!important;color:#0e3347!important;}
.ps-trust-strip .trust-item div span{font-size:11px!important;color:#6a7880!important;}

/* Product description is structurally in the summary; Reviews remains in the tabs below. */

@media(max-width:900px){
 .ps-home-hero,
.ps-home-hero .ps-hero-slides,
.ps-home-hero .ps-hero-slide{min-height:620px!important;height:620px!important;}
 .ps-home-hero .ps-hero-copy{padding-left:32px!important;}
 .ps-trust-strip .trust-item:nth-child(2){border-right:0!important;}
}
@media(max-width:620px){
 .ps-home-hero,
.ps-home-hero .ps-hero-slides,
.ps-home-hero .ps-hero-slide{min-height:650px!important;height:650px!important;}
 .ps-home-hero .ps-hero-copy{width:100%!important;padding:42px 22px 62px!important;justify-content:flex-end!important;}
 .ps-home-hero .ps-hero-copy h1{font-size:clamp(38px,11vw,52px)!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
 .ps-home-hero .ps-hero-copy p{font-size:15px!important;}
 .ps-home-hero .hero-actions{width:100%!important;}.ps-home-hero .hero-actions .btn{width:100%!important;justify-content:center!important;}
 .ps-home-hero .ps-hero-arrow{width:40px!important;height:40px!important;}.ps-home-hero .ps-hero-prev{left:10px!important;}.ps-home-hero .ps-hero-next{right:10px!important;}
 .ps-trust-strip .trust-item{border-right:0!important;border-bottom:1px solid #edf0f3!important;}
 .ps-trust-strip .trust-item:last-child{border-bottom:0!important;}
}

/* Hero: keep the left content compact — do not enlarge the text column. */
@media (min-width: 901px){
  .ps-home-hero .ps-hero-copy{width:min(560px,50%)!important;max-width:560px!important;padding:58px 24px 64px max(24px,calc((100vw - 1240px)/2))!important;}
  .ps-home-hero .ps-hero-copy h1{max-width:555px!important;font-size:clamp(40px, 4.3vw, 60px)!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-home-hero .ps-hero-copy p{max-width:520px!important;font-size:16px!important;line-height:1.68!important;}
}

/* Shop dropdown: clean blue chevron instead of the text-style glyph. */
.primary-nav .primary-menu>li.ps-shop-parent>a:after{content:""!important;width:7px!important;height:7px!important;margin:0 0 3px 9px!important;border-right:2px solid var(--ps-blue)!important;border-bottom:2px solid var(--ps-blue)!important;transform:rotate(45deg)!important;transition:transform .2s ease,border-color .2s ease!important;}
.primary-nav .primary-menu>li.ps-shop-parent:hover>a:after,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>a:after{border-color:var(--ps-blue)!important;transform:rotate(225deg) translate(-1px,-1px)!important;}

/* Reviews: turn the default WooCommerce block into a polished review card. */

/* CTA: force the main heading to stay white against the navy panel. */

/* Shop dropdown: premium category panel with a clear blue chevron. */
.primary-nav .primary-menu>li.ps-shop-parent{position:relative!important;}
.primary-nav .primary-menu>li.ps-shop-parent>a{display:inline-flex!important;align-items:center!important;gap:9px!important;}
.primary-nav .primary-menu>li.ps-shop-parent>a:after{display:none!important;content:none!important;}
.primary-nav .primary-menu>li.ps-shop-parent>a .ps-shop-chevron{width:8px!important;height:8px!important;border-right:2px solid var(--ps-blue)!important;border-bottom:2px solid var(--ps-blue)!important;transform:rotate(45deg)!important;margin-top:-4px!important;transition:transform .2s ease,border-color .2s ease!important;}
.primary-nav .primary-menu>li.ps-shop-parent:hover>a .ps-shop-chevron,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>a .ps-shop-chevron{transform:rotate(225deg)!important;border-color:var(--ps-blue)!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown{min-width:310px!important;padding:12px!important;top:calc(100% + 14px)!important;border:1px solid #dbe6f2!important;border-radius:20px!important;background:#fff!important;box-shadow:0 26px 70px rgba(13,52,91,.20)!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown:before{content:"Shop categories"!important;display:block!important;padding:8px 11px 10px!important;color:var(--ps-blue)!important;font-size:10px!important;letter-spacing:.14em!important;text-transform:uppercase!important;font-weight:900!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown>li>a{min-height:48px!important;padding:11px 13px!important;border:1px solid transparent!important;border-radius:12px!important;background:#fff!important;color:#0e3347!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown>li>a:hover{background:#f1f7ff!important;border-color:#d8e8fb!important;color:var(--ps-blue)!important;transform:translateX(2px)!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown>li>a .ps-shop-item-arrow{color:var(--ps-blue)!important;font-size:16px!important;font-weight:900!important;opacity:.45!important;transition:opacity .2s,transform .2s!important;}
.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown>li>a:hover .ps-shop-item-arrow{opacity:1!important;transform:translateX(3px)!important;}

/* Hero: content is vertically centred but stays clearly anchored to the left. */
@media(min-width:901px){
 .ps-home-hero .ps-hero-copy{width:min(600px,50%)!important;padding:0 28px 0 max(28px,calc((100vw - 1240px)/2))!important;}
 .ps-home-hero .ps-hero-copy h1,
.ps-home-hero .ps-hero-copy p,
.ps-home-hero .hero-actions,
.ps-home-hero .hero-mini-proof{margin-left:0!important;margin-right:0!important;text-align:left!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;font-size:clamp(40px, 4.3vw, 60px)!important;margin-top:12px!important;gap:8px 16px!important;}
}

/* Product detail page: remove the stark white page field and create a layered storefront surface. */

@media(max-width:700px){.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown{min-width:270px!important;}}

/* 1) Shop navigation: real hover bridge + blue chevron + premium category cards. */
@media (min-width:1181px){
  
  .primary-nav .primary-menu>li.ps-shop-parent,
.primary-nav .primary-menu>li.menu-item-has-children:has(> .sub-menu){position:relative!important;}

  .primary-nav .primary-menu>li.ps-shop-parent>a,
.primary-nav .primary-menu>li.menu-item-has-children>a{padding-right:2px!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>a::before,
.primary-nav .primary-menu>li.menu-item-has-children>a::before{display:none!important;content:none!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>a::after,
.primary-nav .primary-menu>li.menu-item-has-children>a::after{content:""!important;display:inline-block!important;border-right:2px solid var(--ps-blue)!important;border-bottom:2px solid var(--ps-blue)!important;transform:rotate(45deg)!important;transition:transform .22s ease,border-color .22s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>a::after,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>a::after,
.primary-nav .primary-menu>li.menu-item-has-children:hover>a::after,
.primary-nav .primary-menu>li.menu-item-has-children:focus-within>a::after{transform:rotate(225deg) translate(-1px,-1px)!important;border-color:var(--ps-blue)!important;}

  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu{display:grid!important;grid-template-columns:repeat(2,minmax(170px,1fr))!important;gap:7px!important;margin:0!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:12000!important;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s!important;}
  /* Invisible hover bridge closes the gap between Shop and the dropdown. */
  .primary-nav .primary-menu>li.ps-shop-parent::after,
.primary-nav .primary-menu>li.menu-item-has-children::after{content:""!important;position:absolute!important;left:-10px!important;right:-10px!important;top:100%!important;height:16px!important;background:transparent!important;border:0!important;pointer-events:auto!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>.sub-menu,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children:hover>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children:focus-within>.sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transition-delay:0s!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu::before,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu::before{content:"SHOP CATEGORIES"!important;grid-column:1/-1!important;padding:3px 7px 7px!important;color:var(--ps-blue)!important;font-size:9px!important;line-height:1!important;font-weight:900!important;letter-spacing:.15em!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li{display:block!important;width:auto!important;margin:0!important;padding:0!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-height:52px!important;width:100%!important;padding:10px 11px 10px 39px!important;border:1px solid #edf2f7!important;border-radius:13px!important;background:#fff!important;color:#123b5a!important;font-size:12px!important;font-weight:850!important;white-space:nowrap!important;box-shadow:0 3px 10px rgba(15,49,88,.025)!important;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a::before,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a::before{content:"›"!important;position:absolute!important;left:11px!important;top:50%!important;transform:translateY(-50%)!important;display:grid!important;place-items:center!important;width:20px!important;height:20px!important;border-radius:7px!important;background:#edf5ff!important;color:var(--ps-blue)!important;font-size:10px!important;font-weight:900!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a::after,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a::after{content:"→"!important;position:static!important;display:block!important;width:auto!important;height:auto!important;margin:0!important;border:0!important;transform:none!important;background:none!important;color:var(--ps-blue)!important;font-size:13px!important;opacity:.8!important;transition:transform .18s ease,color .18s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:hover{transform:translateY(-2px)!important;border-color:#cfe2f8!important;background:#f5f9ff!important;color:var(--ps-blue)!important;box-shadow:0 10px 22px rgba(37,99,235,.10)!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover::before,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:hover::before{background:var(--ps-blue)!important;color:#fff!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover::after,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:hover::after{color:var(--ps-blue)!important;transform:translateX(3px)!important;}
}

/* 2) Home hero: wider text area while staying firmly left aligned. */
@media (min-width:901px){
  .ps-home-hero .ps-hero-copy{width:min(700px,58%)!important;padding:64px 36px 70px max(32px,calc((100vw - 1240px)/2 + 12px))!important;text-align:left!important;}
  
  .ps-home-hero .hero-actions,
.ps-home-hero .hero-mini-proof{justify-content:flex-start!important;margin-top:12px!important;gap:8px 16px!important;}
}

/* 3) Home category cards: more breathing room and a richer card surface. */
.ps-categories .ps-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important;margin-top:40px!important;}
.ps-categories .ps-category-card{position:relative!important;min-width:0!important;overflow:hidden!important;border:1px solid #dfe7ef!important;border-radius:24px!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;box-shadow:0 12px 30px rgba(15,49,88,.055)!important;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease!important;}
.ps-categories .ps-category-card:hover{transform:translateY(-8px)!important;border-color:#c7dced!important;box-shadow:0 24px 52px rgba(15,49,88,.12)!important;}
.ps-categories .ps-category-image{overflow:hidden!important;background:#eef4f8!important;}
.ps-categories .ps-category-image img{transition:transform .5s cubic-bezier(.2,.8,.2,1)!important;}
.ps-categories .ps-category-card:hover .ps-category-image img{transform:scale(1.06)!important;}
.ps-categories .ps-category-copy{padding:23px 23px 25px!important;}
.ps-categories .ps-category-copy h3{margin:0 0 7px!important;color:#103a58!important;font-size:21px!important;}
.ps-categories .ps-category-copy p{margin:0 0 15px!important;color:#687986!important;font-size:13px!important;line-height:1.7!important;}
.ps-categories .ps-category-copy span{color:#1769d1!important;font-weight:900!important;font-size:12px!important;}

/* 4) Product title: slightly smaller, cleaner hierarchy. */

/* 5) Reviews: use the full product width and remove the old narrow 860px cap. */

/* 6) Remove the extra horizontal rule below the review/content area. */

/* 7) Keep the final product-to-footer breathing room to about 100px, not 200px+. */

@media(max-width:900px){
  .ps-categories .ps-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important;}
  
}
@media(max-width:620px){
  .ps-categories .ps-category-grid{grid-template-columns:1fr!important;gap:16px!important;}
}

/* Shop: compact inline blue chevron + stable hover bridge. */
@media (min-width:1181px){
  .primary-nav .primary-menu>li.ps-shop-parent>a,
.primary-nav .primary-menu>li.menu-item-has-children>a{display:inline-flex!important;align-items:center!important;vertical-align:middle!important;gap:7px!important;line-height:1.2!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>a::after,
.primary-nav .primary-menu>li.menu-item-has-children>a::after{content:"▾"!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:12px!important;height:12px!important;margin:0!important;padding:0!important;border:0!important;background:none!important;color:var(--ps-blue)!important;font-family:var(--ps-font-body)!important;font-size:12px!important;font-weight:900!important;line-height:12px!important;transform:translateY(0)!important;transition:transform .2s ease,color .2s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>a::after,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>a::after,
.primary-nav .primary-menu>li.menu-item-has-children:hover>a::after,
.primary-nav .primary-menu>li.menu-item-has-children:focus-within>a::after{transform:rotate(180deg)!important;color:var(--ps-blue)!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu{margin-top:0!important;padding-top:16px!important;box-shadow:none!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu::before,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu::before{content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;height:22px!important;display:block!important;background:transparent!important;pointer-events:auto!important;z-index:-1!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu::after,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu::after{content:"SHOP CATEGORIES"!important;display:block!important;position:absolute!important;transform:translateY(0)!important;padding:0 7px 8px!important;color:var(--ps-blue)!important;font-size:9px!important;line-height:1!important;font-weight:900!important;letter-spacing:.15em!important;pointer-events:none!important;}
  
}

/* Hero: give the copy more usable width without moving it away from the left. */
@media (min-width:901px){
  .ps-home-hero .ps-hero-copy{width:min(820px,68%)!important;padding-right:42px!important;}

}

/* Hero outline button: blue only — no legacy coral/orange hover state. */
.ps-home-hero .hero-actions .ps-hero-outline-btn,
.ps-home-hero .hero-actions .ps-hero-outline-btn:visited{background:#fff!important;background-color:#fff!important;color:var(--ps-blue)!important;border:1px solid var(--ps-blue)!important;box-shadow:none!important;}
.ps-home-hero .hero-actions .ps-hero-outline-btn::before{display:none!important;content:none!important;}
.ps-home-hero .hero-actions .ps-hero-outline-btn:hover,
.ps-home-hero .hero-actions .ps-hero-outline-btn:focus,
.ps-home-hero .hero-actions .ps-hero-outline-btn:focus-visible,
.ps-home-hero .hero-actions .ps-hero-outline-btn:active{background:var(--ps-blue)!important;background-color:var(--ps-blue)!important;color:#fff!important;border-color:var(--ps-blue)!important;box-shadow:0 10px 24px rgba(22,79,156,.22)!important;transform:translateY(-2px)!important;}

/* Hero proof list: Gemini-like sparkle instead of circles/checks. */
.ps-home-hero .hero-mini-proof b{width:15px!important;height:15px!important;display:inline-grid!important;place-items:center!important;color:#9fd6ff!important;font-size:15px!important;line-height:1!important;font-weight:900!important;}
.ps-home-hero .hero-mini-proof b::first-letter{color:#9fd6ff!important;}

/* Trust strip: separate cards with visible breathing room. */
.ps-trust-strip .trust-grid{display:grid!important;}
.ps-trust-strip .trust-item{border:1px solid #dfe7ef!important;box-shadow:0 10px 28px rgba(15,49,88,.055)!important;}
.ps-trust-strip .trust-item:last-child{border-right:1px solid #dfe7ef!important;}

/* Product detail: less oversized title and tighter page rhythm. */

/* Reviews: smaller left panel, larger review form on the right. */

/* Product how-to section: compact bordered/dashed presentation requested. */

/* Reduce the final gap before the footer to a clean 100px total. */

@media (min-width:1181px){
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu{top:100%!important;left:50%!important;transform:translate(-50%,8px)!important;min-width:410px!important;max-width:440px!important;padding:40px 12px 12px!important;border:1px solid #d9e6f4!important;border-radius:20px!important;background:#fff!important;box-shadow:0 28px 70px rgba(10,45,82,.19),0 4px 14px rgba(10,45,82,.06)!important;overflow:visible!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>.sub-menu,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children:hover>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children:focus-within>.sub-menu{transform:translate(-50%,0)!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu::after,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu::after{top:14px!important;left:19px!important;right:19px!important;transform:none!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li:first-child,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li:first-child{margin-top:0!important;}
}

/* Global rhythm: no oversized empty bands. Keep intentional breathing room,
   but never let common sections create a >100px vertical gap. */
.ps-home > section,
.ps-account-page > section,
.ps-categories-page > section,
.blog-page > section,
.single-post-page > section,
.ps-product-category-archive > section,
.woocommerce-page-wrap > section{margin-top:0!important;margin-bottom:0!important;}
.ps-home .section,
.ps-account-page .section,
.ps-categories-page .section,
.blog-page .section,
.single-post-page .section{padding-top:72px!important;padding-bottom:72px!important;}

/* Buttons: consistent vertical rhythm everywhere. */
.btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce form .button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;height:auto!important;padding:12px 19px!important;line-height:1.15!important;margin-bottom:0!important;box-sizing:border-box!important;}

/* Use the real WordPress menu named by the store owner. */
.primary-nav .primary-menu{align-items:center!important;}

/* Shop arrow: compact, true inline blue chevron, never drops below the text. */
@media (min-width:901px){
  .primary-nav .primary-menu>li.ps-shop-parent>a,
.primary-nav .primary-menu>li.menu-item-has-children>a{display:inline-flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;line-height:1!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>a::after,
.primary-nav .primary-menu>li.menu-item-has-children>a::after{content:""!important;width:7px!important;height:7px!important;display:inline-block!important;flex:0 0 7px!important;border-right:2px solid var(--ps-blue)!important;border-bottom:2px solid var(--ps-blue)!important;transform:rotate(45deg) translateY(-1px)!important;transform-origin:center!important;margin:0 0 3px 1px!important;background:none!important;border-radius:0!important;transition:transform .22s ease,border-color .22s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>a::after,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>a::after,
.primary-nav .primary-menu>li.menu-item-has-children:hover>a::after,
.primary-nav .primary-menu>li.menu-item-has-children:focus-within>a::after{transform:rotate(225deg) translateY(-1px)!important;border-color:var(--ps-blue)!important;}
}

/* Premium Shop child panel. The invisible hover bridge belongs to the parent,
   so moving from Shop into the panel cannot close it. */
@media (min-width:901px){
  .primary-nav .primary-menu>li.ps-shop-parent,
.primary-nav .primary-menu>li.menu-item-has-children{padding-bottom:18px!important;margin-bottom:-18px!important;}
  .primary-nav .primary-menu>li.ps-shop-parent::before,
.primary-nav .primary-menu>li.menu-item-has-children::before{content:""!important;position:absolute!important;left:-24px!important;right:-24px!important;top:100%!important;height:26px!important;background:transparent!important;pointer-events:auto!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu{top:calc(100% + 0px)!important;left:50%!important;transform:translate(-50%,8px)!important;width:440px!important;min-width:440px!important;max-width:440px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:46px 14px 14px!important;border:1px solid #d9e7f1!important;border-radius:22px!important;background:rgba(255,255,255,.98)!important;box-shadow:0 26px 70px rgba(10,45,82,.18),0 6px 20px rgba(10,45,82,.07)!important;overflow:visible!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .18s ease,transform .18s ease,visibility .18s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>.sub-menu,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children:hover>.sub-menu,
.primary-nav .primary-menu>li.menu-item-has-children:focus-within>.sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu::before,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu::before{content:"SHOP CATEGORIES"!important;position:absolute!important;left:18px!important;right:18px!important;top:18px!important;height:auto!important;padding:0 4px 9px!important;border-bottom:1px solid #edf2f6!important;color:var(--ps-blue)!important;font-size:9px!important;line-height:1!important;letter-spacing:.16em!important;font-weight:900!important;background:transparent!important;z-index:2!important;pointer-events:none!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li{position:relative!important;display:block!important;margin:0!important;padding:0!important;width:auto!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a{display:flex!important;align-items:center!important;min-height:62px!important;gap:10px!important;padding:10px 12px!important;border:1px solid #edf2f6!important;border-radius:15px!important;background:#fbfdff!important;color:#123c55!important;font-size:12px!important;font-weight:800!important;line-height:1.25!important;box-sizing:border-box!important;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a::before,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a::before{content:"›"!important;width:30px!important;height:30px!important;flex:0 0 30px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#eaf4ff!important;color:var(--ps-blue)!important;font-size:13px!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a::after,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a::after{content:"→"!important;margin-left:auto!important;color:#9ab1c4!important;font-size:14px!important;transition:transform .18s ease,color .18s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:hover{transform:translateY(-2px)!important;background:#f3f8ff!important;border-color:#cfe1f4!important;color:var(--ps-blue)!important;box-shadow:0 10px 22px rgba(23,105,209,.10)!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover::after,
.primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:hover::after{transform:translateX(3px)!important;color:var(--ps-blue)!important;}
}

/* Hero: compact vertical rhythm, wider copy, less left inset. */

@media (min-width:901px){
  .ps-home .ps-hero-copy{padding:52px 42px 52px clamp(28px,5vw,66px)!important;}

  .ps-home .ps-hero-media{min-height:610px!important;}
}
/* New hero motion: soft editorial cross-fade with a tiny lift, rather than a
   hard left/right carousel sweep. */
@media (min-width:1025px){
  .ps-home .ps-hero-slide,
.ps-home .ps-hero-slide.is-out-left,
.ps-home .ps-hero-slide.is-out-right{transform:translate3d(0,0,0) scale(1.012)!important;opacity:0!important;visibility:hidden!important;transition:opacity .65s ease,transform .85s cubic-bezier(.2,.7,.2,1),visibility 0s linear .85s!important;}
  .ps-home .ps-hero-slide.is-in-left,
.ps-home .ps-hero-slide.is-in-right{transform:translate3d(0,8px,0) scale(1.008)!important;opacity:0!important;visibility:visible!important;transition:none!important;}
  .ps-home .ps-hero-slide.is-active{transform:translate3d(0,0,0) scale(1)!important;opacity:1!important;visibility:visible!important;transition:opacity .65s ease,transform .85s cubic-bezier(.2,.7,.2,1),visibility 0s linear 0s!important;}
}
.ps-home .ps-hero-copy .hero-actions{gap:12px!important;margin-top:22px!important;}
.ps-home .hero-actions .ps-hero-outline-btn:after{display:none!important;}

/* Trust cards: visible, balanced separation. */

/* Category directory: stronger editorial card treatment. */
.ps-category-directory{padding-top:64px!important;padding-bottom:72px!important;}
.ps-category-directory-head{display:flex!important;justify-content:space-between!important;gap:30px!important;margin-bottom:26px!important;}
.ps-category-directory-head .section-title{margin-top:7px!important;max-width:760px!important;}
.ps-category-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;}
.ps-category-directory-card{border-radius:24px!important;background:#fff!important;box-shadow:0 14px 38px rgba(14,51,71,.07)!important;}
.ps-category-directory-image{aspect-ratio:1.35/1!important;}
.ps-category-directory-copy{padding:22px 23px 23px!important;}
.ps-category-directory-copy h3{font-size:25px!important;margin:8px 0 8px!important;}
.ps-category-directory-copy p{min-height:44px!important;}
@media(max-width:900px){.ps-category-directory-head{align-items:flex-start;flex-direction:column;}.ps-category-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;}}
@media(max-width:620px){.ps-category-directory-grid{grid-template-columns:1fr!important;}}

/* Account: premium endpoint forms and confirmation notice. */

.ps-account-page .account-stat-grid{gap:20px!important;}
.ps-account-page .account-stat-card{min-height:106px!important;background:linear-gradient(145deg,#fff,#f8fbfe)!important;}
.ps-account-page .account-content-panel{background:#fff!important;box-shadow:0 20px 55px rgba(14,51,71,.08)!important;}
.ps-account-page .account-content-head{border-bottom:0!important;padding-bottom:10px!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content{background:transparent!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-error{margin:0 0 22px!important;border:1px solid #dbe7f1!important;border-left:4px solid #1769d1!important;border-radius:16px!important;padding:16px 18px!important;background:#f5f9fd!important;box-shadow:none!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-EditAccountForm{border:1px solid #dce7ef!important;border-radius:20px!important;padding:26px!important;background:#fff!important;box-shadow:0 14px 38px rgba(14,51,71,.06)!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content fieldset{border:1px solid #e2eaf0!important;border-radius:16px!important;padding:22px!important;margin:20px 0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content fieldset legend{padding:0 9px!important;color:#0e3347!important;font-weight:900!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .form-row label{color:#5c6d7d!important;font-size:12px!important;font-weight:800!important;margin-bottom:7px!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .input-text,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content select{min-height:48px!important;border:1px solid #d5e1ea!important;border-radius:12px!important;background:#fbfdff!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .button{margin-top:6px!important;}

/* Shop/category filters: styled selects with a controlled blue chevron. */
.ps-filter-field{position:relative!important;}
.ps-filter-field>select{appearance:none!important;-webkit-appearance:none!important;padding-right:42px!important;cursor:pointer!important;background:#fff!important;}
.ps-filter-field:has(>select)::after{content:""!important;position:absolute!important;right:15px!important;bottom:17px!important;width:7px!important;height:7px!important;border-right:2px solid #1769d1!important;border-bottom:2px solid #1769d1!important;transform:rotate(45deg)!important;pointer-events:none!important;}
.ps-custom-select{position:relative!important;width:100%!important;}
.ps-custom-select .ps-custom-select-trigger{width:100%!important;padding:0 38px 0 13px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;text-align:left!important;cursor:pointer!important;}
.ps-custom-select .ps-custom-select-trigger:after{content:""!important;position:absolute!important;right:15px!important;top:50%!important;width:7px!important;height:7px!important;border-right:2px solid #1769d1!important;border-bottom:2px solid #1769d1!important;transform:translateY(-65%) rotate(45deg)!important;transition:transform .18s ease!important;}
.ps-custom-select.is-open .ps-custom-select-trigger{box-shadow:0 0 0 4px rgba(23,105,209,.08)!important;}
.ps-custom-select.is-open .ps-custom-select-trigger:after{transform:translateY(-30%) rotate(225deg)!important;}
.ps-custom-select .ps-custom-select-menu{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 7px)!important;display:none!important;margin:0!important;list-style:none!important;box-shadow:0 18px 42px rgba(10,45,82,.15)!important;max-height:250px!important;overflow:auto!important;}
.ps-custom-select.is-open .ps-custom-select-menu{display:grid!important;gap:2px!important;}
.ps-custom-select-option{display:block!important;cursor:pointer!important;}

/* Pagination: clean numbered controls, consistent across blog/shop. */
.pagination,
.blog-pagination,
.woocommerce-pagination{display:flex!important;justify-content:center!important;align-items:center!important;margin-top:34px!important;padding:0!important;}
.pagination .page-numbers,
.blog-pagination ul.page-numbers,
.woocommerce-pagination ul.page-numbers{display:flex!important;align-items:center!important;gap:7px!important;list-style:none!important;margin:0!important;padding:0!important;border:0!important;}
.pagination .page-numbers a,
.pagination .page-numbers span,
.blog-pagination .page-numbers a,
.blog-pagination .page-numbers span,
.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span{min-width:42px!important;height:42px!important;padding:0 12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid #dbe5ed!important;border-radius:12px!important;background:#fff!important;color:#456072!important;font-size:12px!important;font-weight:900!important;text-decoration:none!important;box-sizing:border-box!important;}
.pagination .page-numbers.current,
.blog-pagination .page-numbers.current,
.woocommerce-pagination .page-numbers.current,
.pagination .page-numbers a:hover,
.blog-pagination .page-numbers a:hover,
.woocommerce-pagination .page-numbers a:hover{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;box-shadow:0 8px 20px rgba(23,105,209,.18)!important;}

/* Blog journal and individual article pages. */
.blog-card-grid-lg{gap:24px!important;}
.blog-card-large{overflow:hidden!important;border-radius:22px!important;background:#fff!important;border:1px solid #e1e8ee!important;box-shadow:0 14px 40px rgba(14,51,71,.07)!important;}
.blog-card-large .blog-card-image{display:block!important;overflow:hidden!important;}
.blog-card-large .blog-card-body{padding:22px 22px 24px!important;}
.blog-card-large .blog-card-body h3{font-size:23px!important;line-height:1.2!important;margin:7px 0 9px!important;}
.blog-card-large .blog-card-body p{font-size:13px!important;line-height:1.7!important;color:#65757d!important;}
.single-post-page{padding-bottom:0!important;}
.single-post-page .container{max-width:1040px!important;}

.single-post-image{overflow:hidden!important;border-radius:24px!important;border:1px solid #dce5eb!important;background:#fff!important;box-shadow:0 24px 70px rgba(14,51,71,.12)!important;}
.single-post-image img{display:block!important;width:100%!important;max-height:560px!important;object-fit:cover!important;}
.single-post-content{margin:26px auto 0!important;max-width:780px!important;padding:36px 42px!important;border:1px solid #e0e8ed!important;border-radius:22px!important;background:#fff!important;box-shadow:0 14px 42px rgba(14,51,71,.06)!important;color:#526873!important;font-size:16px!important;line-height:1.9!important;}
.single-post-content h2,
.single-post-content h3{color:#0e3347!important;line-height:1.2!important;margin-top:28px!important;}
.single-post-content p{margin:0 0 18px!important;}
.single-post-content img{max-width:100%!important;height:auto!important;border-radius:16px!important;}
.single-post-content blockquote{margin:26px 0!important;padding:20px 22px!important;border-left:4px solid #1769d1!important;border-radius:12px!important;background:#f3f8fd!important;color:#294b5f!important;}
.single-post-footer{max-width:780px!important;margin:20px auto 0!important;display:flex!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important;}
.single-post-footer .btn{margin:0!important;}

/* Remove excessive whitespace immediately before the footer. */
.ps-home .cta + .site-footer,
.ps-home .cta + footer,
.single-post-page + .site-footer,
.blog-page + .site-footer,
.ps-account-page + .site-footer{margin-top:0!important;}
.ps-home .cta{margin-bottom:0!important;}

@media(max-width:900px){
  .ps-home .ps-hero-copy{width:100%!important;max-width:none!important;}
  .ps-home .ps-hero-media{min-height:390px!important;}
  .ps-home .ps-hero-media img{height:390px!important;}
  .ps-category-directory-head{margin-bottom:20px!important;}
  .single-post-page .single-post{padding-bottom:55px!important;}
  .single-post-content{padding:28px 24px!important;}
}
@media(max-width:620px){
  .ps-home .section,
.ps-account-page .section,
.ps-categories-page .section,
.blog-page .section,
.single-post-page .section{padding-top:54px!important;padding-bottom:54px!important;}
  .single-post-footer{flex-direction:column!important;}
  .single-post-footer .btn{width:100%!important;}
}

/* Editorial article layout additions. */
.ps-article-hero .ps-inner-hero-content{padding-top:74px!important;padding-bottom:74px!important;}

.ps-article-kicker .eyebrow{margin:0!important;}
.single-post-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start;margin-top:26px;}
.single-post-aside{position:sticky;top:110px;}
.article-aside-card{padding:20px;border:1px solid #dce6ed;border-radius:18px;background:#f5f9fc;box-shadow:0 10px 28px rgba(14,51,71,.05);}
.article-aside-card strong{display:block;color:#0e3347;font-size:18px;margin:7px 0 7px;}
.article-aside-card p{font-size:12px;line-height:1.65;color:#65757d;margin:0 0 12px;}
.single-post-layout .single-post-content{margin:0!important;max-width:none!important;}
.single-post-content .article-lead{font-size:20px!important;line-height:1.75!important;color:#294d61!important;font-weight:600!important;}

.ps-related-stories .section-head-row{margin-bottom:24px!important;}
@media(max-width:820px){
  .single-post-layout{grid-template-columns:1fr!important;gap:16px!important;}
  .single-post-aside{position:static!important;}
  .article-aside-card{display:grid;grid-template-columns:1fr auto;gap:6px 15px;align-items:center;}
  .article-aside-card p{grid-column:1/-1;}
}

/* Global rhythm: compact, intentional and consistent. */
.ps-home .section,
.ps-account-page .section,
.blog-page .section,
.ps-categories-page .section,
.single-post-page .section{padding-top:68px!important;padding-bottom:68px!important;}
.ps-home .section-sm,
.ps-account-page .section-sm,
.blog-page .section-sm,
.ps-categories-page .section-sm{padding-top:52px!important;padding-bottom:52px!important;}
.ps-home .cta{padding-top:48px!important;padding-bottom:64px!important;margin:0!important;}
.site-footer{margin-top:0!important;}

/* Buttons: remove the odd vertical dead space created by inherited Woo styles. */
.btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce form .button,
.woocommerce .button{min-height:44px!important;padding:0 18px!important;line-height:1!important;margin:0!important;vertical-align:middle!important;box-sizing:border-box!important;}
.btn > span,
.btn svg,
.woocommerce a.button > span,
.woocommerce button.button > span{line-height:1!important;display:inline-flex!important;align-items:center!important;}

/* Header / Shop: the actual PrintStrokes Main Menu is used in header.php.
   Turn Shop into a clean side flyout instead of the old overlapping dropdown. */
@media(min-width:901px){
  .site-header{z-index:3000!important;overflow:visible!important;}
  .site-header .header-inner,
.site-header .primary-nav,
.site-header .primary-nav>ul,
.site-header .primary-nav .primary-menu{overflow:visible!important;}
  .primary-nav .primary-menu>li.ps-shop-parent{position:relative!important;overflow:visible!important;padding:0!important;margin:0!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>a{display:inline-flex!important;align-items:center!important;gap:7px!important;white-space:nowrap!important;line-height:1!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>a::after{content:""!important;width:7px!important;height:7px!important;flex:0 0 7px!important;display:block!important;border:0!important;border-right:2px solid var(--ps-blue)!important;border-bottom:2px solid var(--ps-blue)!important;background:none!important;margin:0 0 2px 0!important;transform:rotate(45deg)!important;transition:transform .2s ease,border-color .2s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>a::after,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>a::after{transform:rotate(225deg)!important;border-color:var(--ps-blue)!important;}
  /* Horizontal hover bridge: pointer can travel from Shop to the flyout. */
  .primary-nav .primary-menu>li.ps-shop-parent::before{content:""!important;position:absolute!important;top:-10px!important;right:-24px!important;width:36px!important;height:calc(100% + 20px)!important;background:transparent!important;pointer-events:auto!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu{position:absolute!important;top:50%!important;left:calc(100% + 18px)!important;right:auto!important;width:390px!important;min-width:390px!important;max-width:390px!important;margin:0!important;padding:14px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;list-style:none!important;border:1px solid #d9e6f2!important;border-radius:22px!important;background:#fff!important;box-shadow:0 24px 60px rgba(10,45,82,.17),0 6px 18px rgba(10,45,82,.07)!important;transform:translateY(-46%) translateX(-8px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;overflow:visible!important;z-index:3500!important;transition:opacity .18s ease,transform .2s ease,visibility 0s linear .18s!important;}
  .primary-nav .primary-menu>li.ps-shop-parent:hover>.sub-menu,
.primary-nav .primary-menu>li.ps-shop-parent:focus-within>.sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(-46%) translateX(0)!important;transition-delay:0s!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu::before,
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu::after{content:none!important;display:none!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li{display:block!important;position:relative!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;list-style:none!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a{position:relative!important;width:100%!important;min-height:62px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:9px 11px 9px 44px!important;border:1px solid #e7eef5!important;border-radius:15px!important;background:#fff!important;color:#103850!important;font-size:12px!important;font-weight:850!important;line-height:1.25!important;white-space:normal!important;overflow:hidden!important;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,color .18s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a::before{content:"›"!important;position:absolute!important;left:12px!important;top:50%!important;transform:translateY(-50%)!important;width:24px!important;height:24px!important;display:grid!important;place-items:center!important;border-radius:8px!important;background:#eef6ff!important;color:var(--ps-blue)!important;font-size:11px!important;font-weight:900!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a::after{content:"›"!important;margin-left:auto!important;color:#90aac0!important;font-size:18px!important;line-height:1!important;border:0!important;transform:none!important;background:none!important;width:auto!important;height:auto!important;transition:color .18s ease,transform .18s ease!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover,
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:focus-visible{transform:translateY(-2px)!important;border-color:#c8def4!important;background:#f4f9ff!important;color:var(--ps-blue)!important;box-shadow:0 10px 22px rgba(30,103,186,.11)!important;outline:none!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover::before,
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:focus-visible::before{background:var(--ps-blue)!important;color:#fff!important;}
  .primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:hover::after,
.primary-nav .primary-menu>li.ps-shop-parent>.sub-menu>li>a:focus-visible::after{color:var(--ps-blue)!important;transform:translateX(2px)!important;}
}

/* Hero: proper proportions, wider text column, moderate left padding. */
.ps-home .ps-hero-slider{margin:0!important;}

.ps-home .ps-hero-slide{min-height:590px!important;height:590px!important;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;}
.ps-home .ps-hero-media,
.ps-home .ps-hero-media img{min-height:590px!important;height:590px!important;}
@media(min-width:901px){
  .ps-home .ps-hero-copy{width:100%!important;max-width:none!important;padding:52px 38px 52px clamp(50px,5.2vw,78px)!important;justify-content:center!important;align-items:flex-start!important;}
  .ps-home .ps-hero-copy h1{max-width:740px!important;font-size:clamp(40px, 4.3vw, 60px)!important;line-height:1.0!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-home .ps-hero-copy p{max-width:660px!important;font-size:17px!important;line-height:1.7!important;}
  .ps-home .hero-actions{gap:10px!important;margin-top:20px!important;}
  .ps-home .hero-actions .btn{height:44px!important;min-height:44px!important;padding:0 17px!important;border-radius:12px!important;}
  .ps-home .hero-actions .btn span{line-height:1!important;}
  .ps-home .hero-mini-proof{margin-top:12px!important;gap:8px 16px!important;}
}

/* Hero motion: a single calm editorial curtain reveal. No zoom, no blur, no
   bouncing. It also avoids the old blank-frame issue on wraparound. */
@media(min-width:901px){
  .ps-home .ps-hero-slide{position:absolute!important;inset:0!important;display:grid!important;visibility:visible!important;opacity:1!important;transform:none!important;clip-path:inset(0 100% 0 0)!important;transition:clip-path .78s cubic-bezier(.77,0,.175,1)!important;z-index:1!important;}
  .ps-home .ps-hero-slide.is-active{clip-path:inset(0 0 0 0)!important;}
  .ps-home .ps-hero-slide.is-in-left{clip-path:inset(0 100% 0 0)!important;z-index:2!important;}
  .ps-home .ps-hero-slide.is-in-right{clip-path:inset(0 0 0 100%)!important;z-index:2!important;}
  .ps-home .ps-hero-slide.is-active.is-out-left{clip-path:inset(0 100% 0 0)!important;z-index:3!important;}
  .ps-home .ps-hero-slide.is-active.is-out-right{clip-path:inset(0 0 0 100%)!important;z-index:3!important;}
}
@media(max-width:900px){
  .ps-home .ps-hero-slides,
.ps-home .ps-hero-slide{min-height:auto!important;height:auto!important;}
  .ps-home .ps-hero-media,
.ps-home .ps-hero-media img{min-height:390px!important;height:390px!important;}
  
  .ps-home .hero-actions .btn{min-height:44px!important;height:44px!important;padding:0 16px!important;}
}

/* Trust cards: clear separation without an over-styled strip. */
.ps-trust-strip{padding:20px 0!important;background:#fff!important;border:0!important;box-shadow:none!important;}
.ps-trust-strip .trust-grid{gap:18px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;}
.ps-trust-strip .trust-item{min-height:96px!important;padding:17px 18px!important;border:1px solid var(--ps-line)!important;border-radius:18px!important;background:#fffdf9!important;box-shadow:0 9px 22px rgba(14,51,71,.05)!important;}
.ps-trust-strip .trust-item:last-child{border-right:1px solid var(--ps-line)!important;}
@media(max-width:900px){.ps-trust-strip .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}}
@media(max-width:620px){.ps-trust-strip .trust-grid{grid-template-columns:1fr!important;gap:12px!important;}}

/* Account endpoint: the old grid rule on .form-row was putting labels and
   inputs into separate columns. Rebuild the form rows explicitly. */
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content{min-width:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form.woocommerce-EditAccountForm,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form.edit-account,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form.woocommerce-address-fields__field-wrapper,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form{display:block!important;float:none!important;box-sizing:border-box!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row{display:block!important;float:none!important;clear:both!important;width:100%!important;margin:0 0 18px!important;padding:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-first{margin-right:16px!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-last{margin-right:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row label{display:block!important;width:100%!important;margin:0 0 7px!important;font-size:12px!important;line-height:1.35!important;color:#526874!important;font-weight:800!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row .input-text,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row input,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row textarea,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row select{display:block!important;width:100%!important;max-width:none!important;min-height:48px!important;padding:12px 13px!important;margin:0!important;border:1px solid #d7e2e9!important;border-radius:12px!important;background:#fbfdff!important;color:#163b51!important;box-shadow:none!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row textarea{min-height:130px!important;resize:vertical!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row .description,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row em{display:block!important;margin-top:7px!important;font-size:11px!important;line-height:1.55!important;color:#7b8b93!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form fieldset{display:block!important;margin:22px 0!important;padding:20px!important;border:1px solid #e0e8ed!important;border-radius:18px!important;background:#fbfdff!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form fieldset legend{margin:0 0 15px!important;padding:0 8px!important;font-size:16px!important;font-weight:900!important;color:#0e3347!important;line-height:1.2!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form fieldset .form-row,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form fieldset .form-row.form-row-first,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form fieldset .form-row.form-row-last{display:block!important;width:100%!important;margin-right:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row input:focus,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row textarea:focus,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row select:focus{border-color:#1769d1!important;background:#fff!important;box-shadow:0 0 0 4px rgba(23,105,209,.08)!important;outline:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .woocommerce-Button,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form button,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form input[type="submit"]{min-height:44px!important;padding:0 19px!important;border:0!important;border-radius:12px!important;background:#0e3347!important;color:#fff!important;line-height:1!important;font-weight:900!important;box-shadow:0 10px 24px rgba(14,51,71,.15)!important;}
@media(max-width:620px){
  .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-first,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-last{display:block!important;width:100%!important;margin-right:0!important;}
}

/* Account confirmation banner: structured message instead of a loose line. */
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-info{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;min-height:78px!important;padding:16px 18px 16px 20px!important;border:1px solid #dde8ef!important;border-left:4px solid #1769d1!important;border-radius:18px!important;background:#f7fbfe!important;box-shadow:0 10px 24px rgba(14,51,71,.045)!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-info a.button{flex:0 0 auto!important;margin:0 0 0 auto!important;}
@media(max-width:620px){.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-info{flex-direction:column!important;align-items:flex-start!important;}.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-info a.button{margin:0!important;}}

/* Filters: theme-colour select controls (navy + restrained coral accent). */
.ps-custom-select .ps-custom-select-trigger{min-height:46px!important;border:1px solid #d6dfe5!important;border-radius:12px!important;background:#fffdf9!important;color:#18384b!important;font-size:13px!important;font-weight:800!important;box-shadow:none!important;}
.ps-custom-select .ps-custom-select-trigger::after{border-right:2px solid #0e3347!important;border-bottom:2px solid #0e3347!important;}
.ps-custom-select.is-open .ps-custom-select-trigger{border-color:#0e3347!important;box-shadow:0 0 0 4px rgba(14,51,71,.07)!important;}
.ps-custom-select.is-open .ps-custom-select-trigger::after{border-color:#e85d49!important;}
.ps-custom-select .ps-custom-select-menu{top:calc(100% + 6px)!important;padding:6px!important;border:1px solid #d9e4ea!important;border-radius:14px!important;background:#fffdf9!important;box-shadow:0 18px 42px rgba(14,51,71,.15)!important;z-index:200!important;}
.ps-custom-select-option{padding:10px 11px!important;border-radius:9px!important;color:#2a4b5d!important;font-size:12px!important;font-weight:800!important;}
.ps-custom-select-option:hover,
.ps-custom-select-option.is-selected{background:#fff0ec!important;color:#c84f3d!important;}

/* Category archive: buttons always start aligned; no centred drift. */
.ps-category-archive-actions{display:flex!important;align-items:center!important;justify-content:flex-start!important;align-content:flex-start!important;gap:10px!important;margin-top:24px!important;}
.ps-category-archive-actions .btn{margin:0!important;}
.ps-category-directory-head{align-items:flex-end!important;}
.ps-category-directory-head>.btn{align-self:flex-start!important;margin-top:8px!important;}

/* Pagination: compact segmented control with strong active state. */
.woocommerce-pagination,
.blog-pagination,
.pagination{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;margin:34px 0 0!important;padding:0!important;}
.woocommerce-pagination ul.page-numbers,
.blog-pagination ul.page-numbers,
.pagination .page-numbers{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;margin:0!important;padding:5px!important;border:1px solid #dbe4ea!important;border-radius:14px!important;background:#fffdf9!important;box-shadow:0 8px 22px rgba(14,51,71,.06)!important;list-style:none!important;}
.woocommerce-pagination ul.page-numbers li,
.blog-pagination ul.page-numbers li{margin:0!important;padding:0!important;list-style:none!important;}
.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span,
.blog-pagination .page-numbers a,
.blog-pagination .page-numbers span,
.pagination .page-numbers a,
.pagination .page-numbers span{min-width:38px!important;height:38px!important;padding:0 10px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#526b79!important;font-size:12px!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;box-shadow:none!important;}
.woocommerce-pagination .page-numbers.current,
.blog-pagination .page-numbers.current,
.pagination .page-numbers.current,
.woocommerce-pagination .page-numbers a:hover,
.blog-pagination .page-numbers a:hover,
.pagination .page-numbers a:hover{background:#0e3347!important;color:#fff!important;box-shadow:0 8px 18px rgba(14,51,71,.16)!important;}

/* Blog detail: a calmer editorial article page with clear hierarchy. */
.single-post-page{padding:0 0 0!important;}
.single-post-page .ps-article-hero{min-height:420px!important;display:flex!important;align-items:center!important;}
.single-post-page .ps-article-hero .ps-inner-hero-content{padding-top:68px!important;padding-bottom:76px!important;}
.single-post-page .ps-article-hero .section-title{max-width:900px!important;font-size:clamp(42px,5.4vw,72px)!important;line-height:1.02!important;}
.single-post-page .ps-article-hero .section-copy{max-width:730px!important;color:rgba(255,255,255,.84)!important;}

.ps-article-meta span{border:1px solid rgba(255,255,255,.20);background:rgba(255,255,255,.09);letter-spacing:.06em;text-transform:uppercase;}
.single-post-page .single-post{max-width:1120px!important;margin:-52px auto 0!important;padding:0 0 74px!important;position:relative!important;z-index:4!important;}
.single-post-page .single-post-image{overflow:hidden!important;border-radius:26px!important;border:1px solid #ddd7ce!important;background:#fffdf9!important;box-shadow:0 24px 70px rgba(14,51,71,.14)!important;}
.single-post-page .single-post-image img{display:block!important;width:100%!important;max-height:590px!important;object-fit:cover!important;}
.single-post-page .single-post-layout{display:grid!important;margin-top:28px!important;align-items:start!important;}
.single-post-page .single-post-aside{position:sticky!important;top:112px!important;}
.single-post-page .article-aside-card{padding:20px!important;border:1px solid #ded8cf!important;border-radius:20px!important;background:#fffdf9!important;box-shadow:0 12px 30px rgba(14,51,71,.06)!important;}
.single-post-page .article-aside-card .eyebrow{display:block!important;margin-bottom:8px!important;font-weight:700!important;}
.single-post-page .article-aside-card strong{font-size:20px!important;line-height:1.15!important;color:#0e3347!important;}
.single-post-page .article-aside-card p{font-size:12px!important;line-height:1.7!important;margin:9px 0 14px!important;color:#6b797f!important;}
.single-post-page .single-post-content{margin:0!important;padding:38px 42px!important;border:1px solid #ded8cf!important;border-radius:22px!important;background:#fffdf9!important;box-shadow:0 16px 42px rgba(14,51,71,.06)!important;color:#506a76!important;font-size:16px!important;line-height:1.9!important;}
.single-post-page .single-post-content .article-lead{font-size:20px!important;line-height:1.72!important;color:#214a60!important;font-weight:600!important;margin-bottom:26px!important;}
.single-post-page .single-post-content h2{font-size:30px!important;line-height:1.16!important;color:#0e3347!important;margin:34px 0 12px!important;}
.single-post-page .single-post-content h3{font-size:23px!important;color:#0e3347!important;margin:26px 0 10px!important;}
.single-post-page .single-post-content p{margin:0 0 18px!important;}
.single-post-page .single-post-content ul,
.single-post-page .single-post-content ol{padding-left:22px!important;margin:0 0 20px!important;}
.single-post-page .single-post-content blockquote{margin:28px 0!important;padding:20px 22px!important;border-left:4px solid #1769d1!important;border-radius:12px!important;background:#f2f7fc!important;color:#244b61!important;font-size:18px!important;line-height:1.75!important;}
.single-post-page .single-post-footer{max-width:none!important;margin:22px 0 0!important;display:flex!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important;}
.single-post-page .single-post-footer .btn{margin:0!important;}
.ps-related-stories{background:#f5f1eb!important;padding-top:68px!important;padding-bottom:70px!important;border-top:1px solid #e5ddd4!important;}
.ps-related-stories .blog-card{background:#fffdf9!important;}
@media(max-width:900px){
  .single-post-page .single-post{margin:-36px 17px 0!important;}
  
}
@media(max-width:620px){
  .single-post-page .ps-article-hero{min-height:360px!important;}
  .single-post-page .ps-article-hero .ps-inner-hero-content{padding-top:50px!important;padding-bottom:64px!important;}
  .single-post-page .single-post{margin:-24px 12px 0!important;padding-bottom:54px!important;}
  .single-post-page .single-post-content{font-size:15px!important;line-height:1.8!important;}
  .single-post-page .single-post-content .article-lead{font-size:18px!important;}
  .single-post-page .single-post-content h2{font-size:26px!important;}
}

/* Category directory cards: button/link stays at the same left edge. */
.ps-category-directory-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;}
.ps-category-directory-copy .text-link{align-self:flex-start!important;margin-left:0!important;}

/* Final footer rhythm: the last content block should not create a giant blank band. */
.ps-home .cta-box{margin-bottom:0!important;}
.ps-home .cta-box .hero-actions{margin-bottom:0!important;}
.ps-home .cta + .site-footer{margin-top:0!important;}

/* HERO: calm, slow cross-fade. Keep the existing hero structure intact. */
@media (min-width:901px){
  .ps-home .ps-hero-slides{position:relative!important;overflow:hidden!important;}
  .ps-home .ps-hero-slide,
.ps-home .ps-hero-slide.is-in-left,
.ps-home .ps-hero-slide.is-in-right,
.ps-home .ps-hero-slide.is-out-left,
.ps-home .ps-hero-slide.is-out-right{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;visibility:hidden!important;opacity:0!important;transform:none!important;clip-path:none!important;z-index:1!important;transition:opacity 1.1s ease,visibility 0s linear 1.1s!important;}
  .ps-home .ps-hero-slide.is-active{visibility:visible!important;opacity:1!important;z-index:2!important;transition:opacity 1.1s ease,visibility 0s linear 0s!important;}
}
.ps-home .hero-actions .btn{height:46px!important;min-height:46px!important;padding:0 18px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;line-height:1!important;box-sizing:border-box!important;}
.ps-home .hero-actions .btn span{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:1em!important;margin:0!important;padding:0!important;line-height:1!important;}
@media (min-width:901px){
  .ps-home .ps-hero-copy{padding-left:clamp(60px,5.2vw,88px)!important;}
}

@media (min-width:1181px){

  .primary-nav .primary-menu{position:relative!important;z-index:9000!important;}
  .primary-nav .primary-menu > li{position:relative!important;}

  /* Normal parent menus remain independent dropdowns below themselves. */
  .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent){position:relative!important;}
  .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent) > .sub-menu{position:absolute!important;top:calc(100% + 9px)!important;left:50%!important;right:auto!important;width:250px!important;min-width:250px!important;max-width:320px!important;display:block!important;margin:0!important;padding:8px!important;list-style:none!important;background:#fff!important;border:1px solid #dbe6ef!important;border-radius:16px!important;box-shadow:0 22px 55px rgba(14,51,71,.15)!important;transform:translate(-50%,7px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:10000!important;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s!important;}
  .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent):hover > .sub-menu,
.primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent):focus-within > .sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important;transition-delay:0s!important;}
  .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent) > .sub-menu > li,
.primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent) > .sub-menu > li > a{box-sizing:border-box!important;}
  .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent) > .sub-menu > li{display:block!important;width:100%!important;margin:0!important;padding:0!important;}
  .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent) > .sub-menu > li > a{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:42px!important;padding:9px 12px!important;border-radius:10px!important;color:#0e3347!important;background:transparent!important;font-size:13px!important;font-weight:800!important;white-space:nowrap!important;}
  .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent) > .sub-menu > li > a:hover,
.primary-nav .primary-menu > li.menu-item-has-children:not(.ps-shop-parent) > .sub-menu > li > a:focus-visible{background:#edf4ff!important;color:var(--ps-blue)!important;outline:none!important;}

  /* SHOP: premium two-column card treatment, moved to the right side. */
  .primary-nav .primary-menu > li.ps-shop-parent{position:relative!important;z-index:11000!important;}
  .primary-nav .primary-menu > li.ps-shop-parent::before{content:""!important;position:absolute!important;top:-14px!important;right:-42px!important;width:44px!important;height:calc(100% + 28px)!important;background:transparent!important;pointer-events:auto!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu{position:absolute!important;top:50%!important;left:calc(100% + 18px)!important;right:auto!important;width:440px!important;min-width:440px!important;max-width:440px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin:0!important;padding:16px!important;list-style:none!important;box-sizing:border-box!important;background:#0e3347!important;border:1px solid var(--ps-blue)!important;border-radius:22px!important;box-shadow:0 26px 70px rgba(7,31,45,.30),0 8px 24px rgba(14,51,71,.16)!important;transform:translateY(-50%) translateX(-10px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:12000!important;transition:opacity .2s ease,transform .22s ease,visibility 0s linear .2s!important;}
  .primary-nav .primary-menu > li.ps-shop-parent:hover > .sub-menu,
.primary-nav .primary-menu > li.ps-shop-parent:focus-within > .sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(-50%) translateX(0)!important;transition-delay:0s!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu::before{content:"SHOP CATEGORIES"!important;grid-column:1/-1!important;display:block!important;margin:0 2px 2px!important;padding:0 4px 8px!important;border-bottom:1px solid rgba(255,255,255,.12)!important;color:#9fc9ff!important;font-size:9px!important;line-height:1!important;font-weight:900!important;letter-spacing:.16em!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li{position:relative!important;display:block!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;list-style:none!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;min-height:56px!important;padding:10px 12px 10px 42px!important;box-sizing:border-box!important;gap:10px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:14px!important;background:#123f59!important;color:#fff!important;font-size:12px!important;font-weight:850!important;line-height:1.25!important;white-space:normal!important;text-decoration:none!important;box-shadow:0 4px 12px rgba(0,0,0,.05)!important;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a::before{content:"›"!important;position:absolute!important;left:11px!important;top:50%!important;transform:translateY(-50%)!important;width:22px!important;height:22px!important;display:grid!important;place-items:center!important;border-radius:7px!important;background:var(--ps-blue)!important;color:#fff!important;font-size:9px!important;font-weight:900!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a::after{content:"→"!important;position:static!important;display:block!important;width:auto!important;height:auto!important;margin:0!important;border:0!important;background:none!important;transform:none!important;color:#9fc5e3!important;font-size:14px!important;line-height:1!important;opacity:.9!important;transition:transform .18s ease,color .18s ease!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a:hover,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a:focus-visible{transform:translateY(-2px)!important;background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;box-shadow:0 12px 25px rgba(0,0,0,.20)!important;outline:none!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a:hover::before,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a:focus-visible::before{background:#fff!important;color:var(--ps-blue)!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a:hover::after,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a:focus-visible::after{color:#fff!important;transform:translateX(3px)!important;}

  /* Child menu: a second matching premium card panel to the right of the
     exact parent category card. */
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children{position:relative!important;overflow:visible!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children::after{content:""!important;position:absolute!important;top:0!important;right:-24px!important;width:28px!important;height:100%!important;background:transparent!important;pointer-events:auto!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu{position:absolute!important;top:-10px!important;left:calc(100% + 22px)!important;right:auto!important;width:300px!important;min-width:300px!important;max-width:300px!important;display:block!important;margin:0!important;padding:12px!important;list-style:none!important;box-sizing:border-box!important;background:#0e3347!important;border:1px solid var(--ps-blue)!important;border-radius:18px!important;box-shadow:0 26px 65px rgba(7,31,45,.30)!important;transform:translateX(-10px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;z-index:12500!important;transition:opacity .18s ease,transform .2s ease,visibility 0s linear .18s!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children:hover > .sub-menu,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children:focus-within > .sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateX(0)!important;transition-delay:0s!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu::before{content:"MORE IN THIS CATEGORY"!important;display:block!important;margin:0 2px 7px!important;padding:1px 4px 8px!important;border-bottom:1px solid rgba(255,255,255,.12)!important;color:#9fc9ff!important;font-size:8px!important;font-weight:900!important;letter-spacing:.13em!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu > li{display:block!important;width:100%!important;margin:0!important;padding:0!important;list-style:none!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu > li + li{margin-top:6px!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu a{display:flex!important;align-items:center!important;width:100%!important;min-height:44px!important;padding:9px 11px!important;box-sizing:border-box!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:10px!important;background:#123f59!important;color:#fff!important;font-size:12px!important;font-weight:750!important;line-height:1.3!important;text-decoration:none!important;white-space:normal!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu a:hover,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu a:focus-visible{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;outline:none!important;}
  .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu a::before,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li.menu-item-has-children > .sub-menu a::after{content:none!important;display:none!important;}
}

/* ACCOUNT DETAILS: WooCommerce eye control is white and sits inside the field. */

/* ACCOUNT VERIFICATION: icon, copy and button are three deliberate columns. */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info{display:grid!important;grid-template-columns:30px minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;width:100%!important;min-height:74px!important;margin:0 0 24px!important;padding:15px 16px 15px 18px!important;box-sizing:border-box!important;border:1px solid #dbe6ee!important;border-left:4px solid #1769d1!important;border-radius:16px!important;background:#f7fbfe!important;color:#294b5f!important;}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info::before{position:static!important;width:30px!important;height:30px!important;margin:0!important;display:grid!important;place-items:center!important;color:#1769d1!important;}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info a.button{justify-self:end!important;align-self:center!important;min-height:42px!important;height:42px!important;margin:0!important;padding:0 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;border-radius:10px!important;background:#0e3347!important;color:#fff!important;line-height:1!important;white-space:nowrap!important;}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button:hover,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info a.button:hover{background:var(--ps-blue)!important;color:#fff!important;}
@media(max-width:620px){
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info{grid-template-columns:30px minmax(0,1fr)!important;}
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info a.button{grid-column:1/-1!important;justify-self:start!important;}
}

/* BLOG DETAIL: force a true full-viewport editorial canvas and do not allow a
   generic .container max-width to trap the article at 920px. */
.single-post-page{width:100vw!important;max-width:100vw!important;margin-left:calc((100% - 100vw)/2)!important;margin-right:0!important;background:#f8f5f0!important;overflow:visible!important;}
.single-post-page > .ps-inner-hero,
.single-post-page .ps-article-hero{width:100%!important;max-width:none!important;}
.single-post-page .ps-article-hero .ps-inner-hero-content{width:min(1360px,calc(100% - 64px))!important;max-width:1360px!important;margin-inline:auto!important;}
.single-post-page .ps-single-post-shell{width:min(1360px,calc(100% - 64px))!important;max-width:1360px!important;margin:-52px auto 0!important;padding:0 0 82px!important;position:relative!important;box-sizing:border-box!important;z-index:4!important;}
.single-post-page .ps-single-post-shell .single-post{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;position:relative!important;}
.single-post-page .single-post-image{width:100%!important;max-width:none!important;margin:0!important;}
.single-post-page .single-post-layout{width:100%!important;max-width:none!important;grid-template-columns:260px minmax(0,1fr)!important;gap:34px!important;}
.single-post-page .single-post-content{width:100%!important;max-width:none!important;min-width:0!important;}
.single-post-page.post-template-classic .single-post-layout{grid-template-columns:1fr!important;}
.single-post-page.post-template-classic .single-post-content{max-width:900px!important;margin:0 auto!important;}
.single-post-page .ps-related-stories .container{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;}
@media(max-width:900px){
  .single-post-page .ps-article-hero .ps-inner-hero-content,
.single-post-page .ps-single-post-shell{width:calc(100% - 32px)!important;max-width:none!important;}
  .single-post-page .ps-single-post-shell{margin-top:-34px!important;}
  .single-post-page .single-post-layout{grid-template-columns:1fr!important;gap:18px!important;}
  .single-post-page .single-post-aside{position:static!important;}
}
@media(max-width:620px){
  .single-post-page .ps-article-hero .ps-inner-hero-content,
.single-post-page .ps-single-post-shell{width:calc(100% - 24px)!important;}
  .single-post-page .ps-single-post-shell{margin-top:-24px!important;padding-bottom:54px!important;}
  .single-post-page .single-post-content{padding:24px 19px!important;}
}

/* SHOP PAGINATION: no outer/right border; hover visibly fills the button. */
.woocommerce-page-wrap .woocommerce-pagination,
.woocommerce-page-wrap .woocommerce-pagination ul.page-numbers,
.woocommerce-page-wrap .woocommerce-pagination ul.page-numbers::before,
.woocommerce-page-wrap .woocommerce-pagination ul.page-numbers::after{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;}
.woocommerce-page-wrap .woocommerce-pagination ul.page-numbers{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;margin:0!important;padding:0!important;list-style:none!important;}
.woocommerce-page-wrap .woocommerce-pagination ul.page-numbers li{display:block!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;}
.woocommerce-page-wrap .woocommerce-pagination .page-numbers a,
.woocommerce-page-wrap .woocommerce-pagination .page-numbers span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:42px!important;height:42px!important;padding:0 12px!important;box-sizing:border-box!important;border:1px solid #dbe5ed!important;border-radius:12px!important;background:#fff!important;background-color:#fff!important;color:#456072!important;font-size:12px!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;box-shadow:none!important;}
.woocommerce-page-wrap .woocommerce-pagination .page-numbers a:hover,
.woocommerce-page-wrap .woocommerce-pagination .page-numbers a:focus-visible,
.woocommerce-page-wrap .woocommerce-pagination .page-numbers.current{background:var(--ps-blue)!important;background-color:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;box-shadow:0 8px 20px rgba(23,105,209,.18)!important;outline:none!important;}

/* Generic blog pagination follows the same control treatment. */
.blog-pagination ul.page-numbers,
.pagination .page-numbers{border:0!important;box-shadow:none!important;background:transparent!important;}
.blog-pagination .page-numbers a,
.blog-pagination .page-numbers span,
.pagination .page-numbers a,
.pagination .page-numbers span{border:1px solid #dbe5ed!important;background:#fff!important;color:#456072!important;}
.blog-pagination .page-numbers a:hover,
.blog-pagination .page-numbers a:focus-visible,
.blog-pagination .page-numbers.current,
.pagination .page-numbers a:hover,
.pagination .page-numbers a:focus-visible,
.pagination .page-numbers.current{background:var(--ps-blue)!important;background-color:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;}

/* ---------- Navigation: every parent gets the same polished system ---------- */
@media (min-width:1181px){
  .site-header,
.site-header .header-inner,
.site-header .primary-nav,
.site-header .primary-nav > ul,
.site-header .primary-nav .primary-menu,
.site-header .primary-nav .primary-menu > li,
.site-header .primary-nav .primary-menu > li > .sub-menu,
.site-header .primary-nav .primary-menu > li > .sub-menu > li{overflow:visible!important;}

  .site-header{z-index:5000!important;}
  
  .site-header .primary-nav .primary-menu{z-index:5200!important;}
  .site-header .primary-nav .primary-menu > li > a{color:#163847!important;letter-spacing:-.01em!important;}

  /* Child indicator sits beside the parent label, never below it. */
  
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a::before{content:""!important;position:absolute!important;right:2px!important;top:50%!important;width:6px!important;height:6px!important;margin-top:-4px!important;border-right:1.8px solid currentColor!important;border-bottom:1.8px solid currentColor!important;transform:rotate(45deg)!important;transition:transform .2s ease!important;opacity:.78!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children:hover > a::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children:focus-within > a::before{transform:rotate(225deg)!important;margin-top:1px!important;opacity:1!important;}
  .site-header .primary-nav .primary-menu > li > a::after{transition:right .22s ease!important;}

  /* All top-level parent menus open DOWN, not sideways. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu{max-width:min(420px,calc(100vw - 32px))!important;box-shadow:0 28px 70px rgba(7,31,45,.28)!important;transition:opacity .18s ease,transform .22s ease,visibility 0s linear .18s!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu::before{content:"EXPLORE"!important;grid-column:1/-1!important;padding:2px 5px 9px!important;color:#a6cae1!important;border-bottom:1px solid rgba(255,255,255,.11)!important;font-size:9px!important;line-height:1!important;font-weight:900!important;letter-spacing:.18em!important;}

  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li{align-self:start!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a{text-decoration:none!important;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a::before{left:11px!important;top:50%!important;margin-top:-10.5px!important;}
  
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{color:#fff!important;box-shadow:0 12px 25px rgba(0,0,0,.18)!important;}

  /* A child menu expands BELOW its parent card. It never flies out to the side. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu{transition:max-height .26s ease,padding .22s ease,opacity .18s ease,visibility 0s linear .26s!important;}
  
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu::before{content:"MORE IN THIS CATEGORY"!important;display:block!important;padding:0 4px 7px!important;margin:0 1px 7px!important;border-bottom:1px solid rgba(255,255,255,.10)!important;color:#9fc9ff!important;font-size:8px!important;line-height:1!important;letter-spacing:.14em!important;font-weight:900!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a{line-height:1.3!important;white-space:normal!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{border-color:var(--ps-blue)!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > a::after{content:"⌄"!important;color:var(--ps-blue)!important;font-size:15px!important;opacity:.95!important;}

  /* Shop uses the same component, simply with a richer width and heading. */
  .site-header .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu{width:560px!important;min-width:560px!important;max-width:min(560px,calc(100vw - 32px))!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:16px!important;border-radius:24px!important;}
  .site-header .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu::before{color:#9fc9ff!important;}
  .site-header .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a{min-height:58px!important;border-radius:15px!important;}
}

@media (max-width:1180px){
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a::before{display:none!important;}
}

/* ---------- Home hero: slow, premium cross-fade only ---------- */
.ps-home .ps-hero-slider{padding:0!important;background:#f4eee6!important;}
.ps-home .ps-hero-slides{position:relative!important;width:100%!important;max-width:1240px!important;min-height:740px!important;height:740px!important;margin:0 auto!important;overflow:hidden!important;isolation:isolate!important;border-radius:0 0 30px 30px!important;}
.ps-home .ps-hero-slide,
.ps-home .ps-hero-slide.is-active,
.ps-home .ps-hero-slide.is-transitioning{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:0!important;margin:0!important;padding:0!important;visibility:visible!important;clip-path:none!important;transform:none!important;opacity:0!important;z-index:1!important;transition:opacity 1.45s ease,visibility 0s linear 1.45s!important;will-change:opacity;}
.ps-home .ps-hero-slide.is-active{z-index:2!important;transition:opacity 1.45s ease,visibility 0s linear 0s!important;}
.ps-home .ps-hero-copy{position:relative!important;z-index:3!important;min-width:0!important;max-width:none!important;padding:68px clamp(34px,4.8vw,78px) 82px clamp(70px,5.5vw,92px)!important;justify-content:center!important;overflow:visible!important;}
.ps-home .ps-hero-copy h1{max-width:670px!important;line-height:.97!important;}
.ps-home .ps-hero-copy p{max-width:600px!important;font-size:17px!important;line-height:1.75!important;}
.ps-home .ps-hero-media{position:relative!important;z-index:2!important;min-height:0!important;height:100%!important;overflow:hidden!important;border-radius:0!important;background:#d9cbbd!important;}
.ps-home .ps-hero-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;transform:none!important;animation:none!important;}
.ps-home .ps-hero-media::after{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(14,51,71,.04),rgba(14,51,71,0) 36%,rgba(14,51,71,.07))!important;pointer-events:none!important;}
.ps-home .ps-hero-arrow{z-index:8!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;display:grid!important;place-items:center!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.86)!important;background:rgba(255,255,255,.94)!important;color:#0e3347!important;box-shadow:0 14px 34px rgba(10,35,48,.17)!important;line-height:1!important;font-size:26px!important;}
.ps-home .ps-hero-arrow:hover,
.ps-home .ps-hero-arrow:focus-visible{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;outline:none!important;}
.ps-home .ps-hero-prev{left:22px!important;}
.ps-home .ps-hero-next{right:22px!important;}

.ps-home .ps-hero-dots button{width:8px!important;height:8px!important;padding:0!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.55)!important;box-shadow:0 2px 8px rgba(0,0,0,.10)!important;transition:width .25s ease,background .25s ease,transform .25s ease!important;}
.ps-home .ps-hero-dots button.is-active{width:28px!important;height:8px!important;background:#fff!important;transform:none!important;}

@media(max-width:900px){
  .ps-home .ps-hero-slides{width:100%!important;height:auto!important;min-height:720px!important;border-radius:0!important;}
  .ps-home .ps-hero-slide,
.ps-home .ps-hero-slide.is-active,
.ps-home .ps-hero-slide.is-transitioning{position:absolute!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto 330px!important;min-height:720px!important;height:720px!important;}
  .ps-home .ps-hero-copy{order:1!important;padding:54px 30px 32px!important;}
  .ps-home .ps-hero-media{order:2!important;height:330px!important;}
  .ps-home .ps-hero-copy h1{font-size:clamp(38px, 4.8vw, 48px)!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-home .ps-hero-arrow{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
  .ps-home .ps-hero-prev{left:14px!important;}
  .ps-home .ps-hero-next{right:14px!important;}
  .ps-home .ps-hero-dots{bottom:13px!important;}
}
@media(max-width:620px){
  .ps-home .ps-hero-slide,
.ps-home .ps-hero-slide.is-active,
.ps-home .ps-hero-slide.is-transitioning{grid-template-rows:auto 285px!important;min-height:690px!important;height:690px!important;}
  .ps-home .ps-hero-copy{padding:44px 22px 24px!important;}
  .ps-home .ps-hero-copy p{font-size:15px!important;}
  .ps-home .ps-hero-media{height:285px!important;}
  .ps-home .ps-hero-arrow{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;font-size:21px!important;}
}
@media(prefers-reduced-motion:reduce){
  .ps-home .ps-hero-slide{transition:none!important;}
}

/* ---------- Account password eye: explicit white icon ---------- */
.woocommerce-account .password-input .show-password-input,
.woocommerce-account-wrapper .password-input .show-password-input{text-shadow:none!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::after{color:#fff!important;border-color:#fff!important;filter:none!important;opacity:1!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::before{border:2px solid #fff!important;border-radius:70% 25% 70% 25%!important;transform:rotate(-45deg)!important;}
.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::after{border-radius:50%!important;}

/* ---------- Blog detail: break out of any legacy 920px page shell ---------- */
body.single-post .site-header,
body.single-post .site-footer,
body.single-post .ps-announcement{width:100vw!important;max-width:100vw!important;margin-left:calc((100% - 100vw)/2)!important;margin-right:0!important;}
body.single-post .site-header .container,
body.single-post .site-footer .container,
body.single-post .ps-announcement .container{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;}
body.single-post .single-post-page{margin-left:calc((100% - 100vw)/2)!important;margin-right:0!important;}
body.single-post .single-post-page .ps-article-hero,
body.single-post .single-post-page .ps-single-post-shell,
body.single-post .single-post-page .ps-related-stories{width:100%!important;max-width:none!important;}
body.single-post .single-post-page .ps-article-hero .ps-inner-hero-content{width:min(1320px,calc(100% - 64px))!important;margin-inline:auto!important;}

body.single-post .single-post-page .ps-single-post-shell > .single-post{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}

body.single-post .single-post-page .ps-related-stories .container{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;}

/* Desktop dropdown edge protection for menus with many/future parent items. */
@media(min-width:1181px){
  .site-header .primary-nav .primary-menu > li.ps-menu-edge-left > .sub-menu{left:0!important;transform:translateY(8px)!important;}
  .site-header .primary-nav .primary-menu > li.ps-menu-edge-left:hover > .sub-menu,
.site-header .primary-nav .primary-menu > li.ps-menu-edge-left:focus-within > .sub-menu{transform:translateY(0)!important;}
  .site-header .primary-nav .primary-menu > li.ps-menu-edge-right > .sub-menu{left:auto!important;right:0!important;transform:translateY(8px)!important;}
  .site-header .primary-nav .primary-menu > li.ps-menu-edge-right:hover > .sub-menu,
.site-header .primary-nav .primary-menu > li.ps-menu-edge-right:focus-within > .sub-menu{transform:translateY(0)!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children::after{content:""!important;position:absolute!important;left:-10px!important;right:-10px!important;top:100%!important;height:14px!important;pointer-events:auto!important;background:transparent!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu::before{content:attr(data-parent-label)!important;}
  .site-header .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu::before{content:"SHOP CATEGORIES"!important;}
}

/* Utility bar links */
.ps-announcement-right a{color:inherit!important;text-decoration:none!important;}
.ps-announcement-right a:hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:3px;}

/* ---------- Header navigation ---------- */
@media(min-width:1181px){
  .site-header,
.site-header .header-inner,
.site-header .primary-nav,
.site-header .primary-nav .primary-menu,
.site-header .primary-nav .primary-menu > li,
.site-header .primary-nav .primary-menu > li > .sub-menu,
.site-header .primary-nav .primary-menu > li > .sub-menu > li{overflow:visible!important;}

  .site-header .primary-nav{position:relative!important;z-index:9000!important;}
  .site-header .primary-nav .primary-menu{display:flex!important;align-items:center!important;gap:26px!important;position:relative!important;margin:0!important;padding:0!important;list-style:none!important;}
  .site-header .primary-nav .primary-menu > li{position:relative!important;list-style:none!important;margin:0!important;padding:0!important;white-space:nowrap!important;}
  .site-header .primary-nav .primary-menu > li > a{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:7px 0!important;color:var(--ps-navy)!important;font-size:13px!important;font-weight:850!important;}
  
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a::before{content:none!important;display:none!important;}
  .site-header .primary-nav .primary-menu > li > a::after{content:""!important;position:absolute!important;left:0!important;right:100%!important;bottom:1px!important;height:2px!important;border:0!important;border-radius:99px!important;background:var(--ps-coral)!important;transition:right .2s ease!important;}
  .site-header .primary-nav .primary-menu > li:hover > a::after,
.site-header .primary-nav .primary-menu > li:focus-within > a::after,
.site-header .primary-nav .primary-menu > li.current-menu-item > a::after,
.site-header .primary-nav .primary-menu > li.current-menu-ancestor > a::after{right:0!important;}

  .ps-menu-chevron{width:7px!important;height:7px!important;display:inline-block!important;flex:0 0 7px!important;margin:1px 0 0 8px!important;border-right:1.7px solid currentColor!important;border-bottom:1.7px solid currentColor!important;transform:rotate(45deg)!important;transition:transform .2s ease,color .2s ease!important;opacity:.72!important;}
  .menu-item-has-children:hover > a .ps-menu-chevron,
.menu-item-has-children:focus-within > a .ps-menu-chevron{transform:rotate(225deg)!important;margin-top:5px!important;opacity:1!important;}

  /* All parent dropdowns: below the parent, consistent 2-column premium cards. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu{position:absolute!important;top:calc(100% + 10px)!important;max-width:min(520px,calc(100vw - 32px))!important;list-style:none!important;box-sizing:border-box!important;box-shadow:0 30px 75px rgba(7,31,45,.28)!important;transform:translate(-50%,10px)!important;z-index:10000!important;transition:opacity .2s ease,transform .24s ease,visibility 0s linear .2s!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu::before{content:none!important;display:none!important;}

  /* One child = a calm full-width card instead of an awkward half-empty grid. */

  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li{display:block!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a{position:relative!important;transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a::before{color:#fff!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a::after{content:"↗"!important;position:absolute!important;top:11px!important;right:12px!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:none!important;border:0!important;color:#9fc9ff!important;font-size:14px!important;line-height:1!important;transform:none!important;opacity:.9!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{transform:translateY(-2px)!important;border-color:var(--ps-blue)!important;box-shadow:0 16px 28px rgba(0,0,0,.20)!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible::before{background:#fff!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover::after,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible::after{color:#fff!important;}

  /* Nested child menus open BELOW their parent card, never beside it. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu{transition:max-height .25s ease,opacity .18s ease,visibility 0s linear .25s,padding .25s ease!important;}
  
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > a .ps-submenu-chevron{border-right:1.5px solid currentColor!important;border-bottom:1.5px solid currentColor!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:hover > a .ps-submenu-chevron,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:focus-within > a .ps-submenu-chevron{margin-top:4px!important;color:#fff!important;}
  
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li:last-child{margin-bottom:0!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a{justify-content:flex-start!important;color:#fff!important;text-decoration:none!important;}
}

@media(max-width:1180px){
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a{padding-right:0!important;}
  .ps-menu-chevron{display:none!important;}
}

/* ---------- Hero: keep layout, upgrade slide motion only ---------- */
.ps-home .ps-hero-slider{position:relative!important;overflow:hidden!important;}
.ps-home .ps-hero-slide,
.ps-home .ps-hero-slide.is-active,
.ps-home .ps-hero-slide.is-entering,
.ps-home .ps-hero-slide.is-leaving{transition:opacity 1.25s cubic-bezier(.22,.7,.2,1),transform 1.25s cubic-bezier(.22,.7,.2,1)!important;transform-origin:center center!important;will-change:opacity,transform!important;}
.ps-home .ps-hero-slide{opacity:0!important;transform:scale(1.015)!important;visibility:hidden!important;pointer-events:none!important;}
.ps-home .ps-hero-slide.is-active{opacity:1!important;transform:scale(1)!important;visibility:visible!important;pointer-events:auto!important;}
.ps-home .ps-hero-slide.is-entering{opacity:0!important;transform:scale(1.015)!important;visibility:visible!important;z-index:3!important;}
.ps-home .ps-hero-slide.is-entering.is-active{opacity:1!important;transform:scale(1)!important;}
.ps-home .ps-hero-slide.is-leaving{opacity:0!important;transform:scale(.995)!important;visibility:visible!important;z-index:2!important;}
.ps-home .ps-hero-arrow{position:absolute!important;top:50%!important;bottom:auto!important;left:auto!important;right:auto!important;margin:0!important;padding:0!important;transform:translateY(-50%)!important;align-self:auto!important;}
.ps-home .ps-hero-arrow:hover,
.ps-home .ps-hero-arrow:focus-visible{transform:translateY(-50%) scale(1.05)!important;}
.ps-home .ps-hero-dots{position:absolute!important;left:0!important;right:0!important;bottom:24px!important;margin:0!important;padding:8px 12px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;z-index:9!important;}
.ps-home .ps-hero-dots button{margin:0!important;}

/* ---------- Account password: preserve WooCommerce native eye, only recolour it white ---------- */

.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::after{color:#fff!important;background:none!important;border:0!important;opacity:1!important;filter:none!important;text-shadow:none!important;}
.woocommerce-account .password-input .show-password-input:hover,
.woocommerce-account .password-input .show-password-input:focus-visible,
.woocommerce-account-wrapper .password-input .show-password-input:hover,
.woocommerce-account-wrapper .password-input .show-password-input:focus-visible{background:rgba(255,255,255,.10)!important;}

/* ---------- Blog detail: no page shell width restriction and no vertical gaps ---------- */
body.single-post{margin:0!important;padding:0!important;max-width:none!important;width:100%!important;}
body.single-post .ps-announcement,
body.single-post .site-header,
body.single-post .site-footer{margin-top:0!important;margin-bottom:0!important;max-width:none!important;width:100%!important;}
body.single-post .single-post-page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;min-width:0!important;overflow:visible!important;}
body.single-post .single-post-page .container{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;margin-inline:auto!important;}
body.single-post .single-post-page .ps-article-hero,
body.single-post .single-post-page .ps-related-stories{width:100%!important;max-width:none!important;margin:0!important;}
body.single-post .single-post-page .ps-single-post-shell{width:min(1320px,calc(100% - 64px))!important;max-width:1320px!important;margin:-52px auto 0!important;padding:0 0 82px!important;}
body.single-post .single-post-page .ps-single-post-shell .single-post{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;}
body.single-post .single-post-page .single-post-image{width:100%!important;max-width:none!important;margin:0!important;}
body.single-post .single-post-page .single-post-layout{width:100%!important;max-width:none!important;grid-template-columns:260px minmax(0,1fr)!important;gap:34px!important;}
body.single-post .single-post-page .single-post-content{width:100%!important;max-width:none!important;min-width:0!important;}
body.single-post .single-post-page.post-template-classic .single-post-content{max-width:920px!important;margin-inline:auto!important;}
body.single-post .ps-related-stories .container{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;}
body.single-post .site-footer{padding-top:70px!important;}
@media(max-width:900px){
  body.single-post .single-post-page .ps-article-hero .ps-inner-hero-content,
body.single-post .single-post-page .ps-single-post-shell{width:calc(100% - 32px)!important;}
  body.single-post .single-post-page .single-post-layout{grid-template-columns:1fr!important;gap:18px!important;}
}
@media(max-width:620px){
  body.single-post .single-post-page .ps-article-hero .ps-inner-hero-content,
body.single-post .single-post-page .ps-single-post-shell{width:calc(100% - 24px)!important;}
  body.single-post .single-post-page .ps-single-post-shell{margin-top:-24px!important;padding-bottom:54px!important;}
}

/* ---------- Account order notice text becomes a real middle column ---------- */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .ps-notice-copy,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info .ps-notice-copy{min-width:0!important;display:block!important;font-size:13px!important;line-height:1.55!important;color:#294b5f!important;}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .ps-notice-copy strong,
.woocommerce-account-wrapper .woocommerce-MyAccount-content .woocommerce-info .ps-notice-copy strong{display:block!important;color:#0e3347!important;margin-bottom:2px!important;}

/* ---------- Primary navigation: clean chevrons + light premium menu panel ---------- */
@media (min-width:1181px){
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a{display:inline-flex!important;align-items:center!important;gap:8px!important;padding-right:0!important;}

  /* Keep the normal hover treatment on other links, but Shop must not get
     the coral underline crossing below its text. */
  .site-header .primary-nav .primary-menu > li.ps-shop-parent > a::after{display:none!important;content:none!important;}
  .site-header .primary-nav .primary-menu > li.ps-shop-parent > a:hover::after,
.site-header .primary-nav .primary-menu > li.ps-shop-parent > a:focus-visible::after,
.site-header .primary-nav .primary-menu > li.ps-shop-parent:hover > a::after,
.site-header .primary-nav .primary-menu > li.ps-shop-parent:focus-within > a::after{display:none!important;content:none!important;right:auto!important;}

  /* A single, unmistakable chevron. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a .ps-menu-chevron{border-right:1.8px solid var(--ps-blue)!important;border-bottom:1.8px solid var(--ps-blue)!important;border-radius:0!important;transform:rotate(45deg)!important;transition:transform .2s ease,border-color .2s ease!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children:hover > a .ps-menu-chevron,
.site-header .primary-nav .primary-menu > li.menu-item-has-children:focus-within > a .ps-menu-chevron{transform:rotate(225deg)!important;margin:3px 0 0 0!important;border-color:var(--ps-blue)!important;}

  /* Parent dropdown itself: premium light surface, not a dark card wall. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu{top:calc(100% + 12px)!important;left:50%!important;right:auto!important;width:520px!important;min-width:520px!important;max-width:calc(100vw - 32px)!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px 16px!important;margin:0!important;padding:14px 16px 16px!important;background:#ffffff!important;border:1px solid #dce8f2!important;border-radius:20px!important;box-shadow:0 24px 60px rgba(14,51,71,.16),0 4px 14px rgba(14,51,71,.05)!important;transform:translate(-50%,8px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;overflow:visible!important;transition:opacity .18s ease,transform .2s ease,visibility 0s linear .18s!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children:hover > .sub-menu,
.site-header .primary-nav .primary-menu > li.menu-item-has-children:focus-within > .sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important;transition-delay:0s!important;}

  /* Remove all heading/pseudo labels such as "Shop Categories". */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu::before,
.site-header .primary-nav .primary-menu > li.ps-shop-parent > .sub-menu::before{display:none!important;content:none!important;}

  /* Two-column list, no miniature cards. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li{min-width:0!important;margin:0!important;padding:0!important;position:relative!important;list-style:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a{min-height:52px!important;width:100%!important;margin:0!important;padding:9px 12px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;box-sizing:border-box!important;border:0!important;border-radius:12px!important;background:transparent!important;color:#173a4f!important;text-align:left!important;font-size:13px!important;line-height:1.3!important;font-weight:800!important;white-space:normal!important;box-shadow:none!important;transform:none!important;transition:background .18s ease,color .18s ease,transform .18s ease!important;}

  /* Compact brand-matched star marker. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a::before{content:"›"!important;position:static!important;display:grid!important;place-items:center!important;flex:0 0 34px!important;width:34px!important;height:34px!important;margin:0!important;border:1px solid #d7e7f8!important;border-radius:10px!important;background:#edf5ff!important;color:var(--ps-blue)!important;font-size:13px!important;font-weight:900!important;transform:none!important;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a::after{content:none!important;display:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{background:#eaf3ff!important;color:var(--ps-blue)!important;outline:none!important;transform:translateX(2px)!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible::before{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;transform:scale(1.03)!important;}

  /* One child uses the complete panel width. */
  .site-header .primary-nav .primary-menu > li.ps-single-child > .sub-menu{width:520px!important;min-width:520px!important;grid-template-columns:1fr!important;}

  /* Nested child menu stays directly below the parent listing, never beside it. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu{grid-column:1/-1!important;position:static!important;width:100%!important;min-width:0!important;max-width:none!important;display:block!important;margin:2px 0 7px!important;padding:5px!important;background:#f2f7fb!important;border:1px solid #e0ebf4!important;border-radius:12px!important;box-shadow:none!important;max-height:0!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:none!important;transition:max-height .22s ease,opacity .16s ease,visibility 0s linear .22s!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:hover > .sub-menu,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:focus-within > .sub-menu{max-height:260px!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;padding:5px!important;transition-delay:0s!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li{margin:0!important;padding:0!important;list-style:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a{display:flex!important;align-items:center!important;min-height:38px!important;width:100%!important;padding:8px 10px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:var(--ps-blue)!important;font-size:12px!important;font-weight:750!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{background:var(--ps-blue)!important;color:#fff!important;outline:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a::after{content:none!important;display:none!important;}

  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > a .ps-submenu-chevron{margin-left:auto!important;border-right:1.5px solid var(--ps-blue)!important;border-bottom:1.5px solid var(--ps-blue)!important;transform:rotate(45deg)!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:hover > a .ps-submenu-chevron,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:focus-within > a .ps-submenu-chevron{transform:rotate(225deg)!important;}
}

/* ---------- Home hero: full-bleed image + elegant left-content fade ---------- */
@media (min-width:901px){
  .ps-home-hero{width:100vw!important;height:680px!important;border-radius:0!important;overflow:hidden!important;}
  
  .ps-home-hero .ps-hero-slide,
.ps-home-hero .ps-hero-slide.is-active,
.ps-home-hero .ps-hero-slide.is-entering,
.ps-home-hero .ps-hero-slide.is-leaving{transition:opacity 1.18s cubic-bezier(.25,.72,.25,1),visibility 0s!important;}
  .ps-home-hero .ps-hero-slide{opacity:0!important;visibility:hidden!important;pointer-events:none!important;}
  .ps-home-hero .ps-hero-copy{transition:opacity .78s cubic-bezier(.22,.7,.2,1),transform .78s cubic-bezier(.22,.7,.2,1),filter .78s ease!important;}
  .ps-home-hero .ps-hero-slide.is-entering.is-active .ps-hero-copy{transition-delay:.12s!important;}
  .ps-home-hero .ps-hero-slide.is-leaving .ps-hero-copy{transform:translateY(-9px)!important;}

  .ps-home-hero .ps-hero-dots{border:1px solid rgba(255,255,255,.18)!important;background:rgba(7,28,42,.20)!important;backdrop-filter:blur(8px)!important;}
}

/* ---------- WooCommerce account: native-looking eye, explicitly white ---------- */
.woocommerce-account .password-input .show-password-input,
.woocommerce-account-wrapper .password-input .show-password-input{background-repeat:no-repeat!important;background-position:center!important;background-size:18px 18px!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::after{content:none!important;}
.woocommerce-account .password-input .show-password-input:hover,
.woocommerce-account .password-input .show-password-input:focus-visible,
.woocommerce-account-wrapper .password-input .show-password-input:hover,
.woocommerce-account-wrapper .password-input .show-password-input:focus-visible{background-color:rgba(23,105,209,.10)!important;}

/* Small screens: retain the same clean interaction without forcing desktop width. */
@media(max-width:1180px){
  .ps-home-hero{width:100%!important;max-width:none!important;margin:0!important;transform:none!important;}
}
@media(max-width:900px){
  .ps-home-hero .ps-hero-slide{transition:opacity .85s ease!important;}
  .ps-home-hero .ps-hero-slide.is-entering .ps-hero-copy{opacity:0!important;transform:translateY(10px)!important;}
  .ps-home-hero .ps-hero-slide.is-entering.is-active .ps-hero-copy{opacity:1!important;transform:none!important;transition-delay:.08s!important;}
  .ps-home-hero .ps-hero-slide.is-leaving .ps-hero-copy{opacity:0!important;transform:translateY(-6px)!important;}
  
}

/* ---------- Desktop navigation: WordPress hierarchy, clean parent links ---------- */
@media (min-width: 1181px){
  /* Any top-level item with children uses a clean parent label; no coral
     underline underneath the label can leak through the chevron. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a::after,
.site-header .primary-nav .primary-menu > li.menu-item-has-children:hover > a::after,
.site-header .primary-nav .primary-menu > li.menu-item-has-children:focus-within > a::after{content:none!important;display:none!important;width:0!important;right:auto!important;background:none!important;}

  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a{text-decoration:none!important;display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:44px!important;padding:7px 0!important;position:relative!important;}

  /* One clean chevron. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a .ps-menu-chevron{width:7px!important;height:7px!important;flex:0 0 7px!important;margin:0 0 3px 0!important;border:0!important;border-right:1.7px solid var(--ps-blue)!important;border-bottom:1.7px solid var(--ps-blue)!important;transform:rotate(45deg)!important;opacity:1!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children:hover > a .ps-menu-chevron,
.site-header .primary-nav .primary-menu > li.menu-item-has-children:focus-within > a .ps-menu-chevron{transform:rotate(225deg)!important;margin:3px 0 0 0!important;border-color:var(--ps-blue)!important;}

  /* All WordPress parent menus share the same professional dropdown shell. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu{position:absolute!important;top:calc(100% + 9px)!important;left:50%!important;right:auto!important;width:520px!important;min-width:520px!important;max-width:calc(100vw - 36px)!important;margin:0!important;padding:14px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:3px 10px!important;list-style:none!important;box-sizing:border-box!important;overflow:visible!important;background:#ffffff!important;border:1px solid #dbe8f3!important;border-radius:18px!important;box-shadow:0 24px 65px rgba(13,48,73,.15),0 8px 20px rgba(13,48,73,.06)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate(-50%,8px)!important;transition:opacity .18s ease,transform .2s ease,visibility 0s linear .18s!important;z-index:15000!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children:hover > .sub-menu,
.site-header .primary-nav .primary-menu > li.menu-item-has-children:focus-within > .sub-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important;transition-delay:0s!important;}

  /* Never print a generated heading such as "Shop Categories". */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu::after,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > .sub-menu::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > .sub-menu::after{content:none!important;display:none!important;}

  /* Category entries are a refined list, not oversized cards. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li{position:relative!important;display:block!important;min-width:0!important;margin:0!important;padding:0!important;list-style:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a{position:relative!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;width:100%!important;min-height:48px!important;margin:0!important;padding:7px 9px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#193c52!important;text-align:left!important;font-size:13px!important;line-height:1.35!important;font-weight:800!important;box-shadow:none!important;transform:none!important;text-decoration:none!important;transition:background .18s ease,color .18s ease,transform .18s ease!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a::before{content:"›"!important;position:static!important;display:grid!important;place-items:center!important;flex:0 0 30px!important;width:30px!important;height:30px!important;margin:0!important;border:1px solid #d9e8f5!important;border-radius:9px!important;background:#edf6ff!important;color:var(--ps-blue)!important;font-size:11px!important;font-weight:900!important;transform:none!important;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a::after{content:none!important;display:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{background:#eaf4ff!important;color:var(--ps-blue)!important;transform:translateX(1px)!important;outline:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible::before{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;transform:scale(1.04)!important;}

  /* A single child should read like one compact dropdown item, not an empty grid. */
  .site-header .primary-nav .primary-menu > li.ps-single-child > .sub-menu{width:286px!important;min-width:286px!important;grid-template-columns:1fr!important;gap:2px!important;padding:10px!important;}

  /* Nested child menu expands below its parent list item. */
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu{position:static!important;grid-column:1/-1!important;width:100%!important;min-width:0!important;max-width:none!important;display:block!important;margin:1px 0 5px!important;padding:5px!important;list-style:none!important;background:#f4f8fc!important;border:1px solid #dce9f3!important;border-radius:11px!important;box-shadow:none!important;max-height:0!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:none!important;transition:max-height .2s ease,opacity .16s ease,visibility 0s linear .2s!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:hover > .sub-menu,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:focus-within > .sub-menu{max-height:260px!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transition-delay:0s!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li{margin:0!important;padding:0!important;list-style:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a{display:flex!important;align-items:center!important;width:100%!important;min-height:36px!important;padding:7px 9px!important;border-radius:8px!important;color:var(--ps-blue)!important;background:transparent!important;font-size:12px!important;font-weight:750!important;text-decoration:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a::after{content:none!important;display:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{background:var(--ps-blue)!important;color:#fff!important;outline:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children > a .ps-submenu-chevron{margin-left:auto!important;width:6px!important;height:6px!important;border:0!important;border-right:1.5px solid var(--ps-blue)!important;border-bottom:1.5px solid var(--ps-blue)!important;transform:rotate(45deg)!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:hover > a .ps-submenu-chevron,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li.menu-item-has-children:focus-within > a .ps-submenu-chevron{transform:rotate(225deg)!important;}
}

/* ---------- Home hero: true full-bleed image with left overlay content ---------- */
.ps-home-hero{position:relative!important;overflow:hidden!important;border-radius:0!important;padding:0!important;background:#eaf1f6!important;}
@media (min-width:901px){
  .ps-home-hero{width:min(100vw,2000px)!important;max-width:2000px!important;height:clamp(620px,70vh,760px)!important;min-height:620px!important;margin-left:50%!important;margin-right:0!important;transform:translateX(-50%)!important;}
  .ps-home-hero .ps-hero-slides{position:relative!important;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important;}
  .ps-home-hero .ps-hero-slide,
.ps-home-hero .ps-hero-slide.is-active,
.ps-home-hero .ps-hero-slide.is-entering,
.ps-home-hero .ps-hero-slide.is-leaving{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;transform:none!important;visibility:hidden!important;pointer-events:none!important;opacity:0!important;transition:opacity 1.35s cubic-bezier(.25,.72,.25,1),visibility 0s linear 1.35s!important;will-change:opacity!important;}
  .ps-home-hero .ps-hero-slide.is-active{visibility:visible!important;pointer-events:auto!important;opacity:1!important;z-index:2!important;transition:opacity 1.35s cubic-bezier(.25,.72,.25,1),visibility 0s!important;}
  .ps-home-hero .ps-hero-slide.is-entering{visibility:visible!important;opacity:0!important;z-index:3!important;}
  .ps-home-hero .ps-hero-slide.is-entering.is-active{opacity:1!important;}
  .ps-home-hero .ps-hero-slide.is-leaving{visibility:visible!important;opacity:0!important;z-index:2!important;transition:opacity 1.35s cubic-bezier(.25,.72,.25,1),visibility 0s!important;}

  .ps-home-hero .ps-hero-media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important;z-index:0!important;}
  .ps-home-hero .ps-hero-media::after{content:""!important;position:absolute!important;inset:0!important;pointer-events:none!important;background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.84) 24%,rgba(255,255,255,.42) 43%,rgba(255,255,255,.08) 62%,rgba(255,255,255,0) 78%)!important;}
  .ps-home-hero .ps-hero-media img{display:block!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center center!important;animation:none!important;transform:scale(1)!important;transition:transform 1.9s cubic-bezier(.2,.72,.2,1)!important;will-change:transform!important;}
  .ps-home-hero .ps-hero-slide.is-entering .ps-hero-media img{transform:scale(1.045)!important;}
  .ps-home-hero .ps-hero-slide.is-entering.is-active .ps-hero-media img{transform:scale(1)!important;}
  .ps-home-hero .ps-hero-slide.is-leaving .ps-hero-media img{transform:scale(1.01)!important;}

  .ps-home-hero .ps-hero-copy{position:absolute!important;inset:0 auto 0 0!important;width:min(60%,720px)!important;max-width:720px!important;display:flex!important;justify-content:center!important;flex-direction:column!important;align-items:flex-start!important;padding:64px 32px 72px clamp(28px,6vw,108px)!important;margin:0!important;z-index:2!important;opacity:1!important;transform:none!important;filter:none!important;transition:opacity .95s cubic-bezier(.22,.7,.2,1),transform .95s cubic-bezier(.22,.7,.2,1),filter .95s ease!important;will-change:opacity,transform,filter!important;}
  .ps-home-hero .ps-hero-slide.is-entering .ps-hero-copy{opacity:0!important;transform:translateY(14px)!important;filter:blur(2px)!important;}
  .ps-home-hero .ps-hero-slide.is-entering.is-active .ps-hero-copy{opacity:1!important;transform:translateY(0)!important;filter:blur(0)!important;transition-delay:.16s!important;}
  .ps-home-hero .ps-hero-slide.is-leaving .ps-hero-copy{opacity:0!important;transform:translateY(-8px)!important;filter:blur(1px)!important;}
  .ps-home-hero .ps-hero-copy > *{animation:none!important;}
  .ps-home-hero .ps-hero-copy h1{max-width:650px!important;margin:8px 0 12px!important;font-size:clamp(40px, 4.3vw, 60px)!important;line-height:.98!important;letter-spacing:-.055em!important;color:#18374a!important;text-shadow:none!important;}
  .ps-home-hero .ps-hero-copy p{max-width:570px!important;margin:0!important;font-size:18px!important;line-height:1.7!important;}
  .ps-home-hero .hero-actions{margin-top:28px!important;}
  .ps-home-hero .hero-mini-proof{margin-top:12px!important;gap:8px 16px!important;}

  .ps-home-hero .ps-hero-arrow{position:absolute!important;top:50%!important;bottom:auto!important;z-index:8!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.82)!important;border-radius:50%!important;background:rgba(255,255,255,.88)!important;color:var(--ps-blue)!important;display:grid!important;place-items:center!important;font-size:28px!important;line-height:1!important;box-shadow:0 14px 34px rgba(7,31,45,.16)!important;transform:translateY(-50%)!important;}
  .ps-home-hero .ps-hero-arrow:hover,
.ps-home-hero .ps-hero-arrow:focus-visible{background:#fff!important;color:var(--ps-blue)!important;transform:translateY(-50%) scale(1.04)!important;outline:none!important;}
  .ps-home-hero .ps-hero-prev{left:20px!important;}
  .ps-home-hero .ps-hero-next{right:20px!important;}

  .ps-home-hero .ps-hero-dots{position:absolute!important;left:50%!important;right:auto!important;bottom:18px!important;z-index:8!important;transform:translateX(-50%)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;margin:0!important;padding:7px 10px!important;border:1px solid rgba(255,255,255,.50)!important;border-radius:999px!important;background:rgba(20,47,69,.30)!important;box-shadow:0 10px 26px rgba(8,26,40,.12)!important;backdrop-filter:blur(7px)!important;}
  .ps-home-hero .ps-hero-dots button{width:7px!important;height:7px!important;padding:0!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.65)!important;transition:width .22s ease,background .22s ease,transform .22s ease!important;}
  .ps-home-hero .ps-hero-dots button.is-active{width:22px!important;height:7px!important;border-radius:999px!important;background:#fff!important;}
}

/* ---------- Account details: reliable, visible white eye control ---------- */
.woocommerce-account .password-input input[type=password],
.woocommerce-account .password-input input[type=text],
.woocommerce-account-wrapper .password-input input[type=password],
.woocommerce-account-wrapper .password-input input[type=text]{padding-right:54px!important;}
.woocommerce-account .password-input .show-password-input,
.woocommerce-account-wrapper .password-input .show-password-input{background:transparent!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::before{content:none!important;}
.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::after{content:""!important;width:18px!important;height:18px!important;background-color:#fff!important;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.25 12s3.7-6 9.75-6 9.75 6 9.75 6-3.7 6-9.75 6S2.25 12 2.25 12Z' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.7' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.25 12s3.7-6 9.75-6 9.75 6 9.75 6-3.7 6-9.75 6S2.25 12 2.25 12Z' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.7' fill='none' stroke='black' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat!important;}
.woocommerce-account .password-input .show-password-input:hover,
.woocommerce-account .password-input .show-password-input:focus-visible,
.woocommerce-account-wrapper .password-input .show-password-input:hover,
.woocommerce-account-wrapper .password-input .show-password-input:focus-visible{background:rgba(255,255,255,.08)!important;}

@media(max-width:900px){
  .ps-home-hero{width:100%!important;max-width:none!important;margin:0!important;transform:none!important;height:auto!important;min-height:0!important;}
  .ps-home-hero .ps-hero-slide{position:relative!important;inset:auto!important;display:none!important;height:auto!important;min-height:0!important;opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important;}
  .ps-home-hero .ps-hero-slide.is-active{display:grid!important;}
  .ps-home-hero .ps-hero-media{position:relative!important;inset:auto!important;height:360px!important;min-height:360px!important;}
  .ps-home-hero .ps-hero-copy{position:relative!important;inset:auto!important;width:auto!important;max-width:none!important;padding:40px 22px 30px!important;display:block!important;order:-1!important;}
  .ps-home-hero .ps-hero-copy h1{font-size:clamp(38px, 4.8vw, 48px)!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-home-hero .ps-hero-arrow{top:55%!important;}
  .ps-home-hero .ps-hero-dots{bottom:15px!important;}
}

/* Final guardrails: nothing decorative is allowed to masquerade as a parent-menu underline or title. */
@media (min-width:1181px){
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a::before,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > a::after,
.site-header .primary-nav .primary-menu .sub-menu::before,
.site-header .primary-nav .primary-menu .sub-menu::after{content:none!important;display:none!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children > a .ps-menu-chevron{position:relative!important;display:inline-block!important;visibility:visible!important;}
}

/* ---------- HOME HERO: one full-bleed image, one content unit ---------- */
.ps-home .ps-hero-slider.ps-home-hero{height:clamp(590px,68vh,720px)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slides{max-width:none!important;border-radius:0!important;isolation:isolate!important;}
@media(min-width:901px){
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-leaving{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;visibility:hidden!important;opacity:0!important;transform:none!important;clip-path:none!important;z-index:1!important;background:transparent!important;transition:opacity 1.5s cubic-bezier(.4,0,.2,1),visibility 0s linear 1.5s!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active{visibility:visible!important;opacity:1!important;z-index:3!important;transition:opacity 1.5s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving{visibility:visible!important;opacity:0!important;z-index:2!important;transition:opacity 1.5s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-media{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important;border-radius:0!important;z-index:0!important;background:#ece5dc!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::after{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none!important;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.91) 20%,rgba(255,255,255,.68) 36%,rgba(255,255,255,.22) 55%,rgba(255,255,255,0) 72%)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-media img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center center!important;transform:scale(1.025)!important;animation:none!important;transition:transform 1.7s cubic-bezier(.2,.75,.2,1)!important;will-change:transform!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active .ps-hero-media img{transform:scale(1)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{position:relative!important;z-index:4!important;height:100%!important;min-height:0!important;padding:0 0 86px!important;display:flex!important;justify-content:center!important;align-items:flex-start!important;flex-direction:column!important;color:#0e3347!important;opacity:0!important;transform:translateY(16px)!important;filter:blur(1.5px)!important;transition:opacity .95s cubic-bezier(.22,.7,.2,1),transform .95s cubic-bezier(.22,.7,.2,1),filter .95s ease!important;will-change:opacity,transform,filter!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active .ps-hero-copy{opacity:1!important;transform:translateY(0)!important;filter:blur(0)!important;transition-delay:.14s!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving .ps-hero-copy{opacity:0!important;transform:translateY(-8px)!important;filter:blur(1px)!important;transition-delay:0s!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy > *{animation:none!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy .badge{background:rgba(255,255,255,.72)!important;color:#1769d1!important;border:1px solid rgba(23,105,209,.14)!important;box-shadow:0 10px 25px rgba(14,51,71,.05)!important;backdrop-filter:blur(8px)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1{color:#18374a!important;max-width:720px!important;margin:8px 0 12px!important;font-size:clamp(40px, 4.3vw, 60px)!important;line-height:.98!important;letter-spacing:-.056em!important;text-wrap:balance!important;text-shadow:none!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1 span{color:#285787!important;text-shadow:none!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy p{max-width:570px!important;margin:0!important;color:#496575!important;font-size:17px!important;line-height:1.72!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions{margin-top:27px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions .btn{height:48px!important;min-height:48px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof{margin-top:12px!important;color:#61737d!important;gap:8px 16px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow{position:absolute!important;top:50%!important;bottom:auto!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;transform:translateY(-50%)!important;border:1px solid rgba(255,255,255,.78)!important;border-radius:50%!important;background:rgba(255,255,255,.76)!important;color:#0e3347!important;box-shadow:0 12px 30px rgba(14,51,71,.14)!important;z-index:12!important;font-size:26px!important;line-height:1!important;backdrop-filter:blur(10px)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:hover,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:focus-visible{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;transform:translateY(-50%) scale(1.045)!important;outline:none!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-prev{left:20px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-next{right:20px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots{position:absolute!important;left:50%!important;right:auto!important;bottom:20px!important;transform:translateX(-50%)!important;width:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;margin:0!important;padding:7px 10px!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:999px!important;background:rgba(14,51,71,.23)!important;box-shadow:0 8px 22px rgba(14,51,71,.10)!important;backdrop-filter:blur(8px)!important;z-index:13!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots button{width:7px!important;height:7px!important;margin:0!important;padding:0!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.64)!important;box-shadow:none!important;transition:width .24s ease,background .24s ease!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots button.is-active{width:23px!important;background:#fff!important;}
}

@media(max-width:900px){
  
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slides{height:auto!important;min-height:700px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-leaving{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;visibility:hidden!important;opacity:0!important;transform:none!important;transition:opacity .9s ease,visibility 0s linear .9s!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active{visibility:visible!important;opacity:1!important;z-index:3!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving{visibility:visible!important;opacity:0!important;z-index:2!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-media{position:absolute!important;inset:0!important;height:100%!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::after{background:linear-gradient(180deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.78) 44%,rgba(255,255,255,.15) 76%,rgba(255,255,255,0) 100%)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{min-height:700px!important;justify-content:center!important;color:#0e3347!important;opacity:0!important;transform:translateY(12px)!important;filter:blur(1px)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active .ps-hero-copy{opacity:1!important;transform:none!important;filter:none!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving .ps-hero-copy{opacity:0!important;transform:translateY(-6px)!important;filter:blur(1px)!important;}
  
}
@media(max-width:620px){
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slides{min-height:650px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{min-height:650px!important;padding:54px 20px 78px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1{font-size:42px!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy p{font-size:15px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;font-size:21px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-prev{left:12px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-next{right:12px!important;}
}

/* ---------- PASSWORD FIELD: native-style, always-visible white eye ---------- */

.woocommerce-account .password-input input[type=password]:focus,
.woocommerce-account .password-input input[type=text]:focus,
.woocommerce-account-wrapper .password-input input[type=password]:focus,
.woocommerce-account-wrapper .password-input input[type=text]:focus{box-shadow:0 0 0 4px rgba(23,105,209,.10)!important;}
.woocommerce-account .password-input .show-password-input,
.woocommerce-account-wrapper .password-input .show-password-input{background-image:none!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::before{-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' d='M2.4 12s3.6-6.2 9.6-6.2S21.6 12 21.6 12 18 18.2 12 18.2 2.4 12 2.4 12Z'/%3E%3Ccircle cx='12' cy='12' r='2.8' fill='none' stroke='black' stroke-width='1.9'/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' d='M2.4 12s3.6-6.2 9.6-6.2S21.6 12 21.6 12 18 18.2 12 18.2 2.4 12 2.4 12Z'/%3E%3Ccircle cx='12' cy='12' r='2.8' fill='none' stroke='black' stroke-width='1.9'/%3E%3C/svg%3E") center/contain no-repeat!important;}
.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::after{content:none!important;}

/* ---------- BLOG CARDS: restore the supplied 1000x680 image proportion ---------- */
.blog-card-image{position:relative!important;display:block!important;aspect-ratio:1000 / 680!important;height:auto!important;min-height:0!important;overflow:hidden!important;background:#eef3f7!important;}
.blog-card-image img{display:block!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;object-fit:cover!important;object-position:center center!important;transform:none!important;}
.blog-card:hover .blog-card-image img{transform:scale(1.025)!important;}
.blog-card-large .blog-card-image{aspect-ratio:1000 / 680!important;height:auto!important;}
.blog-card-large .blog-card-image img{width:100%!important;height:100%!important;object-fit:cover!important;}
.ps-related-stories .blog-card-image{aspect-ratio:1000 / 680!important;height:auto!important;}

/* ---------- SHOP ARCHIVE BUTTONS: use PrintStrokes blue consistently ---------- */
body.woocommerce-shop .ps-shop-results .button,
body.woocommerce-shop .ps-shop-results a.button,
body.woocommerce-shop .ps-shop-sidebar .ps-filter-submit,
body.tax-product_cat .ps-shop-results .button,
body.tax-product_cat .ps-shop-results a.button{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;}
body.woocommerce-shop .ps-shop-results .button:hover,
body.woocommerce-shop .ps-shop-results a.button:hover,
body.woocommerce-shop .ps-shop-sidebar .ps-filter-submit:hover,
body.tax-product_cat .ps-shop-results .button:hover,
body.tax-product_cat .ps-shop-results a.button:hover{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;}

/* ---------- HOME HERO: full-bleed, image-led, stable cross-fade ---------- */
.ps-home .ps-hero-slider.ps-home-hero{position:relative!important;width:100vw!important;max-width:2000px!important;height:clamp(600px,72vh,760px)!important;min-height:600px!important;margin:0 auto!important;padding:0!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:#ebe4da!important;isolation:isolate!important;}
@media(min-width:901px){
  .ps-home .ps-hero-slider.ps-home-hero{width:min(100vw,2000px)!important;margin-left:50%!important;transform:translateX(-50%)!important;}
}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slides{position:relative!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-leaving{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;visibility:hidden!important;opacity:0!important;transform:none!important;clip-path:none!important;z-index:0!important;background:transparent!important;pointer-events:none!important;transition:opacity 1.35s cubic-bezier(.4,0,.2,1),visibility 0s linear 1.35s!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active{visibility:visible!important;opacity:1!important;z-index:2!important;pointer-events:auto!important;transition:opacity 1.35s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving{visibility:visible!important;opacity:0!important;z-index:1!important;pointer-events:none!important;transition:opacity 1.35s cubic-bezier(.4,0,.2,1),visibility 0s linear 0s!important;}

.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media{position:absolute!important;min-height:0!important;border-radius:0!important;overflow:hidden!important;background:#ebe4da!important;z-index:0!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::before{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;pointer-events:none!important;background:linear-gradient(90deg,
    rgba(255,251,246,.97) 0%,
    rgba(255,251,246,.91) 17%,
    rgba(255,251,246,.69) 34%,
    rgba(255,251,246,.27) 52%,
    rgba(255,251,246,0) 70%)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::after{content:""!important;position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none!important;background:linear-gradient(180deg,rgba(14,51,71,.02),rgba(14,51,71,.10))!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;min-width:100%!important;min-height:100%!important;object-fit:cover!important;transform:scale(1.035)!important;animation:none!important;transition:transform 2.2s cubic-bezier(.2,.7,.2,1)!important;will-change:transform!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active .ps-hero-media img{transform:scale(1)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving .ps-hero-media img{transform:scale(1.018)!important;}

.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{position:relative!important;z-index:3!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;height:100%!important;min-height:0!important;margin:0 auto!important;padding:0 40px 56px max(28px,calc((100vw - 1260px)/2))!important;color:#0e3347!important;opacity:0!important;transform:translate3d(0,18px,0)!important;filter:blur(2px)!important;pointer-events:none!important;transition:opacity 1s cubic-bezier(.22,.7,.2,1),transform 1s cubic-bezier(.22,.7,.2,1),filter 1s ease!important;will-change:opacity,transform,filter!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active .ps-hero-copy{opacity:1!important;transform:translate3d(0,0,0)!important;filter:blur(0)!important;pointer-events:auto!important;transition-delay:.14s!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving .ps-hero-copy{opacity:0!important;transform:translate3d(0,-7px,0)!important;filter:blur(1px)!important;pointer-events:none!important;transition-delay:0s!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy > *{animation:none!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy .badge{display:inline-flex!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important;padding:9px 13px!important;border-radius:999px!important;background:rgba(255,255,255,.74)!important;color:#1769d1!important;border:1px solid rgba(23,105,209,.15)!important;box-shadow:0 10px 24px rgba(14,51,71,.07)!important;backdrop-filter:blur(10px)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1{text-wrap:balance!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy p{margin:0!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-actions{display:flex!important;align-items:center!important;gap:11px!important;margin-top:28px!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-actions .btn{min-height:48px!important;height:48px!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof{display:flex!important;flex-wrap:wrap!important;font-size:11px!important;color:#60737e!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof span{backdrop-filter:blur(6px)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow{position:absolute!important;z-index:8!important;min-width:46px!important;min-height:46px!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;transform:translateY(-50%)!important;border:1px solid rgba(255,255,255,.88)!important;border-radius:50%!important;background:rgba(255,255,255,.84)!important;color:#0e3347!important;box-shadow:0 14px 30px rgba(14,51,71,.15)!important;font-size:25px!important;line-height:1!important;backdrop-filter:blur(10px)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-prev{left:20px!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-next{right:20px!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:hover,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:focus-visible{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;transform:translateY(-50%) scale(1.04)!important;outline:none!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots{position:absolute!important;right:auto!important;z-index:9!important;width:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;margin:0!important;padding:8px 11px!important;transform:translateX(-50%)!important;border:1px solid rgba(255,255,255,.46)!important;border-radius:999px!important;background:rgba(14,51,71,.24)!important;box-shadow:0 10px 25px rgba(14,51,71,.10)!important;backdrop-filter:blur(9px)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots button{width:7px!important;height:7px!important;min-width:7px!important;min-height:7px!important;margin:0!important;padding:0!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.66)!important;box-shadow:none!important;transition:width .25s ease,background .25s ease!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots button.is-active{width:22px!important;background:#fff!important;}

/* ---------- PASSWORD FIELD: WooCommerce toggle, styled only ---------- */
.woocommerce-account .password-input,
.woocommerce-account-wrapper .password-input{position:relative!important;display:block!important;width:100%!important;isolation:isolate!important;}
.woocommerce-account .password-input input[type=password],
.woocommerce-account .password-input input[type=text],
.woocommerce-account-wrapper .password-input input[type=password],
.woocommerce-account-wrapper .password-input input[type=text]{width:100%!important;min-height:52px!important;height:52px!important;padding:0 58px 0 15px!important;box-sizing:border-box!important;border:1px solid #d7e0e7!important;border-radius:13px!important;background:#fff!important;color:#163a4e!important;box-shadow:none!important;}
.woocommerce-account .password-input input[type=password]:focus,
.woocommerce-account .password-input input[type=text]:focus,
.woocommerce-account-wrapper .password-input input[type=password]:focus,
.woocommerce-account-wrapper .password-input input[type=text]:focus{outline:none!important;border-color:#1769d1!important;box-shadow:0 0 0 4px rgba(23,105,209,.11)!important;}
.woocommerce-account .password-input .show-password-input,
.woocommerce-account-wrapper .password-input .show-password-input{position:absolute!important;top:50%!important;right:7px!important;z-index:4!important;display:grid!important;place-items:center!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;margin:0!important;padding:0!important;transform:translateY(-50%)!important;border-radius:9px!important;background:#0e3347!important;opacity:1!important;filter:none!important;cursor:pointer!important;overflow:hidden!important;}
.woocommerce-account .password-input .show-password-input:hover,
.woocommerce-account .password-input .show-password-input:focus-visible,
.woocommerce-account-wrapper .password-input .show-password-input:hover,
.woocommerce-account-wrapper .password-input .show-password-input:focus-visible{background:#1769d1!important;outline:none!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::after{content:""!important;display:block!important;position:absolute!important;inset:0!important;width:19px!important;height:19px!important;margin:auto!important;background:#fff!important;-webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important;-webkit-mask-position:center!important;mask-position:center!important;-webkit-mask-size:contain!important;mask-size:contain!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.4 12s3.6-6.2 9.6-6.2S21.6 12 21.6 12 18 18.2 12 18.2 2.4 12 2.4 12Z' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.8' fill='none' stroke='black' stroke-width='1.9'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.4 12s3.6-6.2 9.6-6.2S21.6 12 21.6 12 18 18.2 12 18.2 2.4 12 2.4 12Z' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.8' fill='none' stroke='black' stroke-width='1.9'/%3E%3C/svg%3E")!important;}
.woocommerce-account .password-input .show-password-input::after,
.woocommerce-account-wrapper .password-input .show-password-input::after{display:none!important;}
.woocommerce-account .password-input .show-password-input.ps-password-visible::before,
.woocommerce-account-wrapper .password-input .show-password-input.ps-password-visible::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3l18 18' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3Cpath d='M4 7.5C6.1 6 8.8 5.1 12 5.1c6 0 9.6 6.2 9.6 6.2-.9 1.5-2.3 2.8-4.1 3.9M4.3 10.7C3.1 11.4 2.4 12 2.4 12s3.6 6.2 9.6 6.2c1.2 0 2.3-.2 3.4-.5' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.6 9.7a3.4 3.4 0 004.7 4.7' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3C/svg%3E")!important;}

@media(max-width:900px){
  .ps-home .ps-hero-slider.ps-home-hero{width:100%!important;max-width:none!important;height:650px!important;min-height:650px!important;margin:0!important;transform:none!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::before{background:linear-gradient(180deg,rgba(255,251,246,.96) 0%,rgba(255,251,246,.88) 44%,rgba(255,251,246,.42) 74%,rgba(255,251,246,0) 100%)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{width:100%!important;height:100%!important;padding:62px 24px 78px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1{font-size:clamp(38px, 4.8vw, 48px)!important;max-width:620px!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions{flex-wrap:wrap!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;font-size:22px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-prev{left:12px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-next{right:12px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots{bottom:18px!important;}
}
@media(max-width:600px){
  .ps-home .ps-hero-slider.ps-home-hero{height:690px!important;min-height:690px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{padding:50px 18px 78px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions{flex-direction:column!important;align-items:stretch!important;width:100%!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions .btn{width:100%!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof{gap:8px 16px!important;margin-top:12px!important;}
}

/* Home hero: reduce the desktop left inset without changing the composition. */
@media (min-width:901px){
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{padding-left:max(22px,calc((100vw - 1260px)/2 - 30px))!important;}
  /* The content enters from the right, not from below. */
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{transform:translate3d(34px,0,0)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active .ps-hero-copy{transform:translate3d(0,0,0)!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving .ps-hero-copy{transform:translate3d(-18px,0,0)!important;}
}

/* Keep WooCommerce shop buttons on the actual PrintStrokes palette. */
body.woocommerce-shop .ps-shop-results .button,
body.woocommerce-shop .ps-shop-results a.button,
body.woocommerce-shop .ps-shop-sidebar .ps-filter-submit,
body.tax-product_cat .ps-shop-results .button,
body.tax-product_cat .ps-shop-results a.button,
body.tax-product_cat .ps-shop-sidebar .ps-filter-submit{background:var(--ps-navy)!important;border-color:var(--ps-navy)!important;color:#fff!important;box-shadow:0 10px 22px rgba(14,51,71,.12)!important;}
body.woocommerce-shop .ps-shop-results .button:hover,
body.woocommerce-shop .ps-shop-results a.button:hover,
body.woocommerce-shop .ps-shop-sidebar .ps-filter-submit:hover,
body.tax-product_cat .ps-shop-results .button:hover,
body.tax-product_cat .ps-shop-results a.button:hover,
body.tax-product_cat .ps-shop-sidebar .ps-filter-submit:hover{background:var(--ps-coral)!important;border-color:var(--ps-coral)!important;color:#fff!important;box-shadow:0 12px 25px rgba(232,93,73,.18)!important;}

/* Account password: clean native-style straight eye, white, no hover washout. */
.woocommerce-account .password-input .show-password-input,
.woocommerce-account-wrapper .password-input .show-password-input{background:var(--ps-navy)!important;color:#fff!important;border:0!important;box-shadow:none!important;}
.woocommerce-account .password-input .show-password-input:hover,
.woocommerce-account .password-input .show-password-input:focus-visible,
.woocommerce-account-wrapper .password-input .show-password-input:hover,
.woocommerce-account-wrapper .password-input .show-password-input:focus-visible{background:var(--ps-navy)!important;color:#fff!important;box-shadow:none!important;transform:translateY(-50%)!important;}
.woocommerce-account .password-input .show-password-input::before,
.woocommerce-account-wrapper .password-input .show-password-input::before{content:""!important;display:block!important;position:absolute!important;inset:0!important;width:19px!important;height:19px!important;margin:auto!important;background:#fff!important;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.4 12s3.6-6.2 9.6-6.2S21.6 12 21.6 12 18 18.2 12 18.2 2.4 12 2.4 12Z' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.8' fill='none' stroke='black' stroke-width='1.9'/%3E%3C/svg%3E") center/contain no-repeat!important;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.4 12s3.6-6.2 9.6-6.2S21.6 12 21.6 12 18 18.2 12 18.2 2.4 12 2.4 12Z' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.8' fill='none' stroke='black' stroke-width='1.9'/%3E%3C/svg%3E") center/contain no-repeat!important;}
.woocommerce-account .password-input .show-password-input.ps-password-visible::before,
.woocommerce-account-wrapper .password-input .show-password-input.ps-password-visible::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3l18 18' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3Cpath d='M4 7.5C6.1 6 8.8 5.1 12 5.1c6 0 9.6 6.2 9.6 6.2-.9 1.5-2.3 2.8-4.1 3.9M4.3 10.7C3.1 11.4 2.4 12 2.4 12s3.6 6.2 9.6 6.2c1.2 0 2.3-.2 3.4-.5' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.6 9.7a3.4 3.4 0 004.7 4.7' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3l18 18' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3Cpath d='M4 7.5C6.1 6 8.8 5.1 12 5.1c6 0 9.6 6.2 9.6 6.2-.9 1.5-2.3 2.8-4.1 3.9M4.3 10.7C3.1 11.4 2.4 12 2.4 12s3.6 6.2 9.6 6.2c1.2 0 2.3-.2 3.4-.5' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.6 9.7a3.4 3.4 0 004.7 4.7' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;}

/* Hero: bring the left content much closer to the viewport edge while
   keeping the existing full-bleed image/composition unchanged. */
@media (min-width:901px){
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{width:100%!important;max-width:none!important;margin:0!important;padding:0 clamp(32px,4vw,78px) 56px!important;}
}

/* Hero proof points: readable on the light image overlay — dark text on a
   soft premium surface, with the accent star matching the site palette. */
.ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof{color:var(--ps-navy)!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof span{color:#52636e!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:blur(8px)!important;background-color:transparent!important;border-radius:0!important;padding:0!important;min-height:0!important;height:auto!important;white-space:nowrap!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof span b{color:#52636e!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;min-height:0!important;height:auto!important;white-space:nowrap!important;}

/* Shop pagination: use the actual PrintStrokes navy/coral palette instead of
   the legacy bright blue (#1769d1). */
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers.current,
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers a:hover,
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers a:focus-visible{background:var(--ps-navy)!important;background-color:var(--ps-navy)!important;border-color:var(--ps-navy)!important;color:#fff!important;box-shadow:0 8px 18px rgba(14,51,71,.16)!important;}
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers a:hover,
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers a:focus-visible{background:var(--ps-coral)!important;background-color:var(--ps-coral)!important;border-color:var(--ps-coral)!important;color:#fff!important;box-shadow:0 10px 22px rgba(232,93,73,.18)!important;}

/* Hero: restore 30px of breathing room on the desktop left edge. */
@media (min-width:901px){
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{padding-left:clamp(62px,calc(4vw + 30px),108px)!important;}
}

/* Hero: faster, softer cross-fade with a clean right-to-left content entrance. */
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-leaving{transition:opacity .92s cubic-bezier(.35,.15,.2,1),visibility 0s linear .92s!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active{transition:opacity .92s cubic-bezier(.35,.15,.2,1),visibility 0s linear 0s!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active.is-leaving{transition:opacity .92s cubic-bezier(.35,.15,.2,1),visibility 0s linear 0s!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media img{transition:transform 1.15s cubic-bezier(.22,.75,.2,1)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{transition:opacity .78s cubic-bezier(.22,.75,.2,1),transform .78s cubic-bezier(.22,.75,.2,1),filter .78s ease!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide.is-active .ps-hero-copy{transition-delay:.08s!important;}

/* Mobile hamburger: use the three real spans only; suppress the legacy
   span pseudo-elements so the icon never becomes a 9-line stack. */
.site-header .menu-toggle{gap:5px!important;box-shadow:0 8px 20px rgba(14,51,71,.07)!important;overflow:hidden!important;}
.site-header .menu-toggle span,
.site-header .menu-toggle span::before,
.site-header .menu-toggle span::after{content:none!important;position:static!important;display:block!important;width:auto!important;height:auto!important;margin:0!important;}
.site-header .menu-toggle span{flex:0 0 2px!important;transition:transform .22s ease,opacity .18s ease,background .22s ease!important;}

.site-header .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)!important;}
.site-header .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0!important;}
.site-header .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important;}
@media(max-width:700px){
  .site-header .menu-toggle{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;}
  .site-header .menu-toggle span{width:18px!important;}
}
@media(max-width:480px){
  .site-header .menu-toggle span{width:17px!important;}
}

/* Shop pagination: match the actual primary button background on hover and
   active states instead of introducing a separate bright/coral fill. */
.woocommerce-page-wrap .woocommerce-pagination .page-numbers a:hover,
.woocommerce-page-wrap .woocommerce-pagination .page-numbers a:focus-visible,
.woocommerce-page-wrap .woocommerce-pagination .page-numbers.current,
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers a:hover,
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers a:focus-visible,
body.woocommerce-page-wrap .ps-shop-shell .woocommerce-pagination .page-numbers.current{background:var(--ps-navy)!important;background-color:var(--ps-navy)!important;border-color:var(--ps-navy)!important;color:#fff!important;box-shadow:0 10px 22px rgba(14,51,71,.16)!important;}

/* Personalise. Print. Smile. section: give the CTA a little more breathing
   room above the button without changing the section layout. */
.ps-editor-section .ps-editor-cta{margin-top:38px!important;}
@media(max-width:760px){
  .ps-editor-section .ps-editor-cta{margin-top:28px!important;}
}

/* Header account: replace text pill with a clean user icon. */
.header-actions .ps-header-account{display:grid;place-items:center;padding:0!important;width:42px;height:42px;border-radius:12px;background:#edf5fb;color:var(--ps-blue);text-decoration:none;}
.header-actions .ps-header-account:hover{background:#285787!important;color:#fff!important;transform:none!important;box-shadow:none!important;translate:none!important;background-color:#285787!important;border-color:#285787!important;}
.ps-user-svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.header-actions .ps-header-account:after{display:none!important;}

/* Home hero: separate the eyebrow/accent colours from the blue image treatment. */
.ps-home-hero .ps-hero-copy .badge{background:rgba(255,247,243,.96)!important;border:1px solid rgba(201,72,57,.18)!important;box-shadow:0 8px 22px rgba(15,49,88,.08);}
.ps-home-hero .ps-hero-copy .badge.badge-coral{background:#fff0eb!important;color:#b74334!important;}
.ps-home-hero .ps-hero-copy .badge.badge-blue{background:#fff7f2!important;color:#a94739!important;}

.ps-home-hero .ps-hero-copy p{color:#506174!important;}

/* The 'More than prints' block is intentionally editorial, not hero-like. */
.ps-about-strip{position:relative;background:#fff!important;overflow:hidden;}
.ps-about-strip:before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#dbe6ef 18%,#f0d9d3 82%,transparent);}
.ps-about-strip .ps-about-home-grid{position:relative;}
.ps-about-home-copy{position:relative;}
.ps-about-home-copy:before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:99px;background:linear-gradient(180deg,#d25745,#3c7eb7);}
.ps-about-home-copy .eyebrow{color:#b84b3b;font-weight:700!important;}
.ps-about-home-copy .section-title{font-size:clamp(32px,3.5vw,52px);line-height:1.05;max-width:650px;color:#102f50;}
.ps-about-home-copy .section-copy{max-width:600px;}

.ps-about-home-stats div{border-color:#e4ebf1;box-shadow:0 8px 24px rgba(15,49,88,.04);}
.ps-about-home-image{box-shadow:0 22px 55px rgba(15,49,88,.10);}

/* Account page: remove image heroes and use clean card-based hierarchy. */
.ps-account-page .account-guest-section{padding-top:58px!important;padding-bottom:72px!important;}
.account-guest-card,
.account-welcome-card{position:relative;display:grid;align-items:center;gap:24px;border:1px solid #dfe8ef;border-radius:28px;background:linear-gradient(135deg,#fff 0%,#f6faff 100%);box-shadow:0 22px 65px rgba(15,49,88,.09);overflow:hidden;}
.account-guest-card{grid-template-columns:auto 1fr auto;padding:34px 38px;}
.account-guest-card:after,
.account-welcome-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-130px;top:-150px;background:rgba(57,133,196,.08);pointer-events:none;}
.account-guest-icon,
.account-welcome-avatar{display:grid;place-items:center;flex:0 0 auto;width:64px;height:64px;border-radius:20px;background:linear-gradient(135deg,#eef6fc,#fff0eb);color:var(--ps-blue);}
.account-guest-icon svg,
.account-welcome-avatar svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.account-guest-copy,
.account-welcome-copy{position:relative;z-index:1;}
.account-guest-copy .eyebrow,
.account-welcome-copy .eyebrow{font-size:11px;color:#b84b3b;font-weight:700!important;}
.account-guest-copy h1,
.account-welcome-copy h1{font-size:clamp(30px,3.2vw,46px);line-height:1.05;letter-spacing:-.04em;color:#102f50;margin:7px 0 9px;}
.account-guest-copy p,
.account-welcome-copy p{margin:0;color:#647386;max-width:700px;font-size:15px;line-height:1.6;}
.account-logged-out-actions{position:relative;z-index:2;display:flex;gap:10px;flex-wrap:wrap;}
.account-welcome-section{padding-top:54px!important;padding-bottom:0!important;}
.account-welcome-card{grid-template-columns:auto 1fr auto;padding:30px 36px;}
.account-welcome-copy h1{font-size:clamp(30px,3vw,44px);}
.account-welcome-actions{position:relative;z-index:2;display:flex;align-items:center;gap:14px;}
.account-logout-link{font-size:13px;font-weight:900;color:#5d6c7d;text-decoration:none;}
.account-logout-link:hover{color:var(--ps-red);}

.ps-account-page .account-layout-grid{margin-top:0;}

/* Auth pages: no hero banners; use an editorial heading above the two-column card layout. */
.ps-auth-page{background:linear-gradient(180deg,#f7fafc 0,#fff 420px);}
.auth-page-intro{padding-top:58px!important;padding-bottom:28px!important;}
.auth-page-intro-inner{max-width:850px;}
.auth-page-intro-inner .eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:#fff0eb;color:#b84b3b;border:1px solid #f0d7d1;font-size:11px;font-weight:700!important;}
.auth-page-intro-inner h1{font-size:clamp(34px,4.5vw,60px);line-height:1.04;letter-spacing:-.045em;color:#102f50;margin:13px 0 12px;}
.auth-page-intro-inner h1:after{content:"";display:block;width:52px;height:4px;border-radius:99px;margin-top:17px;background:linear-gradient(90deg,#c94d3c,#3c7eb7);}
.auth-page-intro-inner p{font-size:17px;line-height:1.65;color:#667587;max-width:700px;margin:0;}
.auth-section{padding-top:28px!important;padding-bottom:84px!important;}
.auth-modern-grid{gap:28px;grid-template-columns:minmax(0,1fr) minmax(380px,500px);}
.auth-showcase{min-height:610px;border-radius:28px;padding:42px;background:linear-gradient(145deg,#0e3350,#285787 68%,#3d83bb);box-shadow:0 24px 65px rgba(15,49,88,.16);}
.auth-showcase h2{color:#fff;font-size:clamp(38px,4vw,56px);}
.auth-form-card{border:1px solid #dfe7ee!important;border-radius:28px!important;background:#fff!important;box-shadow:0 22px 65px rgba(15,49,88,.10)!important;padding:32px!important;}
.auth-form-head .eyebrow{color:#b84b3b;font-size:11px;font-weight:700!important;}
.auth-form-head h2{color:#102f50!important;font-size:32px!important;letter-spacing:-.035em;}
.auth-form-head p{color:#6a7888;}
.auth-form-card .ps-wp-login-form input,
.auth-form-card .ps-register-form input{border-color:#d6e0e8!important;background:#fbfdff!important;border-radius:12px!important;min-height:48px;}
.auth-form-card .ps-wp-login-form input:focus,
.auth-form-card .ps-register-form input:focus{border-color:#3c7eb7!important;box-shadow:0 0 0 3px rgba(60,126,183,.10)!important;}
.auth-divider{color:#8a97a5!important;}
.auth-divider:before,
.auth-divider:after{background:#e5ebf0!important;}

/* Mobile refinements for the new card layouts. */
@media(max-width:900px){
  .account-guest-card,
.account-welcome-card{grid-template-columns:auto 1fr;}
  .account-logged-out-actions,
.account-welcome-actions{grid-column:1 / -1;}
  .account-guest-card,
.account-welcome-card{padding:26px;}
  .ps-about-home-grid{grid-template-columns:1fr;gap:35px;}
  .ps-about-home-copy{padding-left:26px;}
  .ps-about-home-image{order:2;}
  .auth-modern-grid{grid-template-columns:1fr;}
  .auth-showcase{min-height:520px;}
}
@media(max-width:600px){
  .header-actions .ps-header-account{width:40px;height:40px;}
  .ps-about-strip{padding-top:60px;padding-bottom:60px;}
  
  .account-guest-card,
.account-welcome-card{grid-template-columns:1fr;padding:23px;border-radius:22px;}
  .account-guest-icon,
.account-welcome-avatar{width:56px;height:56px;}
  .account-logged-out-actions,
.account-welcome-actions{grid-column:auto;}
  .account-logged-out-actions,
.account-welcome-actions{width:100%;}
  .account-logged-out-actions .btn,
.account-welcome-actions .btn{flex:1;}
  .auth-page-intro{padding-top:42px!important;}
  .auth-page-intro-inner h1{font-size:38px;}
  .auth-showcase{padding:30px;border-radius:22px;min-height:auto;}
  .auth-showcase h2{font-size:40px;}
  .auth-form-card{padding:23px!important;border-radius:22px!important;}
}

/* Login: remove the old visual hero image treatment and make Remember Me a stable inline control. */
.ps-auth-page .auth-showcase-image{display:none!important;}
.ps-auth-page .auth-showcase{min-height:520px!important;}
.ps-wp-login-form .login-remember{align-items:initial!important;gap:0!important;font-size:13px!important;}
.ps-wp-login-form .login-remember label{cursor:pointer!important;}
.ps-wp-login-form .login-remember input[type=checkbox]{appearance:none!important;-webkit-appearance:none!important;width:18px!important;height:18px!important;min-width:18px!important;margin:0!important;border:1.5px solid #b9c7d5!important;border-radius:5px!important;background:#fff!important;display:inline-grid!important;place-content:center!important;cursor:pointer!important;vertical-align:middle!important;}
.ps-wp-login-form .login-remember input[type=checkbox]::before{content:""!important;width:8px!important;height:4px!important;border-left:2px solid #fff!important;border-bottom:2px solid #fff!important;transform:rotate(-45deg) scale(0)!important;transition:transform .12s ease!important;}
.ps-wp-login-form .login-remember input[type=checkbox]:checked{background:#285787!important;border-color:#285787!important;}
.ps-wp-login-form .login-remember input[type=checkbox]:checked::before{transform:rotate(-45deg) scale(1)!important;}
.ps-wp-login-form .login-remember input[type=checkbox]:focus-visible{outline:3px solid rgba(40,87,135,.14)!important;outline-offset:2px!important;}

/* Home hero: warmer editorial contrast instead of blue-on-blue. */
.ps-home-hero .ps-hero-copy .badge{background:rgba(255,244,235,.97)!important;color:#b84b3b!important;border-color:rgba(184,75,59,.22)!important;box-shadow:0 10px 26px rgba(20,42,65,.14)!important;}
.ps-home-hero .ps-hero-copy h1{color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;font-size:clamp(40px, 4.3vw, 60px)!important;}

.ps-home-hero .ps-hero-copy p{color:rgba(255,248,240,.91)!important;}
.ps-home-hero .hero-mini-proof{color:#fff7ed!important;margin-top:12px!important;gap:8px 16px!important;}
.ps-home-hero .hero-mini-proof span{color:#52636e!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;min-height:0!important;height:auto!important;white-space:nowrap!important;}
.ps-home-hero .hero-mini-proof span b{color:#52636e!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;min-height:0!important;height:auto!important;white-space:nowrap!important;}

/* Story section: remove the left border and turn the proof figures into clean editorial cards. */
.ps-about-home-copy{padding-left:0!important;}
.ps-about-home-stats div{box-shadow:0 10px 28px rgba(15,49,88,.055)!important;}

/* My Account: bring the content section 30px closer to the welcome card. */

.ps-account-page .account-section:has(.account-layout-grid.is-endpoint){padding-top:4px!important;}

/* Billing / address endpoint: proper WooCommerce address cards and form spacing. */
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;margin:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address{float:none!important;width:auto!important;margin:0!important;padding:22px!important;border:1px solid #dce7ef!important;border-radius:18px!important;background:linear-gradient(145deg,#fff,#f8fbfd)!important;box-shadow:0 12px 32px rgba(14,51,71,.055)!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0 0 14px!important;padding:0 0 13px!important;border-bottom:1px solid #e5edf3!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title h2{margin:0!important;font-size:19px!important;color:#0e3347!important;letter-spacing:-.02em!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address-title .edit{display:inline-flex!important;align-items:center!important;min-height:32px!important;padding:0 11px!important;border-radius:9px!important;background:#edf5fb!important;color:#285787!important;font-size:11px!important;font-weight:900!important;text-decoration:none!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses address{margin:0!important;color:#607082!important;font-size:14px!important;line-height:1.8!important;font-style:normal!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields{margin-top:0!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields h3{font-size:24px!important;color:#0e3347!important;margin:0 0 18px!important;letter-spacing:-.03em!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row{margin-bottom:16px!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-first,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-last{width:calc(50% - 9px)!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-first{margin-right:18px!important;}
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-last{margin-right:0!important;}

@media(max-width:760px){
  .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses{grid-template-columns:1fr!important;}
  .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-first,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-last{width:100%!important;margin-right:0!important;}
}
@media(max-width:460px){.ps-about-home-stats{grid-template-columns:1fr 1fr!important;}.ps-about-home-stats div{min-height:88px!important;padding:14px!important;}.ps-about-home-stats div strong{font-size:23px!important;font-weight:600!important;}}

.ps-home-hero .ps-hero-copy h1,
.ps-home-hero .ps-hero-copy h1 span{color:#285787!important;text-shadow:none!important;}
.ps-home-hero .ps-hero-copy h1 span{color:#285787!important;text-shadow:none!important;}

/* Keep the story proof deliberately simple: no cards, borders or decorative UI. */
.ps-about-home-stats{justify-content:flex-start!important;flex-wrap:wrap!important;}
.ps-about-home-stats div{display:block!important;}

.ps-about-home-stats div+div{border-left:0!important;}

.ps-about-home-stats div span{margin-top:5px!important;}

/* Native WordPress login markup can vary slightly; make Remember Me one stable control row. */
.ps-wp-login-form .login-remember{display:block!important;width:100%!important;margin:2px 0 20px!important;padding:0!important;line-height:1!important;clear:both!important;}
.ps-wp-login-form .login-remember label{display:flex!important;align-items:center!important;width:max-content!important;max-width:100%!important;gap:9px!important;margin:0!important;padding:0!important;font-size:13px!important;line-height:20px!important;font-weight:700!important;color:#536477!important;white-space:nowrap!important;}
.ps-wp-login-form .login-remember input[type="checkbox"]{display:block!important;flex:0 0 17px!important;width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;margin:0!important;padding:0!important;appearance:none!important;-webkit-appearance:none!important;border:1.5px solid #aebdcb!important;border-radius:4px!important;background:#fff!important;box-shadow:none!important;outline:0!important;}
.ps-wp-login-form .login-remember input[type="checkbox"]:checked{background:#285787!important;border-color:#285787!important;}
.ps-wp-login-form .login-remember input[type="checkbox"]:checked::after{content:""!important;display:block!important;width:4px!important;height:8px!important;margin:2px 0 0 5px!important;border:solid #fff!important;border-width:0 2px 2px 0!important;transform:rotate(45deg)!important;}
.ps-wp-login-form .login-remember input[type="checkbox"]:focus-visible{outline:3px solid rgba(23,105,209,.16)!important;outline-offset:2px!important;}
.ps-wp-login-form .login-submit{width:100%!important;margin:0!important;padding:0!important;}
.ps-wp-login-form input[type="submit"]{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:52px!important;min-height:52px!important;padding:0 22px!important;border:0!important;border-radius:12px!important;background:var(--ps-blue)!important;color:#fff!important;font-family:inherit!important;font-size:14px!important;font-weight:800!important;line-height:1!important;letter-spacing:.01em!important;box-shadow:0 12px 26px rgba(23,105,209,.20)!important;cursor:pointer!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important;}
.ps-wp-login-form input[type="submit"]:hover{background:var(--ps-blue)!important;transform:translateY(-1px)!important;box-shadow:0 16px 30px rgba(23,105,209,.25)!important;}
.ps-wp-login-form input[type="submit"]:active{transform:translateY(0)!important;}

/* Global responsive safeguards: prevent horizontal overflow and keep common grids usable. */

img,
svg,
video,
iframe{max-width:100%;}
.container{width:min(1240px,calc(100% - 40px));margin-left:auto;margin-right:auto;}
@media(max-width:900px){
  .container{width:min(100% - 32px,820px);}
  
  .ps-about-home-stats div{padding:0 18px!important;}
  .ps-about-home-stats div:first-child{padding-left:0!important;}
  .ps-about-home-stats div strong{font-size:25px!important;font-weight:600!important;}
  .ps-hero-copy h1{overflow-wrap:break-word;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;font-size:clamp(38px, 4.8vw, 48px)!important;}
  .auth-modern-grid,
.account-layout-grid,
.contact-grid,
.auth-grid,
.form-row{min-width:0;}
}
@media(max-width:600px){
  .container{width:calc(100% - 28px);}
  .ps-about-home-stats{display:grid!important;}
  
  .ps-about-home-stats div:nth-child(odd){padding-left:0!important;}
  .ps-about-home-stats div:nth-child(even){padding-right:0!important;}
  
  .ps-wp-login-form .login-remember label{font-size:13px!important;}
  .ps-wp-login-form input[type="submit"]{height:50px!important;min-height:50px!important;}
}

.ps-home .ps-hero-copy h1{color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;font-size:clamp(40px, 4.3vw, 60px)!important;}
.ps-home .ps-hero-copy h1 span{color:#285787!important;text-shadow:none!important;}

/* Keep the home stats simple and on one clean baseline. */

.ps-about-home-stats div{background:transparent!important;box-shadow:none!important;white-space:nowrap!important;}
.ps-about-home-stats div strong{font-family:inherit!important;}
.ps-about-home-stats div span{font-family:inherit!important;}

/* Login/register actions: match the polished animated footer primary button language. */
.ps-auth-page .auth-form-card .ps-wp-login-form input[type="submit"],
.ps-auth-page .auth-form-card .btn-primary,
.ps-auth-page .auth-form-card .btn-secondary{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;min-height:52px!important;height:52px!important;padding:0 22px!important;border-radius:13px!important;border:1px solid transparent!important;font-family:inherit!important;font-size:14px!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important;cursor:pointer!important;overflow:hidden!important;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease,color .25s ease!important;}
.ps-auth-page .auth-form-card .ps-wp-login-form input[type="submit"],
.ps-auth-page .auth-form-card .btn-primary{color:#fff!important;background:var(--ps-blue)!important;box-shadow:0 12px 25px rgba(40,87,135,.24)!important;}
.ps-auth-page .auth-form-card .ps-wp-login-form input[type="submit"]:hover,
.ps-auth-page .auth-form-card .btn-primary:hover{transform:translateY(-2px)!important;box-shadow:0 18px 32px rgba(40,87,135,.30)!important;background:var(--ps-blue)!important;}
.ps-auth-page .auth-form-card .btn-secondary{color:#fff!important;background:var(--ps-blue)!important;box-shadow:0 12px 25px rgba(40,87,135,.24)!important;}
.ps-auth-page .auth-form-card .btn-secondary:hover{color:#fff!important;border-color:transparent!important;transform:translateY(-2px)!important;box-shadow:0 18px 32px rgba(40,87,135,.30)!important;background:var(--ps-blue)!important;}

@media(max-width:900px){
  .ps-about-home-stats{gap:22px 28px!important;}
}
@media(max-width:600px){
  
  .ps-about-home-stats div{gap:5px!important;white-space:normal!important;align-items:baseline!important;}
  .ps-about-home-stats div strong{white-space:nowrap!important;}
  .ps-about-home-stats div span{font-size:11px!important;white-space:normal!important;font-weight:500!important;}
  .ps-auth-page .auth-form-card .ps-wp-login-form input[type="submit"],
.ps-auth-page .auth-form-card .btn-primary,
.ps-auth-page .auth-form-card .btn-secondary{min-height:50px!important;height:50px!important;}
}

html body,
html body button,
html body input,
html body textarea,
html body select,
html body .woocommerce,
html body .woocommerce-page,
html body .site-header,
html body .site-footer{font-family:var(--ps-font-body)!important;}

/* Product workspace: editorial top line with unboxed gallery and summary columns. */

/* Removed the generated PERSONALISED PREVIEW eyebrow from the gallery. */

/* Product top line: category + non-invasive sale marker, never on the designer canvas. */

/* Summary typography and purchase controls. */

/* Designer canvas / gallery treatment. */

/* A quiet, premium information bar replaces the old large how-to/CTA blocks. */

/* Tabs become the clean lower product-information workspace. */

/* Reviews: deliberately rebuilt as a two-column, editorial review workspace. */

/* Related and upsell products now read like a premium collection, not raw WC output. */

/* Keep the product description directly beneath pricing and make it the
   single source of product copy on the purchase card. */

/* The native WooCommerce sale flash must never sit on the photo/designer area.
   Keep the polished theme sale marker in the purchase card instead. */

/* Reviews: replace the plain WooCommerce block with a calm two-card workspace. */

/* Product CTA: restore the previous CTA immediately before the footer, with no
   unnecessary white runway after it. */

/* The modern review shell works with both classic WooCommerce #reviews and
   the newer WooCommerce product-reviews block. */

/* Block reviews: normalize common WooCommerce Blocks structures into the same
   visual language instead of leaving the raw block UI exposed. */

/* Restore the four service cards above the final CTA. */

/* Typography: Inter with Arial fallback across the entire website. */
html,
body,
button,
input,
select,
textarea,
.wp-site-blocks,
.wp-block,
.woocommerce,
.woocommerce-page,
.site,
.site-header,
.site-footer,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce .button{font-family:var(--ps-font-body)!important;}

/* Home hero: first headline line white, highlighted phrase dark blue. */

.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1 span{display:inline!important;-webkit-box-decoration-break:clone!important;box-decoration-break:clone!important;border-radius:.10em!important;}

.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::before{background:linear-gradient(90deg,
    rgba(255,255,255,.86) 0%,
    rgba(255,255,255,.72) 18%,
    rgba(255,255,255,.42) 35%,
    rgba(255,255,255,.12) 54%,
    rgba(255,255,255,0) 72%)!important;}

/* Story counters: restore proper premium cards instead of the stripped text-only row. */

.ps-about-home-stats div{position:relative!important;background:linear-gradient(145deg,#fff 0%,#f5f9fc 100%)!important;box-shadow:0 12px 30px rgba(15,49,88,.065)!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;}

.ps-about-home-stats div::after{content:""!important;position:absolute!important;width:90px!important;height:90px!important;right:-48px!important;bottom:-52px!important;border-radius:50%!important;background:rgba(40,87,135,.055)!important;pointer-events:none!important;}
.ps-about-home-stats div:hover{transform:translateY(-3px)!important;border-color:#c9dbe8!important;box-shadow:0 18px 38px rgba(15,49,88,.10)!important;}
.ps-about-home-stats div strong{font-family:var(--ps-font-body)!important;letter-spacing:-.035em!important;}
.ps-about-home-stats div span{font-family:var(--ps-font-body)!important;letter-spacing:0!important;text-transform:none!important;}

/* Product reviews: one clean, intentional review workspace with no nested/raw WC look. */

/* Shop archive: remove the duplicate shop label beneath/around the results heading. */
body.woocommerce-shop .ps-shop-results-head > div > .eyebrow,
body.tax-product_cat .ps-shop-results-head > div > .eyebrow{display:none!important;font-weight:700!important;}
body.woocommerce-shop .ps-shop-results-head,
body.tax-product_cat .ps-shop-results-head{align-items:flex-end!important;}
body.woocommerce-shop .ps-shop-results-title,
body.tax-product_cat .ps-shop-results-title{margin-top:0!important;}

@media(max-width:900px){
  .ps-about-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;}

}
@media(max-width:600px){
  .ps-about-home-stats{grid-template-columns:1fr 1fr!important;gap:10px!important;}
  .ps-about-home-stats div{min-height:96px!important;padding:15px!important;}
  .ps-about-home-stats div strong{font-size:24px!important;font-weight:600!important;}

}

/* Home hero: exact requested treatment. */

/* Home counters: exact requested spacing / border treatment. */

/* Shop: remove WooCommerce's default archive page-title while retaining the
   PrintStrokes-designed hero and results heading. */
body.woocommerce-shop .woocommerce-products-header > h1.page-title,
body.tax-product_cat .woocommerce-products-header > h1.page-title{display:none!important;}

/* Product reviews: one premium card, not two bordered cards. */

/* Keep only the review content; the Reviews tab navigation itself is removed. */

/* Mobile single-card review layout. */

/* Exact requested home hero text treatment. */

/* Exact requested counter spacing/border treatment. */
.ps-about-home-stats{border:none!important;}
.ps-about-home-stats div:first-child{padding-left:16px!important;}
.ps-about-home-grid{gap:38px!important;}

/* Global sticky header. */

/* Shop filter stays sticky only inside its own shop container. */
@media(min-width:761px){
  body.woocommerce-shop .ps-shop-sidebar,
body.tax-product_cat .ps-shop-sidebar{position:sticky!important;top:104px!important;align-self:start!important;z-index:20!important;}
  body.woocommerce-shop .ps-shop-layout,
body.tax-product_cat .ps-shop-layout{align-items:start!important;}
}
@media(max-width:760px){
  body.woocommerce-shop .ps-shop-sidebar,
body.tax-product_cat .ps-shop-sidebar{position:static!important;}
}

/* Shop product cards: repair WooCommerce sale badge stretching. */

/* Header child-menu hover: remove shadow from the hovered child item. */
@media(min-width:1181px){
  .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:hover,
.primary-nav .primary-menu>li.ps-shop-parent>.ps-shop-dropdown>li>a:hover{box-shadow:none!important;}
}

/* Product reviews: one outer card only, with left/right columns on desktop. */

/* Prevent narrow storefront cells from overflowing. */
@media(max-width:760px){
  
  .site-header .header-actions{min-width:0!important;}
  .site-header .brand-large .site-logo{max-width:190px!important;height:46px!important;}
  .ps-shop-results ul.products li.product{min-width:0!important;}
  .ps-shop-results ul.products li.product > .onsale{left:10px!important;top:10px!important;}
}

/* Keep the document on the root scrolling context so sticky elements work
   consistently on every template, not only single-product pages. */
html{overflow-x:clip!important;}
.site-header{isolation:isolate!important;}

/* Shop filters: sticky inside the shop grid only; native sticky automatically
   stops when the parent grid/container ends. */

/* Product review workspace: full product-content width, left pane deliberately
   wider than the form pane, with one outer card only. */

/* Keep four reviews visible before the review list scrolls. JS calculates the
   exact first-four height; this supplies a stable visual viewport and lets it
   expand naturally when there are fewer than four reviews. */

/* Related products: always four cards on desktop. */

@media(max-width:760px){
  .site-header{top:0!important;}

}

/* Child-menu hover: no shadow on the dropdown panel or its hovered links. */
.primary-nav .primary-menu > li.ps-shop-parent > .ps-shop-dropdown,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu{box-shadow:none!important;}
.primary-nav .primary-menu > li.ps-shop-parent > .ps-shop-dropdown > li > a:hover,
.primary-nav .primary-menu > li.ps-shop-parent > .sub-menu > li > a:hover{box-shadow:none!important;}

/* Exact requested product-detail dropdown hover reset. */
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:hover,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a:focus-visible{box-shadow:0 0px 0px rgba(0,0,0,.20)!important;}

/* Keep WooCommerce's review root in a horizontal layout without making the
   left/right review panes equal width. The child workspace remains full width. */

/* Remove the duplicate border/padding ONLY from the WooCommerce form wrapper.
   The right-side .ps-review-form-pane keeps its own outer card styling. */

/* Four related products on desktop. */

/* Exact requested shop sidebar sticky offset. */

/* Empty CPPD shell: hidden input + empty variation warning should never create
   a visible gap between the product description and purchase controls. */

/* Same product-detail shell whether CPPD is active or not. */

/* Related-product sale badge: keep it a compact badge instead of inheriting
   WooCommerce's oversized / stretched onsale geometry. */

/* No-review CTA button + modal. */

/* The validation toast belongs at the top of the viewport, below the sticky
   header, rather than appearing at the bottom of the page. */

/* Keep the same product-detail shell with or without the custom print canvas. */

/* Related-product sale badge: fixed compact circle on every related card. */

/* No-review state: review form opens from the CTA instead of showing an empty section. */

body.ps-review-modal-open{overflow:hidden!important;}

/* Review validation toast: top of viewport, below sticky header. */
.ps-theme-toast{top:92px!important;right:22px!important;bottom:auto!important;transform:translateY(-12px)!important;}
.ps-theme-toast.is-visible{transform:translateY(0)!important;}

@media(max-width:800px){

  .ps-theme-toast{top:72px!important;right:12px!important;max-width:calc(100vw - 24px)!important;}
}

/* Review CTA follows the existing PrintStrokes button language. */

/* Product purchase controls: keep quantity compact and Add to cart full-height. */

/* Related cards: consistent card geometry, rating row and sale badge. */

/* CTA actions intentionally start from the left, not centered. */

/* Review modal: full-width form, no accidental WooCommerce 50% float. */

/* Error toast: white normal toast with red error edge + icon, never a blue bar. */
.ps-theme-toast.ps-toast-error{display:flex!important;align-items:center!important;box-shadow:0 18px 45px rgba(14,51,71,.14)!important;opacity:0!important;transform:translateY(-12px)!important;}
.ps-theme-toast.ps-toast-error.is-visible{opacity:1!important;}
.ps-theme-toast.ps-toast-error .ps-toast-icon{line-height:1!important;}

/* Shop archive cards: rating sits cleanly between title and price. */

/* Contact page fallback form uses the same existing theme field system. */
.contact-title{font-size:32px!important;}
.ps-contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;}
.ps-contact-form .field{display:grid;}
.ps-contact-form .field label{font-size:14px;font-weight:800;color:var(--ps-navy);}
.ps-contact-form .field input,
.ps-contact-form .field textarea{width:100%;box-sizing:border-box;border:1px solid #d4dce7;border-radius:12px;padding:12px 14px;outline:none;background:#fff;color:var(--ps-ink);}
.ps-contact-form .field input{height:49px;}
.ps-contact-form .field textarea{resize:vertical;}
.ps-contact-form .field input:focus,
.ps-contact-form .field textarea:focus{border-color:var(--ps-blue);box-shadow:0 0 0 4px rgba(40,87,135,.10);}

@media(max-width:800px){

  .ps-contact-form .form-row{grid-template-columns:1fr;gap:0;}
}

/* Keep the product summary rhythm tight without changing the overall design. */

/* Review/error toast: higher, lighter and more like a native site notification. */
.ps-theme-toast.ps-toast-error{top:66px!important;right:20px!important;bottom:auto!important;left:auto!important;min-height:50px!important;max-width:min(380px,calc(100vw - 40px))!important;padding:10px 15px 10px 12px!important;gap:10px!important;border:1px solid #f1d5d1!important;border-left:4px solid #df3d32!important;border-radius:14px!important;background:#fff!important;color:#173b52!important;box-shadow:0 14px 34px rgba(14,51,71,.16)!important;font-size:13px!important;font-weight:800!important;transform:translateY(-8px)!important;}
.ps-theme-toast.ps-toast-error.is-visible{transform:translateY(0)!important;}
.ps-theme-toast.ps-toast-error .ps-toast-icon{width:24px!important;height:24px!important;flex:0 0 24px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#df3d32!important;color:#fff!important;font-size:12px!important;font-weight:900!important;}

/* Contact form: richer support intake while keeping the card compact. */
.ps-contact-form .form-row{gap:14px!important;margin-bottom:0!important;}
.ps-contact-form .field{gap:6px!important;margin-bottom:13px!important;}
.ps-contact-form .field input,
.ps-contact-form .field select,
.ps-contact-form .field textarea{border-radius:12px!important;border:1px solid #d4dce7!important;background:#fff!important;box-shadow:none!important;}
.ps-contact-form .field input,
.ps-contact-form .field select{height:48px!important;min-height:48px!important;}
.ps-contact-form .field textarea{min-height:128px!important;}
.ps-contact-form .btn{margin-top:0!important;}

/* General section rhythm: remove accidental oversized gaps while preserving the
   established page hierarchy. */
.section{padding-top:64px!important;padding-bottom:64px!important;}
.section-sm{padding-top:42px!important;padding-bottom:42px!important;}
.ps-page-section{padding-top:58px!important;padding-bottom:58px!important;}

@media(max-width:800px){

  .ps-theme-toast.ps-toast-error{top:56px!important;right:12px!important;max-width:calc(100vw - 24px)!important;}
  .section{padding-top:46px!important;padding-bottom:46px!important;}
  .section-sm{padding-top:34px!important;padding-bottom:34px!important;}
  .ps-page-section{padding-top:44px!important;padding-bottom:44px!important;}
}

/* Keep WooCommerce card content on one clean alignment line. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{display:flex!important;flex-direction:column!important;min-width:0!important;background:#fff!important;}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{margin:0!important;padding:12px 16px 3px!important;min-height:0!important;color:#183f56!important;font-size:14px!important;line-height:1.38!important;font-weight:800!important;box-sizing:border-box!important;}
.woocommerce ul.products li.product .star-rating,
.woocommerce-page ul.products li.product .star-rating{float:none!important;display:block!important;width:5.4em!important;height:1.05em!important;margin:1px 16px 5px!important;font-size:12px!important;line-height:1!important;}
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{display:block!important;margin:0!important;padding:0 16px 13px!important;min-height:21px!important;box-sizing:border-box!important;line-height:1.3!important;color:#285787!important;font-size:13px!important;font-weight:900!important;}
.woocommerce ul.products li.product .price del{font-size:11px!important;color:#9aa5ab!important;}
.woocommerce ul.products li.product .price ins{text-decoration:none!important;color:#285787!important;}

/* The related/upsell cards use exactly the same content rhythm as Shop cards. */

/* Reduce accumulated whitespace around the product-detail lower sections. */

/* Compact the product summary without making the purchase area cramped. */

/* Contact page: compact editorial hero + balanced two-card layout. */
body.page-template-page-templatescontact-php .ps-inner-hero-contact,
.ps-inner-hero-contact{min-height:320px!important;display:flex!important;align-items:center!important;background-position:center 48%!important;}
.ps-inner-hero-contact .ps-inner-hero-content{padding-top:54px!important;padding-bottom:54px!important;}
.ps-inner-hero-contact .ps-inner-hero-content .section-title{max-width:680px!important;font-size:clamp(36px,4.3vw,58px)!important;margin:12px 0 10px!important;}
.ps-inner-hero-contact .ps-inner-hero-content .section-copy{max-width:620px!important;font-size:16px!important;line-height:1.65!important;}
.ps-inner-hero-contact + .section{padding-top:42px!important;padding-bottom:48px!important;}
.contact-grid{align-items:stretch!important;gap:22px!important;}
.contact-grid .info-card,
.contact-grid .form-card{padding:26px!important;border-radius:20px!important;}
.contact-grid .info-card{display:flex!important;flex-direction:column!important;}
.contact-grid .contact-image{margin:0 0 20px!important;height:190px!important;border-radius:16px!important;overflow:hidden!important;background:#eef3f7!important;}
.contact-grid .contact-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:16px!important;}
.contact-grid .contact-title{font-size:30px!important;margin:8px 0 8px!important;}
.contact-grid .section-copy{font-size:14px!important;line-height:1.7!important;}
.contact-grid .contact-item{padding:13px 0!important;font-size:13px!important;line-height:1.55!important;}
.contact-grid .contact-item strong{color:#163c53!important;}
.contact-grid .contact-item span{color:#71818a!important;}
.contact-form7-card .wpcf7-form{gap:0!important;}
.contact-form7-card .ps-cf7-row{gap:12px!important;margin:0!important;}
.contact-form7-card .ps-cf7-field{gap:6px!important;margin-bottom:12px!important;}
.contact-form7-card .ps-cf7-label{font-size:12px!important;color:#183f56!important;}
.contact-form7-card input[type=text],
.contact-form7-card input[type=email],
.contact-form7-card input[type=tel],
.contact-form7-card select,
.contact-form7-card textarea{border-radius:11px!important;padding:11px 13px!important;font-size:13px!important;}
.contact-form7-card input[type=text],
.contact-form7-card input[type=email],
.contact-form7-card input[type=tel],
.contact-form7-card select{height:46px!important;}
.contact-form7-card textarea{min-height:118px!important;}
.contact-form7-card input[type=submit]{min-height:46px!important;border-radius:12px!important;padding:0 21px!important;font-size:13px!important;}
.contact-form7-card .wpcf7-response-output{margin:8px 0 0!important;font-size:12px!important;line-height:1.5!important;}

/* Remove accidental large gaps created by empty blocks after WooCommerce output. */

@media(max-width:800px){

  .ps-inner-hero-contact{min-height:280px!important;}
  .ps-inner-hero-contact .ps-inner-hero-content{padding-top:44px!important;padding-bottom:44px!important;}
  .ps-inner-hero-contact .ps-inner-hero-content .section-title{font-size:36px!important;}
  .ps-inner-hero-contact + .section{padding-top:30px!important;padding-bottom:34px!important;}
  .contact-grid{gap:16px!important;}
  .contact-grid .info-card,
.contact-grid .form-card{padding:20px!important;border-radius:18px!important;}
  .contact-grid .contact-image{height:160px!important;}
}

/* ---------- Global rhythm: tighter, consistent vertical spacing ---------- */
@media (min-width:1181px){
  .section{padding-top:56px!important;padding-bottom:56px!important;}
  .section-sm{padding-top:36px!important;padding-bottom:36px!important;}
  .ps-page-section{padding-top:50px!important;padding-bottom:50px!important;}
}
@media (max-width:1180px){
  .section{padding-top:48px!important;padding-bottom:48px!important;}
  .section-sm{padding-top:32px!important;padding-bottom:32px!important;}
  .ps-page-section{padding-top:42px!important;padding-bottom:42px!important;}
}
@media (max-width:700px){
  .section{padding-top:38px!important;padding-bottom:38px!important;}
  .section-sm{padding-top:28px!important;padding-bottom:28px!important;}
  .ps-page-section{padding-top:34px!important;padding-bottom:34px!important;}
}

/* ---------- Header: one predictable breakpoint system ---------- */
.site-header{overflow:visible!important;}

.site-header .primary-nav .primary-menu{min-width:0!important;}

.site-header .header-register{min-height:40px!important;}

/* Desktop only. */

/* Tablet + mobile: hide desktop navigation and keep the hamburger in the
   same flex row as logo/actions so it can never fall outside the viewport. */
@media (max-width:1180px){
  .site-header .header-inner{width:min(100% - 24px,960px)!important;}
  .site-header .menu-toggle{position:relative!important;z-index:5!important;flex:0 0 40px!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;}
  
  .site-header .mobile-panel.open{display:block!important;}
  body.ps-menu-open{overflow:hidden!important;}
}

@media (max-width:760px){
  
  .site-header .mobile-panel{max-height:calc(100vh - 82px)!important;}
  
}

/* Menu internals: clear hierarchy and enough tap area on touch devices. */
@media (max-width:1180px){
  .site-header .mobile-menu-list > li > a{justify-content:space-between!important;color:var(--ps-navy)!important;border-bottom:1px solid #edf1f4!important;}

  .site-header .mobile-account-card{margin-bottom:8px!important;}
  .site-header .mobile-actions{margin-top:10px!important;padding-top:12px!important;}
}

/* ---------- Contact page / Fluent Form ---------- */
.fluentform-card{position:relative!important;background:#fff!important;}
.fluentform-card .fluentform,
.fluentform-card .fluentform_wrapper{width:100%!important;margin:0!important;}
.fluentform-card .ff-el-form,
.fluentform-card form.fluent_form{margin:0!important;}
.fluentform-card .ff-el-group:has(input[type="text"]),
.fluentform-card .ff-el-group:has(input[type="email"]){display:block!important;}
.fluentform-card .ff-el-group:has(input[type="tel"]),
.fluentform-card .ff-el-group:has(textarea),
.fluentform-card .ff-el-group:has(.ff-btn-submit),
.fluentform-card .ff-el-group:has(button[type="submit"]),
.fluentform-card .ff_submit_btn_wrapper{width:100%!important;}
.fluentform-card .ff-el-input--label,
.fluentform-card .ff-el-form-label{margin:0 0 6px!important;padding:0!important;font-size:12px!important;line-height:1.35!important;font-weight:800!important;color:var(--ps-navy)!important;}
.fluentform-card .ff-el-form-control,
.fluentform-card input:not([type="checkbox"]):not([type="radio"]),
.fluentform-card select,
.fluentform-card textarea{width:100%!important;max-width:100%!important;min-height:48px!important;height:48px!important;margin:0!important;padding:11px 13px!important;border:1px solid #d7e0e7!important;border-radius:12px!important;background:#fff!important;color:#173b52!important;font-family:var(--ps-font-body)!important;font-size:13px!important;line-height:1.4!important;box-shadow:none!important;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease!important;}
.fluentform-card textarea,
.fluentform-card .ff-el-form-control[rows]{height:auto!important;min-height:132px!important;resize:vertical!important;}
.fluentform-card .ff-el-form-control::placeholder,
.fluentform-card input::placeholder,
.fluentform-card textarea::placeholder{color:#9aa9b5!important;opacity:1!important;}
.fluentform-card .ff-el-form-control:focus,
.fluentform-card input:focus,
.fluentform-card select:focus,
.fluentform-card textarea:focus{outline:none!important;border-color:#8db1cf!important;background:#fbfdff!important;box-shadow:0 0 0 4px rgba(40,87,135,.09)!important;}
.fluentform-card .ff_submit_btn_wrapper{margin:4px 0 0!important;padding:0!important;text-align:left!important;}
.fluentform-card .ff-btn-submit,
.fluentform-card button[type="submit"],
.fluentform-card input[type="submit"]{gap:8px!important;font-family:var(--ps-font-body)!important;}
.fluentform-card .ff-btn-submit:hover,
.fluentform-card button[type="submit"]:hover,
.fluentform-card input[type="submit"]:hover{transform:translateY(-2px)!important;box-shadow:0 16px 30px rgba(14,51,71,.21)!important;}
.fluentform-card .ff-message-success,
.fluentform-card .success,
.fluentform-card .ff-form-errors,
.fluentform-card .error,
.fluentform-card .ff-errors{border-radius:12px!important;margin:10px 0 14px!important;padding:11px 13px!important;font-size:12px!important;line-height:1.5!important;}
.fluentform-card .error:not(.notice){color:#9d2920!important;}
.fluentform-card .ff-el-group .error,
.fluentform-card .ff-el-group .ff-el-is-error{font-size:11px!important;line-height:1.4!important;margin-top:5px!important;}
.fluentform-card .ff-el-group input[type="checkbox"],
.fluentform-card .ff-el-group input[type="radio"]{min-height:0!important;height:auto!important;width:auto!important;}

@media (min-width:701px){
  /* Form 1 is expected to contain First Name + Email + Phone + Message. The
     first two fields share one compact row; Phone and Message remain full width.
     :has keeps this independent of Fluent Forms' generated wrapper IDs. */
  .fluentform-card .ff-el-form > .ff-el-group:has(input[type="tel"]),
.fluentform-card .ff-el-form > .ff-el-group:has(textarea),
.fluentform-card .ff-el-form > .ff_submit_btn_wrapper,
.fluentform-card .ff-el-form > .ff-el-group:has(.ff-btn-submit),
.fluentform-card .ff-el-form > .ff-el-group:has(button[type="submit"]),
.fluentform-card .ff-el-form > .ff-form-errors,
.fluentform-card .ff-el-form > .ff-message-success{grid-column:1 / -1!important;}
}

@media (max-width:700px){
  .fluentform-card .ff-el-group{margin-bottom:12px!important;}
}

/* Contact page spacing remains compact on all screens. */

@media(max-width:700px){

  body.page-template-page-templatescontact-php .ps-inner-hero-contact .section-title{font-size:32px!important;}
  
}

/* ---------- Root sizing / overflow ---------- */
html,
body{width:100%!important;max-width:100%!important;}
*,
*::before,
*::after{box-sizing:border-box;}
img,
svg,
video,
canvas{max-width:100%;}
button,
input,
select,
textarea{max-width:100%;}

/* ---------- Sticky header: no phantom top gap ---------- */
/* Only reserve space when WordPress actually renders the admin toolbar. */
/* Keep the mobile menu attached to the sticky header, never to page content. */
.site-header .mobile-panel{position:absolute!important;top:100%!important;left:0!important;right:0!important;width:auto!important;margin:0!important;max-height:calc(100svh - 78px)!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;z-index:100!important;}
.site-header .mobile-panel.open{display:block!important;visibility:visible!important;opacity:1!important;}
body.ps-menu-open{overflow:hidden!important;overscroll-behavior:none!important;}

/* Desktop/tablet/mobile header row. */
.site-header .header-inner{width:min(1240px,calc(100% - 32px))!important;min-width:0!important;height:76px!important;min-height:76px!important;display:flex!important;align-items:center!important;gap:18px!important;}
.site-header .brand-large{flex:0 1 auto!important;min-width:0!important;}
.site-header .brand-large .site-logo,
.site-header .brand-large img{display:block!important;width:auto!important;max-width:210px!important;height:48px!important;object-fit:contain!important;}
.site-header .primary-nav{flex:1 1 auto!important;min-width:0!important;}
.site-header .header-actions{flex:0 0 auto!important;min-width:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;margin-left:auto!important;}
.site-header .header-icon-link,
.site-header .ps-header-account{flex:0 0 40px!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;}

.site-header .menu-toggle span{display:block!important;width:18px!important;height:2px!important;margin:3px 0!important;border-radius:999px!important;background:currentColor!important;}

@media(min-width:1181px){
  .site-header .primary-nav{display:flex!important;visibility:visible!important;opacity:1!important;}
  .site-header .mobile-panel{display:none!important;}
}
@media(max-width:1180px){
  .site-header .header-inner{width:min(960px,calc(100% - 24px))!important;height:70px!important;min-height:70px!important;gap:10px!important;}
  
  .site-header .mobile-panel{box-shadow:0 18px 38px rgba(14,51,71,.14)!important;}
}
@media(max-width:760px){
  .ps-announcement-inner{width:100%!important;min-height:30px!important;padding:0 12px!important;overflow:hidden!important;justify-content:center!important;white-space:nowrap!important;}
  .site-header .mobile-panel{max-height:calc(100svh - 76px)!important;}
  .site-header .mobile-panel-inner{padding:14px!important;}
}

/* ---------- Generic responsive section rhythm ---------- */
.ps-home .section,
.ps-account-page .section,
.blog-page .section,
.ps-categories-page .section,
.single-post-page .section{min-width:0!important;}
@media(min-width:1181px){
  .ps-home .section,
.ps-account-page .section,
.blog-page .section,
.ps-categories-page .section,
.single-post-page .section{padding-top:58px!important;padding-bottom:58px!important;}
}
@media(max-width:1180px){
  .ps-home .section,
.ps-account-page .section,
.blog-page .section,
.ps-categories-page .section,
.single-post-page .section{padding-top:48px!important;padding-bottom:48px!important;}
}
@media(max-width:700px){
  .ps-home .section,
.ps-account-page .section,
.blog-page .section,
.ps-categories-page .section,
.single-post-page .section{padding-top:38px!important;padding-bottom:38px!important;}
}

/* ---------- More than prints: equal counter cards + no oversized image gap ---------- */
.ps-about-strip{padding-top:58px!important;padding-bottom:58px!important;}
.ps-about-strip .ps-about-home-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:46px!important;align-items:center!important;}
.ps-about-home-copy{min-width:0!important;padding:0!important;}
.ps-about-home-copy:before{display:none!important;}
.ps-about-home-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important;gap:12px!important;width:100%!important;margin:24px 0 24px!important;padding:0!important;}
.ps-about-home-stats div{min-width:0!important;min-height:104px!important;height:100%!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:0!important;padding:16px!important;margin:0!important;border:1px solid #dfe7ee!important;border-radius:16px!important;background:linear-gradient(145deg,#fff,#f7fafc)!important;box-shadow:0 10px 24px rgba(15,49,88,.055)!important;overflow:hidden!important;}
.ps-about-home-stats div:first-child,
.ps-about-home-stats div:nth-child(2),
.ps-about-home-stats div:nth-child(3),
.ps-about-home-stats div:nth-child(4){padding-left:16px!important;padding-right:16px!important;}

.ps-about-home-stats div strong{display:block!important;margin:0!important;font-size:26px!important;line-height:1.05!important;white-space:nowrap!important;color:#102f50!important;font-weight:600!important;}
.ps-about-home-stats div span{display:block!important;margin:6px 0 0!important;font-size:11px!important;line-height:1.35!important;font-weight:500!important;color:#718092!important;white-space:normal!important;}
.ps-about-home-image{min-width:0!important;margin:0!important;border-radius:22px!important;overflow:hidden!important;background:#f6f9fb!important;box-shadow:0 18px 44px rgba(15,49,88,.09)!important;}

@media(max-width:1024px){
  .ps-about-strip .ps-about-home-grid{grid-template-columns:1fr!important;gap:28px!important;}
  .ps-about-home-image{order:2!important;max-width:760px!important;margin:0 auto!important;width:100%!important;}
  .ps-about-home-copy{order:1!important;}
  .ps-about-home-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .ps-about-strip{padding-top:44px!important;padding-bottom:44px!important;}
  .ps-about-strip .ps-about-home-grid{gap:24px!important;}
  .ps-about-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:20px 0 22px!important;}
  .ps-about-home-stats div{min-height:96px!important;padding:14px!important;}
  .ps-about-home-stats div:first-child,
.ps-about-home-stats div:nth-child(2),
.ps-about-home-stats div:nth-child(3),
.ps-about-home-stats div:nth-child(4){padding-left:14px!important;padding-right:14px!important;}
  .ps-about-home-stats div strong{font-size:23px!important;font-weight:600!important;}
  .ps-about-home-image{max-width:none!important;border-radius:18px!important;box-shadow:0 12px 30px rgba(15,49,88,.08)!important;}
}
@media(max-width:480px){
  .ps-about-home-stats{gap:8px!important;}
  .ps-about-home-stats div{min-height:92px!important;padding:13px!important;border-radius:14px!important;}
  .ps-about-home-stats div:first-child,
.ps-about-home-stats div:nth-child(2),
.ps-about-home-stats div:nth-child(3),
.ps-about-home-stats div:nth-child(4){padding-left:13px!important;padding-right:13px!important;}
  .ps-about-home-stats div strong{font-size:21px!important;font-weight:600!important;}
  .ps-about-home-stats div span{font-size:10.5px!important;font-weight:500!important;}
}

/* ---------- Home blog → CTA spacing ---------- */
.ps-home .ps-blog-home{padding-bottom:34px!important;}
.ps-home .ps-blog-home .blog-card-grid{margin-bottom:0!important;}
.ps-home > .cta{margin-top:0!important;padding-top:0!important;padding-bottom:48px!important;}
.ps-home > .cta .container{padding-top:0!important;}
.ps-home > .cta .ps-cta-box{margin-top:0!important;}
@media(max-width:700px){
  .ps-home .ps-blog-home{padding-bottom:24px!important;}
  .ps-home > .cta{padding-bottom:32px!important;}
}

/* ---------- Global responsive grids ---------- */
@media(max-width:1024px){
  .container{width:min(100% - 32px,960px)!important;max-width:960px!important;}
  .section-head-row{gap:18px!important;}
}
@media(max-width:700px){
  .container{width:calc(100% - 28px)!important;max-width:none!important;}
  .section-head-row{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:14px!important;}
  .section-head-row > .btn{width:auto!important;}
  .blog-card-grid{grid-template-columns:1fr!important;}
  .ps-product-grid{grid-template-columns:1fr 1fr!important;}
}
@media(max-width:480px){
  .container{width:calc(100% - 24px)!important;}
  .ps-product-grid{grid-template-columns:1fr!important;}
  .section-title{font-size:32px!important;}
  .section-copy{font-size:14px!important;line-height:1.65!important;}
}

/* ---------- Fluent Forms: exact four-field contact layout ---------- */
.fluentform-card{min-width:0!important;overflow:visible!important;}
.fluentform-card .fluentform,
.fluentform-card form.fluent_form,
.fluentform-card .ff-form{width:100%!important;max-width:none!important;margin:0!important;}
.fluentform-card .ff-el-form{width:100%!important;min-width:0!important;margin:0!important;}
.fluentform-card .ff-el-group{min-width:0!important;margin:0 0 14px!important;padding:0!important;}
.fluentform-card .ff-el-form-label,
.fluentform-card .ff-el-input--label label{display:block!important;margin:0 0 6px!important;padding:0!important;font-size:12px!important;line-height:1.35!important;font-weight:800!important;color:#173b52!important;}
.fluentform-card .ff-el-input--content{min-width:0!important;}
.fluentform-card input.ff-el-form-control,
.fluentform-card textarea.ff-el-form-control,
.fluentform-card select.ff-el-form-control,
.fluentform-card .ff-el-form-control{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:48px!important;height:48px!important;padding:11px 13px!important;margin:0!important;border:1px solid #d7e0e7!important;border-radius:12px!important;background:#fff!important;color:#173b52!important;font-size:13px!important;line-height:1.4!important;box-shadow:none!important;}
.fluentform-card textarea.ff-el-form-control{height:132px!important;min-height:132px!important;resize:vertical!important;}
.fluentform-card .ff-el-form-control:focus{outline:none!important;border-color:#75a6cc!important;box-shadow:0 0 0 4px rgba(40,87,135,.09)!important;background:#fbfdff!important;}
.fluentform-card .ff-el-form-control::placeholder{color:#9aa9b5!important;opacity:1!important;}
.fluentform-card .ff_submit_btn_wrapper,
.fluentform-card .ff-el-form .ff-el-group:last-of-type:has(button[type="submit"]){margin:5px 0 0!important;padding:0!important;}
.fluentform-card .ff-btn-submit,
.fluentform-card button[type="submit"],
.fluentform-card input[type="submit"]{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:156px!important;min-height:46px!important;height:46px!important;margin:0!important;padding:0 22px!important;border:0!important;border-radius:12px!important;background:#0e3350!important;color:#fff!important;font-size:13px!important;font-weight:800!important;line-height:1!important;cursor:pointer!important;box-shadow:0 12px 24px rgba(14,51,71,.16)!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important;}
.fluentform-card .ff-btn-submit:hover,
.fluentform-card button[type="submit"]:hover,
.fluentform-card input[type="submit"]:hover{transform:translateY(-1px)!important;background:var(--ps-blue)!important;box-shadow:0 15px 28px rgba(14,51,71,.2)!important;}
.fluentform-card .ff-message-success,
.fluentform-card .ff-form-errors,
.fluentform-card .ff-errors{margin:0 0 14px!important;padding:11px 13px!important;border-radius:12px!important;font-size:12px!important;line-height:1.5!important;}
.fluentform-card .ff-message-success{background:#edf8f1!important;border:1px solid #cfe9d8!important;color:#22633c!important;}
.fluentform-card .ff-form-errors,
.fluentform-card .ff-errors{background:#fff1ef!important;border:1px solid #f0d0ca!important;color:#9d2920!important;}
.fluentform-card .ff-el-is-error .ff-el-form-control{border-color:#d46b60!important;box-shadow:0 0 0 3px rgba(212,107,96,.08)!important;}
.fluentform-card .ff-el-group .error{font-size:11px!important;line-height:1.4!important;margin-top:5px!important;color:#a63227!important;}
.fluentform-missing{padding:18px;border:1px solid #f0d0ca;border-radius:14px;background:#fff8f6;color:#8c3028;}
.fluentform-missing strong{display:block;margin-bottom:5px;}
.fluentform-missing p{margin:0;font-size:13px;line-height:1.5;}

@media(min-width:701px){
  .fluentform-card .ff-el-form{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;column-gap:14px!important;align-items:start!important;}
  .fluentform-card .ff-el-form > .ff-el-group:nth-of-type(3),
.fluentform-card .ff-el-form > .ff-el-group:nth-of-type(4),
.fluentform-card .ff-el-form > .ff_submit_btn_wrapper,
.fluentform-card .ff-el-form > .ff-form-errors,
.fluentform-card .ff-el-form > .ff-message-success{grid-column:1/-1!important;}
}
@media(max-width:700px){
  .fluentform-card .ff-el-form{display:block!important;}
  .fluentform-card .ff-btn-submit,
.fluentform-card button[type="submit"],
.fluentform-card input[type="submit"]{width:100%!important;}
}

/* ---------- Contact page sizing ---------- */
body.page-template-page-templatescontact-php .ps-inner-hero-contact{min-height:270px!important;}
body.page-template-page-templatescontact-php .ps-inner-hero-contact + .section{padding-top:34px!important;padding-bottom:42px!important;}
@media(max-width:700px){
  body.page-template-page-templatescontact-php .ps-inner-hero-contact{min-height:230px!important;}
  body.page-template-page-templatescontact-php .ps-inner-hero-contact .ps-inner-hero-content{padding-top:30px!important;padding-bottom:30px!important;}
  body.page-template-page-templatescontact-php .ps-inner-hero-contact + .section{padding-top:22px!important;padding-bottom:30px!important;}
  body.page-template-page-templatescontact-php .contact-grid{gap:14px!important;}
  body.page-template-page-templatescontact-php .contact-grid .info-card,
body.page-template-page-templatescontact-php .contact-grid .form-card{padding:18px!important;border-radius:16px!important;}
}

/* Sticky header: keep the header flush to the viewport edge while the page
   scrolls. The admin toolbar remains the only intentional WordPress offset. */
.site-header{backface-visibility:hidden!important;}
@supports (top: env(safe-area-inset-top)){
  body:not(.admin-bar) .site-header{top:0!important;}
}

/* The image must determine its own height; do not leave the mobile blank
   canvas below the supplied 1400x1000 artwork. */
.ps-about-home-image{min-height:0!important;height:auto!important;aspect-ratio:auto!important;align-self:start!important;}
.ps-about-home-image img{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;display:block!important;}

/* On responsive hero layouts the slide arrows add clutter and can overlap
   the artwork/text. Dots remain available for slide selection. */
@media(max-width:900px){
  .ps-hero-prev,
.ps-hero-next,
.ps-hero-arrow{display:none!important;visibility:hidden!important;pointer-events:none!important;}
}

@media(max-width:760px){
  .ps-about-home-image{min-height:0!important;height:auto!important;max-height:none!important;}
  .ps-about-home-image img{height:auto!important;}
}

/* Keep the site header attached to the viewport edge on every screen size.
   WordPress admin-bar offset is the only intentional top offset when present. */
.site-header{inset-block-start:0!important;width:100%!important;margin:0!important;transform:none!important;}
.site-header .header-inner{margin-top:0!important;}

/* Professional compact hamburger button. The legacy span icon is no longer
   used; header.php supplies one clean SVG that also animates to a close mark. */
.site-header .menu-toggle{box-shadow:0 8px 20px rgba(14,51,71,.08)!important;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .2s ease!important;}
.site-header .menu-toggle:hover,
.site-header .menu-toggle:focus-visible{box-shadow:0 10px 24px rgba(14,51,71,.12)!important;transform:translateY(-1px)!important;}
.site-header .ps-menu-icon{display:block!important;width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;vector-effect:non-scaling-stroke!important;transition:transform .2s ease,color .2s ease!important;}
.site-header .ps-menu-line{transform-origin:12px 12px!important;transition:transform .22s ease,opacity .18s ease!important;}
@media(max-width:760px){
  .site-header .menu-toggle{flex-basis:40px!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;border-radius:12px!important;}
  .site-header .ps-menu-icon{width:21px!important;height:21px!important;}
}
@media(max-width:480px){
  .site-header .menu-toggle{flex-basis:38px!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border-radius:11px!important;}
  .site-header .ps-menu-icon{width:20px!important;height:20px!important;}
}

/* Replace the text badge in the mobile account row with a clean user icon. */
.site-header .mobile-account-avatar{flex:0 0 42px!important;width:42px!important;height:42px!important;min-width:42px!important;border-radius:13px!important;display:grid!important;place-items:center!important;background:linear-gradient(135deg,#edf5fb,#f8fbfd)!important;border:1px solid #dce6ed!important;color:var(--ps-navy)!important;}
.site-header .ps-account-menu-icon{width:21px!important;height:21px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

/* Mobile panel follows the sticky header rather than a hard-coded viewport
   offset, so opening the menu never leaves a visible strip above it. */
@media(max-width:1180px){
  .site-header .mobile-panel{top:100%!important;width:auto!important;overscroll-behavior:contain!important;}
}
@media(max-width:760px){
  .site-header .mobile-panel{left:8px!important;right:8px!important;max-height:calc(100svh - 78px)!important;}
}
@media(max-width:480px){
  .site-header .mobile-panel{left:6px!important;right:6px!important;}
}

/* The header is intentionally fixed rather than relying on browser sticky
   containment. JS keeps it in the natural position beside the announcement
   when the page is at the top, then pins it to the viewport on scroll. */
.site-header.ps-fixed-header{position:fixed!important;left:0!important;right:0!important;width:100%!important;margin:0!important;z-index:60000!important;transform:translateZ(0)!important;-webkit-transform:translateZ(0)!important;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;}
.site-header.ps-fixed-header .header-inner{position:relative!important;z-index:2!important;}
.site-header.ps-fixed-header .mobile-panel{position:absolute!important;top:100%!important;left:12px!important;right:12px!important;width:auto!important;margin:0!important;}
.ps-header-spacer{width:100%!important;pointer-events:none!important;}
@media(max-width:760px){
  .site-header.ps-fixed-header .mobile-panel{left:8px!important;right:8px!important;}
}
@media(max-width:480px){
  .site-header.ps-fixed-header .mobile-panel{left:6px!important;right:6px!important;}
}

/* My Account: remove the large blank band between the welcome card and the
   statistics/content area while keeping comfortable outer page rhythm. */
.ps-account-page .account-welcome-section{padding-top:24px!important;padding-bottom:10px!important;}
.ps-account-page .account-welcome-card{margin-bottom:0!important;}
.ps-account-page .account-section{padding-top:0!important;padding-bottom:46px!important;}
.ps-account-page .account-stat-grid{margin-top:0!important;margin-bottom:22px!important;}
@media(max-width:900px){
  .ps-account-page .account-welcome-section{padding-top:18px!important;padding-bottom:8px!important;}
  .ps-account-page .account-section{padding-top:0!important;padding-bottom:36px!important;}
}
@media(max-width:600px){
  .ps-account-page .account-welcome-section{padding-top:12px!important;padding-bottom:8px!important;}
  .ps-account-page .account-section{padding-top:0!important;padding-bottom:28px!important;}
  .ps-account-page .account-stat-grid{margin-bottom:16px!important;}
}

@media(min-width:1181px){
  .site-header .mobile-menu-backdrop,
.site-header .mobile-panel{display:none!important;}
}

@media(max-width:1180px){

  .site-header .mobile-menu-backdrop{position:fixed!important;top:calc(var(--ps-header-top,0px) + var(--ps-header-height,76px))!important;right:0!important;bottom:0!important;left:0!important;display:block!important;visibility:hidden!important;opacity:0!important;background:rgba(8,27,42,.42)!important;-webkit-backdrop-filter:blur(3px)!important;backdrop-filter:blur(3px)!important;pointer-events:none!important;z-index:59980!important;transition:opacity .26s ease,visibility .26s ease!important;}
  .site-header .mobile-menu-backdrop.open{visibility:visible!important;opacity:1!important;pointer-events:auto!important;}

  .site-header .mobile-panel{position:fixed!important;top:calc(var(--ps-header-top,0px) + var(--ps-header-height,76px))!important;right:0!important;bottom:0!important;left:auto!important;width:min(400px,92vw)!important;max-width:100%!important;max-height:none!important;height:auto!important;margin:0!important;padding:0!important;display:block!important;visibility:visible!important;opacity:1!important;overflow:hidden!important;background:transparent!important;border:0!important;border-radius:22px 0 0 22px!important;box-shadow:-20px 0 55px rgba(10,35,52,.18)!important;transform:translate3d(105%,0,0)!important;transition:transform .34s cubic-bezier(.22,.8,.28,1)!important;z-index:59990!important;pointer-events:none!important;}
  .site-header .mobile-panel.open{transform:translate3d(0,0,0)!important;pointer-events:auto!important;}
  .site-header .mobile-panel-shell{width:100%!important;height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;border:1px solid #dfe8ef!important;border-right:0!important;border-radius:22px 0 0 22px!important;}
  .site-header .mobile-panel-header{flex:0 0 auto!important;min-height:78px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:16px 18px!important;background:rgba(255,255,255,.94)!important;border-bottom:1px solid #e7edf2!important;box-shadow:0 5px 18px rgba(17,51,72,.05)!important;}
  .site-header .mobile-panel-title{min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important;}
  .site-header .mobile-panel-eyebrow{display:block!important;margin:0!important;color:var(--ps-coral,#d95a45)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.18em!important;line-height:1.2!important;}
  .site-header .mobile-panel-title strong{display:block!important;color:var(--ps-navy,#0e3347)!important;font-size:23px!important;line-height:1.1!important;letter-spacing:-.02em!important;}
  .site-header .mobile-menu-close{border:1px solid #dce6ed!important;border-radius:13px!important;background:#fff!important;color:var(--ps-navy,#0e3347)!important;box-shadow:0 6px 18px rgba(14,51,71,.07)!important;cursor:pointer!important;transition:background .2s ease,border-color .2s ease,transform .2s ease!important;}
  .site-header .mobile-menu-close:hover,
.site-header .mobile-menu-close:focus-visible{background:#fff7f4!important;border-color:#efc5bb!important;outline:none!important;transform:translateY(-1px)!important;}
  .site-header .mobile-menu-close svg{stroke-width:1.9!important;}
  .site-header .mobile-panel-inner{width:100%!important;max-width:none!important;margin:0!important;padding:18px 18px 22px!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;flex:1 1 auto!important;}
  .site-header .mobile-account-card{margin:0 0 14px!important;padding:14px!important;border-radius:16px!important;}
  .site-header .mobile-menu-list{position:relative!important;margin:0!important;padding:0!important;}
  .site-header .mobile-menu-list > li{position:relative!important;margin:0!important;padding:0!important;border-bottom:1px solid #edf1f4!important;}
  .site-header .mobile-menu-list > li:last-child{border-bottom:0!important;}
  .site-header .mobile-menu-list > li > a{display:flex!important;align-items:center!important;min-height:54px!important;margin:0!important;padding:15px 50px 15px 4px!important;color:var(--ps-navy,#0e3347)!important;font-size:15px!important;font-weight:700!important;line-height:1.35!important;text-decoration:none!important;border:0!important;background:transparent!important;}
  .site-header .mobile-menu-list > li > a:hover,
.site-header .mobile-menu-list > li > a:focus-visible{color:var(--ps-coral,#d95a45)!important;background:#fff9f6!important;outline:none!important;}
  .site-header .mobile-menu-list .sub-menu{display:block!important;max-height:0!important;margin:0!important;padding:0 0 0 12px!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;border-left:1px solid #e4ebf0!important;transition:max-height .28s ease,opacity .2s ease,visibility .2s ease,padding .28s ease!important;}
  .site-header .mobile-menu-list .ps-mobile-submenu-open > .sub-menu{max-height:900px!important;padding-top:4px!important;padding-bottom:8px!important;opacity:1!important;visibility:visible!important;}
  .site-header .mobile-menu-list .sub-menu li{position:relative!important;}
  .site-header .mobile-menu-list .sub-menu a{display:flex!important;align-items:center!important;min-height:44px!important;margin:0!important;padding:10px 12px!important;color:#536b7b!important;font-size:14px!important;font-weight:600!important;line-height:1.35!important;text-decoration:none!important;border-radius:10px!important;}
  .site-header .mobile-menu-list .sub-menu a:hover,
.site-header .mobile-menu-list .sub-menu a:focus-visible{color:var(--ps-navy,#0e3347)!important;background:#f3f8fb!important;outline:none!important;}
  .site-header .ps-mobile-submenu-toggle{position:absolute!important;top:7px!important;right:0!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;display:grid!important;place-items:center!important;margin:0!important;padding:0!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#7890a0!important;cursor:pointer!important;}
  .site-header .ps-mobile-submenu-toggle:hover,
.site-header .ps-mobile-submenu-toggle:focus-visible{background:#f2f7fa!important;color:var(--ps-navy,#0e3347)!important;outline:none!important;}
  .site-header .ps-mobile-submenu-toggle svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .22s ease!important;}
  .site-header .ps-mobile-submenu-open > .ps-mobile-submenu-toggle svg{transform:rotate(180deg)!important;}
  .site-header .mobile-actions{margin:16px 0 0!important;padding:16px 0 2px!important;border-top:1px solid #e7edf2!important;gap:10px!important;}
}

@media(max-width:600px){
  .site-header .mobile-panel{width:min(390px,94vw)!important;border-radius:20px 0 0 20px!important;}
  .site-header .mobile-panel-shell{border-radius:20px 0 0 20px!important;}
  .site-header .mobile-panel-header{min-height:70px!important;padding:14px!important;}
  .site-header .mobile-panel-inner{padding:14px 14px 20px!important;}
  .site-header .mobile-panel-title strong{font-size:21px!important;}
  .site-header .mobile-menu-close{width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;}
  .site-header .mobile-menu-list > li > a{min-height:50px!important;padding-top:13px!important;padding-bottom:13px!important;font-size:14px!important;}
}

@media(max-width:360px){
  .site-header .mobile-panel{width:96vw!important;}
  .site-header .mobile-panel-inner{padding-left:12px!important;padding-right:12px!important;}
}

.site-header.ps-fixed-header,
.site-header{position:sticky!important;top:0!important;left:auto!important;right:auto!important;width:100%!important;margin:0!important;transform:none!important;-webkit-transform:none!important;backface-visibility:visible!important;-webkit-backface-visibility:visible!important;z-index:60000!important;}
.admin-bar .site-header{top:var(--wp-admin--admin-bar--height,32px)!important;}
@media(max-width:782px){
  .admin-bar .site-header{top:var(--wp-admin--admin-bar--height,46px)!important;}
}
.ps-header-spacer{display:none!important;height:0!important;min-height:0!important;}
@media(max-width:1180px){
  .site-header .mobile-menu-backdrop{top:calc(var(--ps-header-top,0px) + var(--ps-header-height,68px))!important;}
  .site-header .mobile-panel{top:calc(var(--ps-header-top,0px) + var(--ps-header-height,68px))!important;}
  .site-header .mobile-menu-close{position:relative!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;margin:0!important;display:grid!important;place-items:center!important;line-height:0!important;overflow:visible!important;}
  .site-header .mobile-menu-close svg{width:22px!important;height:22px!important;flex:0 0 22px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:2.2!important;stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important;}
}
@media(max-width:480px){
  .site-header .mobile-menu-close{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
  .site-header .mobile-menu-close svg{width:21px!important;height:21px!important;}
}

html,
body{overflow-x:clip!important;}

.site-header,
.site-header.ps-fixed-header{position:sticky!important;left:auto!important;right:auto!important;width:100%!important;margin:0!important;z-index:60000!important;}
.admin-bar .site-header,
.admin-bar .site-header.ps-fixed-header{top:var(--wp-admin--admin-bar--height,32px)!important;}
@media(max-width:782px){
  .admin-bar .site-header,
.admin-bar .site-header.ps-fixed-header{top:var(--wp-admin--admin-bar--height,46px)!important;}
}

.site-header .header-inner{position:relative!important;z-index:2!important;}

.site-header .menu-toggle{appearance:none!important;-webkit-appearance:none!important;position:relative!important;z-index:20!important;pointer-events:auto!important;display:none!important;align-items:center!important;justify-content:center!important;flex-direction:row!important;flex:0 0 42px!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;margin:0!important;padding:0!important;border:1px solid #d7e0e7!important;border-radius:12px!important;background:#fff!important;color:#0e3347!important;box-shadow:0 8px 22px rgba(14,51,71,.08)!important;cursor:pointer!important;}
.site-header .menu-toggle .ps-menu-icon{display:block!important;max-width:none!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important;}
.site-header .menu-toggle .ps-menu-line{transform-origin:12px 12px!important;transition:transform .22s ease,opacity .18s ease!important;}
.site-header .menu-toggle[aria-expanded="true"] .ps-menu-line-1{transform:translateY(5px) rotate(45deg)!important;}
.site-header .menu-toggle[aria-expanded="true"] .ps-menu-line-2{opacity:0!important;}
.site-header .menu-toggle[aria-expanded="true"] .ps-menu-line-3{transform:translateY(-5px) rotate(-45deg)!important;}
.site-header .menu-toggle:hover,
.site-header .menu-toggle:focus-visible{border-color:#e7a89c!important;background:#fff9f7!important;outline:none!important;}

/* The mobile panel is a sibling of the header, so its fixed positioning is
   independent of sticky-header stacking contexts. */
.mobile-menu-backdrop{position:fixed!important;top:var(--ps-offcanvas-top,76px)!important;right:0!important;bottom:0!important;left:0!important;display:block!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;background:rgba(8,27,42,.46)!important;-webkit-backdrop-filter:blur(3px)!important;backdrop-filter:blur(3px)!important;z-index:59990!important;transition:opacity .24s ease,visibility .24s ease!important;}
.mobile-menu-backdrop.open{visibility:visible!important;opacity:1!important;pointer-events:auto!important;}

.mobile-panel{position:fixed!important;top:var(--ps-offcanvas-top,76px)!important;right:0!important;bottom:0!important;left:auto!important;width:min(410px,92vw)!important;max-width:100%!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;visibility:hidden!important;opacity:1!important;overflow:hidden!important;background:transparent!important;border:0!important;border-radius:22px 0 0 22px!important;box-shadow:-22px 0 55px rgba(10,35,52,.20)!important;transform:translate3d(105%,0,0)!important;transition:transform .32s cubic-bezier(.22,.8,.28,1),visibility 0s linear .32s!important;z-index:59999!important;pointer-events:none!important;}
.mobile-panel.open{visibility:visible!important;transform:translate3d(0,0,0)!important;transition:transform .32s cubic-bezier(.22,.8,.28,1),visibility 0s linear 0s!important;pointer-events:auto!important;}
.mobile-panel-shell{width:100%!important;height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;border:1px solid #dfe8ef!important;border-right:0!important;border-radius:22px 0 0 22px!important;}
.mobile-panel-header{flex:0 0 auto!important;min-height:78px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:16px 18px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e7edf2!important;box-shadow:0 5px 18px rgba(17,51,72,.05)!important;}
.mobile-panel-title{min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important;}
.mobile-panel-eyebrow{display:block!important;margin:0!important;color:#d95a45!important;font-size:10px!important;font-weight:800!important;letter-spacing:.18em!important;line-height:1.2!important;}
.mobile-panel-title strong{display:block!important;color:#0e3347!important;font-size:23px!important;line-height:1.1!important;letter-spacing:-.02em!important;}
.mobile-menu-close{appearance:none!important;-webkit-appearance:none!important;position:relative!important;z-index:5!important;flex:0 0 46px!important;width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;display:grid!important;place-items:center!important;margin:0!important;padding:0!important;line-height:0!important;border:1px solid #d5e0e7!important;border-radius:13px!important;background:#fff!important;color:#0e3347!important;box-shadow:0 8px 20px rgba(14,51,71,.08)!important;cursor:pointer!important;pointer-events:auto!important;overflow:visible!important;}
.mobile-menu-close:hover,
.mobile-menu-close:focus-visible{border-color:#e7a89c!important;background:#fff8f5!important;color:var(--ps-red)!important;outline:none!important;}
.mobile-menu-close svg{width:23px!important;height:23px!important;max-width:none!important;max-height:none!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:2.2!important;stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important;}
.mobile-panel-inner{width:100%!important;max-width:none!important;margin:0!important;padding:18px 18px 22px!important;flex:1 1 auto!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;}
.mobile-account-card{display:flex!important;align-items:center!important;gap:12px!important;margin:0 0 14px!important;padding:14px!important;border:1px solid #dbe7f2!important;border-radius:16px!important;background:linear-gradient(135deg,#f5faff,#fff)!important;}
.mobile-account-avatar{flex:0 0 42px!important;width:42px!important;height:42px!important;min-width:42px!important;display:grid!important;place-items:center!important;border-radius:13px!important;background:linear-gradient(135deg,#edf5fb,#f8fbfd)!important;border:1px solid #dce6ed!important;color:#0e3347!important;}
.ps-account-menu-icon{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.mobile-account-card strong{display:block!important;font-size:14px!important;color:#0e3347!important;line-height:1.35!important;}
.mobile-account-card span{display:block!important;font-size:12px!important;color:#667085!important;line-height:1.35!important;}
.mobile-menu-list{list-style:none!important;margin:0!important;padding:0!important;}
.mobile-menu-list li{list-style:none!important;margin:0!important;padding:0!important;}
.mobile-menu-list > li{position:relative!important;border-bottom:1px solid #edf1f4!important;}
.mobile-menu-list > li:last-child{border-bottom:0!important;}
.mobile-menu-list > li > a{display:flex!important;align-items:center!important;min-height:54px!important;margin:0!important;padding:15px 52px 15px 4px!important;color:#0e3347!important;font-size:15px!important;font-weight:700!important;line-height:1.35!important;text-decoration:none!important;border:0!important;background:transparent!important;}
.mobile-menu-list > li > a:hover,
.mobile-menu-list > li > a:focus-visible{color:var(--ps-red)!important;background:#fff9f6!important;outline:none!important;}
.mobile-menu-list .sub-menu{display:block!important;max-height:0!important;margin:0!important;padding:0 0 0 12px!important;overflow:hidden!important;opacity:0!important;visibility:hidden!important;border-left:1px solid #e4ebf0!important;transition:max-height .28s ease,opacity .2s ease,visibility .2s ease,padding .28s ease!important;}
.mobile-menu-list .ps-mobile-submenu-open > .sub-menu{max-height:900px!important;padding-top:4px!important;padding-bottom:8px!important;opacity:1!important;visibility:visible!important;}
.mobile-menu-list .sub-menu a{display:flex!important;align-items:center!important;min-height:44px!important;margin:0!important;padding:10px 12px!important;color:#536b7b!important;font-size:14px!important;font-weight:600!important;line-height:1.35!important;text-decoration:none!important;border-radius:10px!important;}
.mobile-menu-list .sub-menu a:hover,
.mobile-menu-list .sub-menu a:focus-visible{color:#0e3347!important;background:#f3f8fb!important;outline:none!important;}
.ps-mobile-submenu-toggle{position:absolute!important;top:7px!important;right:0!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;display:grid!important;place-items:center!important;margin:0!important;padding:0!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#7890a0!important;cursor:pointer!important;z-index:2!important;}
.ps-mobile-submenu-toggle:hover,
.ps-mobile-submenu-toggle:focus-visible{background:#f2f7fa!important;color:#0e3347!important;outline:none!important;}
.ps-mobile-submenu-toggle svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .22s ease!important;}
.ps-mobile-submenu-open > .ps-mobile-submenu-toggle svg{transform:rotate(180deg)!important;}
.mobile-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:16px 0 0!important;padding:16px 0 2px!important;border-top:1px solid #e7edf2!important;}
.mobile-actions .btn{min-height:45px!important;}

/* Desktop never exposes the mobile controls. */
@media(min-width:1181px){
  .site-header .menu-toggle{display:none!important;}
  .mobile-menu-backdrop,
.mobile-panel{display:none!important;}
}

/* Tablet/mobile: switch to off-canvas control. */
@media(max-width:1180px){
  .site-header .primary-nav{display:none!important;}
  .site-header .header-login,
.site-header .header-logout,
.site-header .header-register{display:none!important;}
  .site-header .header-actions{margin-left:auto!important;}
  .site-header .menu-toggle{display:inline-flex!important;visibility:visible!important;opacity:1!important;}
  html.ps-offcanvas-open,
html.ps-offcanvas-open body{overflow:hidden!important;}
}
@media(max-width:760px){
  .site-header .header-inner{width:calc(100% - 20px)!important;height:68px!important;min-height:68px!important;gap:7px!important;}
  .site-header .brand-large .site-logo,
.site-header .brand-large img{max-width:154px!important;height:42px!important;}
  .site-header .header-actions{gap:4px!important;}
  .site-header .header-icon-link,
.site-header .ps-header-account,
.site-header .menu-toggle{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;flex-basis:38px!important;border-radius:11px!important;}
  .site-header .ps-header-wishlist{display:none!important;}
  .mobile-panel{width:min(400px,94vw)!important;border-radius:20px 0 0 20px!important;}
  .mobile-panel-shell{border-radius:20px 0 0 20px!important;}
  .mobile-panel-header{min-height:70px!important;padding:14px!important;}
  .mobile-panel-inner{padding:14px 14px 20px!important;}
}
@media(max-width:480px){
  .site-header .brand-large .site-logo,
.site-header .brand-large img{max-width:136px!important;height:39px!important;}
  .site-header .ps-header-account{display:none!important;}
  .mobile-panel{width:min(390px,96vw)!important;}
  .mobile-menu-close{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;}
  .mobile-menu-close svg{width:21px!important;height:21px!important;}
  .mobile-actions{grid-template-columns:1fr!important;}
}

/* Never reserve the WordPress admin toolbar as a visible gap above the site
   header. The front-end header stays flush to the viewport edge while sticky. */
.site-header,
.site-header.ps-fixed-header,
body.admin-bar .site-header,
body.admin-bar .site-header.ps-fixed-header{position:sticky!important;top:0!important;inset-block-start:0!important;left:auto!important;right:auto!important;width:100%!important;margin:0!important;transform:none!important;-webkit-transform:none!important;z-index:60000!important;}

/* The mobile drawer must touch both viewport edges. Do not leave the older
   92/94/96vw and 6/8/12px inset rules active on small screens. */
@media(max-width:1180px){
  .mobile-menu-backdrop{top:var(--ps-offcanvas-top,68px)!important;right:0!important;bottom:0!important;left:0!important;width:auto!important;}

  .mobile-panel,
.site-header .mobile-panel{top:var(--ps-offcanvas-top,68px)!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;max-width:none!important;margin:0!important;border-radius:0!important;box-shadow:none!important;}

  .mobile-panel-shell,
.site-header .mobile-panel-shell{width:100%!important;border-radius:0!important;border-left:0!important;border-right:0!important;border-bottom:0!important;}

  .mobile-panel-header,
.site-header .mobile-panel-header{border-radius:0!important;}
}

@media(max-width:480px){
  .mobile-panel,
.site-header .mobile-panel{width:100vw!important;max-width:none!important;border-radius:0!important;}
  .mobile-panel-shell,
.site-header .mobile-panel-shell{border-radius:0!important;}
}

/* Photo personalisation guide and legal page content */
.ps-guide-video-section{padding:70px 0;background:#fff;}
.ps-guide-section-head{max-width:760px;margin-bottom:28px;}
.ps-guide-section-head .section-title{margin:9px 0 12px;}
.ps-guide-section-head .section-copy{margin:0;}
.ps-guide-video-shell{border-radius:25px;padding:12px;background:#081a2e;box-shadow:0 26px 75px rgba(8,26,46,.17);max-width:1100px;margin-inline:auto;}
.ps-guide-video-shell video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#081a2e;border-radius:17px;}
.ps-guide-video-note{display:flex;gap:10px;align-items:flex-start;margin:16px auto 0;max-width:1100px;color:var(--ps-muted);font-size:13px;line-height:1.7;}
.ps-guide-video-note strong{color:var(--ps-ink);}
.ps-guide-steps-section{padding:76px 0;}
.ps-guide-steps-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px;}
.ps-guide-step-card{position:relative;overflow:hidden;padding:27px;border:1px solid var(--ps-line);border-radius:21px;background:#fff;box-shadow:0 14px 38px rgba(15,49,88,.045);}
.ps-guide-step-top{display:flex;align-items:center;gap:13px;margin-bottom:15px;}
.ps-guide-step-number{flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;background:linear-gradient(135deg,var(--ps-blue-3),var(--ps-blue));color:#fff;border-radius:15px;font-size:15px;font-weight:900;}
.ps-guide-step-card h3{font-size:21px;line-height:1.25;margin:0;color:var(--ps-ink);}
.ps-guide-step-card p{font-size:14px;line-height:1.8;color:var(--ps-muted);margin:0 0 12px;}
.ps-guide-step-card ul{padding-left:19px;margin:12px 0 0;color:#526277;font-size:14px;line-height:1.8;}
.ps-guide-step-card li+li{margin-top:5px;}
.ps-guide-tip{margin-top:13px;padding:13px 15px;border-radius:13px;background:#eff6fc;color:#37516d;font-size:13px;line-height:1.65;}
.ps-guide-tip strong{color:var(--ps-blue-3);}
.ps-guide-troubleshoot{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px;}
.ps-guide-trouble-card{padding:23px;border-radius:18px;border:1px solid var(--ps-line);background:#fff;}
.ps-guide-trouble-card h3{font-size:17px;margin:0 0 8px;}
.ps-guide-trouble-card p{font-size:13px;line-height:1.75;color:var(--ps-muted);margin:0;}
.ps-policy-content h2{font-size:24px;line-height:1.25;margin:32px 0 12px;color:var(--ps-ink);}
.ps-policy-content h2:first-child{margin-top:0;}
.ps-policy-content p,
.ps-policy-content li{font-size:15px;line-height:1.85;color:#526277;}
.ps-policy-content ul{padding-left:22px;}
.ps-policy-content a{color:var(--ps-blue);text-decoration:underline;text-underline-offset:3px;}
.ps-policy-content>p:first-child{font-size:12px;color:#7b8796;}
@media(max-width:1024px){.footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px;}.footer-main{grid-column:span 3;}}
@media(max-width:760px){.ps-guide-video-section,
.ps-guide-steps-section{padding:52px 0;}.ps-guide-video-shell{padding:7px;border-radius:17px;}.ps-guide-video-shell video{border-radius:11px;}.ps-guide-steps-grid,
.ps-guide-troubleshoot{grid-template-columns:1fr;}.ps-guide-step-card{padding:22px;}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px;}.footer-main{grid-column:span 2;}.footer-bottom{gap:9px;}}
@media(max-width:430px){.footer-grid{grid-template-columns:1fr!important;}.footer-main{grid-column:auto;}.ps-guide-step-card h3{font-size:19px;}}

:root{--ps-teal:#1e5963;--ps-cream:#f8f5ef;--ps-sand:#e9e1d5;--ps-muted:#687780;--ps-radius-xl:28px;}

/* Homepage: product discovery follows the category grid directly. */
.ps-home-shop-products{padding-top:clamp(42px,6vw,78px)!important;background:#fbfaf7!important;}
.ps-home-shop-products .section-title{max-width:760px;letter-spacing:-.045em;}
.ps-home-shop-products .section-copy{max-width:680px;color:#64737b;}
.ps-home-shop-products .product-grid,
.ps-home-shop-products .products{gap:24px!important;}
.ps-home-shop-products .product-card,
.ps-home-shop-products .product,
.ps-home-shop-products li.product{border:1px solid #eae5dc!important;border-radius:20px!important;overflow:hidden;background:#fff!important;box-shadow:0 6px 20px rgba(18,45,57,.035)!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important;}
.ps-home-shop-products .product-card:hover,
.ps-home-shop-products .product:hover,
.ps-home-shop-products li.product:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(18,45,57,.10)!important;border-color:#d4e0dc!important;}

/* About Us: complete editorial layout. */
.ps-about-redesign{overflow:hidden;}
.ps-about-redesign .ps-about-hero-modern{position:relative;display:flex;align-items:center;min-height:640px;isolation:isolate;padding:clamp(64px,9vw,118px) 0;background:#d6d0c6 url("assets/images/about-hero-editorial.webp") center 52%/cover no-repeat;}
.ps-about-redesign .ps-about-hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,39,51,.88) 0%,rgba(13,39,51,.71) 42%,rgba(13,39,51,.12) 100%);}
.ps-about-redesign .ps-about-hero-content{position:relative;z-index:1;width:min(1240px,calc(100% - 48px));margin:0 auto;color:#fff;}
.ps-about-redesign .ps-about-hero-content .eyebrow{color:#f0d7b1;letter-spacing:.16em;font-weight:700!important;}
.ps-about-redesign .ps-about-hero-content h1{max-width:760px;margin:20px 0 20px;font-size:clamp(42px,6vw,76px);line-height:1.02;letter-spacing:-.055em;font-weight:650;color:#fff;text-wrap:balance;}
.ps-about-redesign .ps-about-hero-content>p{max-width:620px;font-size:clamp(16px,1.45vw,19px);line-height:1.78;color:rgba(255,255,255,.86);margin:0;}
.ps-about-redesign .about-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:30px;}
.ps-about-redesign .about-hero-actions .btn{border-radius:999px;padding:15px 22px;box-shadow:0 8px 24px rgba(3,22,31,.12);}
.ps-about-redesign .ps-about-text-link{display:inline-flex;align-items:center;gap:9px;font-weight:650;text-decoration:none;transition:gap .2s ease,color .2s ease;}
.ps-about-redesign .ps-about-text-link:hover{gap:14px;}
.ps-about-redesign .ps-about-hero-content .ps-about-text-link{color:#fff;}
.ps-about-redesign .ps-about-hero-points{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:50px;padding-top:22px;border-top:1px solid rgba(255,255,255,.28);max-width:760px;}
.ps-about-redesign .ps-about-hero-points span{display:inline-flex;align-items:center;gap:9px;color:rgba(255,255,255,.87);font-size:13px;letter-spacing:.02em;}
.ps-about-redesign .ps-about-hero-points b{color:#efcf9e;font-size:11px;letter-spacing:.08em;}
.ps-about-redesign .ps-about-intro-section{padding:clamp(68px,9vw,120px) 0;}
.ps-about-redesign .ps-about-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,7vw,100px);}
.ps-about-redesign .ps-about-story-image{position:relative;min-width:0;}
.ps-about-redesign .ps-about-story-image:before{content:"";position:absolute;right:0;bottom:0;z-index:0;}
.ps-about-redesign .ps-about-story-image>img{position:relative;z-index:1;display:block;width:100%;height:500px;object-fit:cover;box-shadow:0 22px 60px rgba(23,48,56,.13);}
.ps-about-redesign .ps-about-image-note{position:absolute;z-index:2;display:flex;align-items:center;gap:13px;max-width:290px;padding:17px 20px;border:1px solid rgba(255,255,255,.7);background:rgba(255,253,249,.94);box-shadow:0 14px 35px rgba(20,40,48,.12);backdrop-filter:blur(12px);}
.ps-about-redesign .ps-about-note-mark{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:50%;font-size:20px;}
.ps-about-redesign .ps-about-image-note strong,
.ps-about-redesign .ps-about-image-note small{display:block;}
.ps-about-redesign .ps-about-image-note strong{font-size:14px;color:#153847;}
.ps-about-redesign .ps-about-image-note small{margin-top:3px;line-height:1.45;color:#697880;font-size:12px;}
.ps-about-redesign .ps-about-intro-copy .eyebrow,
.ps-about-redesign .eyebrow{display:inline-block;color:#9b7446;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700!important;}
.ps-about-redesign .ps-about-intro-copy h2,
.ps-about-redesign .ps-about-section-heading h2,
.ps-about-redesign .ps-about-process-intro h2{margin:16px 0 22px;font-size:clamp(32px,4vw,52px);font-weight:640;text-wrap:balance;}
.ps-about-redesign .ps-about-intro-copy p,
.ps-about-redesign .ps-about-section-heading>p,
.ps-about-redesign .ps-about-process-intro>p{margin:0 0 15px;}
.ps-about-redesign .ps-about-intro-copy .btn{margin-top:14px;border-radius:999px;padding:14px 20px;}
.ps-about-redesign .ps-about-values-section{padding:clamp(70px,9vw,112px) 0;}
.ps-about-redesign .ps-about-section-heading{margin:0 auto 42px;text-align:center;}
.ps-about-redesign .ps-about-section-heading h2{margin-bottom:14px;}
.ps-about-redesign .ps-about-section-heading>p{max-width:660px;margin:0 auto;}
.ps-about-redesign .ps-about-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
.ps-about-redesign .ps-about-value-card{box-shadow:0 6px 18px rgba(27,47,55,.025);transition:transform .25s ease,box-shadow .25s ease;}
.ps-about-redesign .ps-about-value-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(27,47,55,.08);}
.ps-about-redesign .ps-about-value-icon{display:grid;place-items:center;width:46px;height:46px;font-size:22px;}
.ps-about-redesign .ps-about-index{display:block;margin-top:25px;font-size:10px;font-weight:800;letter-spacing:.13em;}
.ps-about-redesign .ps-about-value-card h3{margin:11px 0 10px;line-height:1.2;letter-spacing:-.025em;}
.ps-about-redesign .ps-about-value-card p{margin:0;}
.ps-about-redesign .ps-about-process-section{padding:clamp(72px,9vw,118px) 0;}
.ps-about-redesign .ps-about-process-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,8vw,108px);align-items:start;}
.ps-about-redesign .ps-about-process-intro h2{margin-bottom:18px;}
.ps-about-redesign .ps-about-process-intro .ps-about-text-link{margin-top:12px;}
.ps-about-redesign .ps-about-process-list{border-top:1px solid #e6e1d7;}
.ps-about-redesign .ps-about-process-step{display:grid;grid-template-columns:52px 1fr;border-bottom:1px solid #e6e1d7;}
.ps-about-redesign .ps-about-process-step>span{display:grid;place-items:center;width:46px;height:46px;font-size:12px;font-weight:800;}
.ps-about-redesign .ps-about-process-step h3{margin:1px 0 8px;letter-spacing:-.025em;}
.ps-about-redesign .ps-about-process-step p{margin:0;line-height:1.75;font-size:14px;}
.ps-about-redesign .ps-about-final-cta{padding:28px 0 82px;background:#fffdf9;}
.ps-about-redesign .ps-about-final-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:clamp(30px,5vw,58px);border-radius:28px;background:linear-gradient(115deg,#0f3546,#1d525d);color:#fff;}
.ps-about-redesign .ps-about-final-cta-inner .eyebrow{color:#e8c99c;font-weight:700!important;}
.ps-about-redesign .ps-about-final-cta-inner h2{max-width:670px;margin:13px 0;font-size:clamp(29px,4vw,45px);line-height:1.08;letter-spacing:-.04em;color:#fff;}
.ps-about-redesign .ps-about-final-cta-inner p{max-width:600px;margin:0;color:rgba(255,255,255,.78);line-height:1.7;}
.ps-about-redesign .ps-about-final-cta-inner .btn{flex:0 0 auto;border-radius:999px;padding:15px 22px;}

/* Photo Personalisation Guide: split hero, clean instruction cards and readable video. */

.ps-photo-guide .ps-guide-hero-modern{position:relative;overflow:hidden;padding:clamp(58px,8vw,104px) 0 clamp(64px,8vw,96px);background:radial-gradient(circle at 84% 20%,#e6ece5 0,transparent 29%),linear-gradient(125deg,#f6f2e9,#fbfaf7 68%);}
.ps-photo-guide .ps-guide-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:center;gap:clamp(38px,7vw,90px);}
.ps-photo-guide .ps-guide-hero-copy .eyebrow{color:#967044;letter-spacing:.15em;font-weight:700!important;}
.ps-photo-guide .ps-guide-hero-copy h1{max-width:690px;margin:17px 0 19px;font-size:clamp(42px,5.7vw,72px);line-height:1.02;letter-spacing:-.055em;color:#123443;text-wrap:balance;}
.ps-photo-guide .ps-guide-hero-copy>p{max-width:600px;font-size:17px;line-height:1.8;color:#65747b;margin:0;}
.ps-photo-guide .ps-guide-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:29px;}
.ps-photo-guide .ps-guide-hero-actions .btn{border-radius:999px;padding:14px 21px;}
.ps-photo-guide .ps-guide-hero-meta{display:flex;flex-wrap:wrap;gap:12px 22px;padding-top:21px;margin-top:33px;border-top:1px solid #deded5;}
.ps-photo-guide .ps-guide-hero-meta span{display:inline-flex;align-items:center;gap:8px;color:#4f636b;font-size:13px;font-weight:600;}
.ps-photo-guide .ps-guide-hero-meta b{display:grid;place-items:center;width:25px;height:25px;background:#e3ece7;color:#1f5b5a;border-radius:50%;font-size:11px;}
.ps-photo-guide .ps-guide-hero-visual{position:relative;min-width:0;padding:18px;border:1px solid rgba(255,255,255,.9);border-radius:30px;background:rgba(255,255,255,.65);box-shadow:0 24px 65px rgba(24,51,62,.13);}
.ps-photo-guide .ps-guide-hero-visual>img{display:block;width:100%;height:390px;object-fit:cover;object-position:center;border-radius:20px;background:#e9e5de;}
.ps-photo-guide .ps-guide-visual-note{position:absolute;left:-28px;bottom:36px;display:flex;align-items:center;gap:13px;max-width:290px;padding:16px 19px;border:1px solid #e8e5dc;border-radius:16px;background:#fffdf8;box-shadow:0 15px 32px rgba(18,45,58,.13);}
.ps-photo-guide .ps-guide-visual-note>span{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#e6f0e9;color:#245a56;font-size:21px;}
.ps-photo-guide .ps-guide-visual-note strong,
.ps-photo-guide .ps-guide-visual-note small{display:block;}
.ps-photo-guide .ps-guide-visual-note strong{color:#183d4b;font-size:13px;}
.ps-photo-guide .ps-guide-visual-note small{color:#718087;font-size:11px;margin-top:4px;}
.ps-photo-guide .ps-guide-video-section{padding:clamp(60px,7vw,90px) 0;}
.ps-photo-guide .ps-guide-section-head{max-width:760px;margin:0 auto 32px;text-align:center;}
.ps-photo-guide .ps-guide-section-head .eyebrow{letter-spacing:.15em;}
.ps-photo-guide .ps-guide-section-head .section-title{margin:13px 0;font-size:clamp(30px,4vw,46px);line-height:1.08;letter-spacing:-.04em;}
.ps-photo-guide .ps-guide-section-head .section-copy{max-width:650px;margin:0 auto;line-height:1.8;}
.ps-photo-guide .ps-guide-video-shell{margin:0 auto;overflow:hidden;box-shadow:0 22px 55px rgba(16,47,64,.12);}
.ps-photo-guide .ps-guide-video-shell video{display:block;width:100%;max-height:560px;aspect-ratio:16/9;object-fit:contain;background:#0d2c3c;}
.ps-photo-guide .ps-guide-video-note{display:flex;gap:10px;max-width:980px;margin:18px auto 0;padding:15px 18px;font-size:13px;line-height:1.65;}
.ps-photo-guide .ps-guide-video-note strong{white-space:nowrap;}
.ps-photo-guide .ps-guide-steps-section{padding:clamp(62px,8vw,100px) 0;}
.ps-photo-guide .ps-guide-steps-grid{display:grid;}

.ps-photo-guide .ps-guide-step-number{background:#e3ece7;}
.ps-photo-guide .ps-guide-step-top h3{margin:2px 0 0;font-size:21px;line-height:1.25;letter-spacing:-.025em;color:#143746;}
.ps-photo-guide .ps-guide-step-card p{color:#617179;font-size:14px;line-height:1.78;margin:0 0 14px;}
.ps-photo-guide .ps-guide-step-card ul{padding-left:19px;margin:0 0 16px;color:#53666e;font-size:13px;line-height:1.85;}
.ps-photo-guide .ps-guide-step-card li{padding-left:3px;margin:2px 0;}
.ps-photo-guide .ps-guide-tip{padding:13px 15px;line-height:1.7;}

.ps-photo-guide .ps-guide-troubleshoot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}

.ps-photo-guide .ps-guide-trouble-card h3{margin:0 0 8px;}
.ps-photo-guide .ps-guide-trouble-card p{margin:0;font-size:13px;}
.ps-photo-guide .ps-guide-steps-section .cta{margin-top:60px;}
.ps-photo-guide .ps-cta-box{border-radius:28px;overflow:hidden;box-shadow:0 18px 50px rgba(12,47,65,.12);}

/* Blog detail page: editorial header and quiet reading surface. */

body.single-post .single-post-page .ps-article-hero{position:relative;overflow:hidden;background-image:linear-gradient(100deg,rgba(14,43,57,.92),rgba(14,43,57,.70) 52%,rgba(14,43,57,.42)),url("assets/images/inner-hero-memory.webp")!important;background-position:center 50%!important;}
body.single-post .single-post-page .ps-article-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 28%,rgba(233,201,156,.18),transparent 30%);pointer-events:none;}
body.single-post .single-post-page .ps-article-hero .ps-inner-hero-content{position:relative;z-index:1;width:min(1180px,calc(100% - 44px));max-width:1180px!important;margin:0 auto!important;}
body.single-post .single-post-page .ps-article-hero .section-title{font-size:clamp(38px,5.2vw,68px)!important;text-wrap:balance;color:#fff!important;}
body.single-post .single-post-page .ps-article-hero .section-copy{color:rgba(255,255,255,.83)!important;line-height:1.75!important;}
body.single-post .single-post-page .ps-article-hero .eyebrow{color:#f0cf9c!important;letter-spacing:.15em;font-weight:700!important;}
body.single-post .single-post-page .ps-single-post-content{padding-top:clamp(34px,5vw,62px)!important;padding-bottom:clamp(58px,7vw,92px)!important;}
body.single-post .single-post-page .ps-single-post-grid{gap:clamp(28px,5vw,70px)!important;align-items:start!important;}
body.single-post .single-post-page .ps-single-post-main{min-width:0;}
body.single-post .single-post-page .ps-single-post-featured-image{margin:0 0 34px!important;overflow:hidden;border-radius:22px!important;background:#eee6dc;box-shadow:0 18px 44px rgba(17,45,59,.09);}
body.single-post .single-post-page .ps-single-post-featured-image img{display:block;width:100%;height:auto;max-height:620px;object-fit:cover;}
body.single-post .single-post-page .ps-single-post-body{padding:clamp(24px,4vw,48px)!important;border:1px solid #e8e2d8!important;border-radius:23px!important;background:#fffdf9!important;box-shadow:0 8px 30px rgba(17,45,59,.035)!important;color:#405861!important;font-size:17px!important;line-height:1.9!important;}
body.single-post .single-post-page .ps-single-post-body h2{margin:1.8em 0 .65em;color:#123847;font-size:clamp(27px,3vw,36px);line-height:1.14;letter-spacing:-.035em;}
body.single-post .single-post-page .ps-single-post-body h3{margin:1.6em 0 .55em;color:#123847;font-size:23px;line-height:1.25;}
body.single-post .single-post-page .ps-single-post-body p{margin:0 0 1.2em;}
body.single-post .single-post-page .ps-single-post-body img{border-radius:14px;}
body.single-post .single-post-page .ps-single-post-body a{color:#1d6868;text-decoration-thickness:1px;text-underline-offset:3px;}
body.single-post .single-post-page .ps-single-post-body blockquote{margin:28px 0;padding:20px 25px;border-left:3px solid #c49d6c;border-radius:0 13px 13px 0;background:#f4f0e7;color:#35515b;}
body.single-post .single-post-page .ps-single-post-sidebar{position:sticky;top:110px;padding:25px!important;border:1px solid #e8e2d8;border-radius:22px;background:#f5f2eb;}
body.single-post .single-post-page .ps-single-post-sidebar h2,
body.single-post .single-post-page .ps-single-post-sidebar h3{font-size:19px;line-height:1.25;color:#173e4d;}
body.single-post .single-post-page .ps-single-post-sidebar a{color:#32666a;text-decoration:none;}
body.single-post .single-post-page .ps-single-post-sidebar a:hover{text-decoration:underline;text-underline-offset:3px;}
body.single-post .single-post-page .navigation.post-navigation{margin-top:28px;padding-top:22px;border-top:1px solid #e6dfd5;}
body.single-post .single-post-page .navigation.post-navigation a{color:#1c6267;font-weight:650;text-decoration:none;}

/* Correct the WooCommerce success notice: aligned icon, copy and action button. */
.woocommerce-message,
.woocommerce-page .woocommerce-message{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px 18px!important;flex-wrap:wrap!important;margin:22px 0 28px!important;padding:17px 20px 17px 55px!important;min-height:70px!important;border:1px solid #e5dfd4!important;border-left:4px solid #39805d!important;border-radius:15px!important;background:#f8f4ec!important;box-shadow:0 8px 24px rgba(19,48,60,.055)!important;color:#3f5660!important;font-size:14px!important;line-height:1.6!important;}
.woocommerce-message:before,
.woocommerce-page .woocommerce-message:before{position:absolute!important;left:18px!important;top:50%!important;right:auto!important;bottom:auto!important;transform:translateY(-50%)!important;float:none!important;margin:0!important;color:#36815c!important;font-size:19px!important;line-height:1!important;}
.woocommerce-message a.button.wc-forward,
.woocommerce-page .woocommerce-message a.button.wc-forward{float:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;order:2!important;margin:0 0 0 auto!important;min-height:44px!important;padding:11px 20px!important;border:0!important;border-radius:11px!important;background:#10394b!important;color:#fff!important;font-size:13px!important;font-weight:700!important;line-height:1.2!important;text-decoration:none!important;box-shadow:0 8px 18px rgba(16,57,75,.13)!important;transition:transform .2s ease,background .2s ease!important;}
.woocommerce-message a.button.wc-forward:hover,
.woocommerce-page .woocommerce-message a.button.wc-forward:hover{transform:translateY(-1px);background:var(--ps-blue)!important;color:#fff!important;}

/* Professional shopping cart off-canvas. */
.ps-cart-backdrop{position:fixed!important;inset:0!important;z-index:99990!important;background:rgba(9,27,36,.50)!important;backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s ease,visibility .28s ease;}
.ps-cart-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.ps-cart-drawer{position:fixed!important;z-index:99991!important;top:0!important;right:0!important;bottom:0!important;width:min(470px,100vw)!important;max-width:100vw!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:-24px 0 70px rgba(4,28,40,.20)!important;transform:translateX(103%);visibility:hidden;transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility .32s ease;}
.ps-cart-drawer.is-open{transform:translateX(0);visibility:visible;}
.ps-cart-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:28px 28px 24px;border-bottom:1px solid #eae4da;}
.ps-cart-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:.18em;}
.ps-cart-drawer-header h2{display:flex;align-items:center;gap:9px;margin:9px 0 5px;font-size:29px;line-height:1.1;letter-spacing:-.04em;}
.ps-cart-drawer-header h2 span{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:999px;font-size:12px;letter-spacing:0;}
.ps-cart-drawer-header p{margin:0;font-size:13px;line-height:1.5;}
.ps-cart-close{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border:1px solid #e6e0d6;background:#fff;color:#173948;cursor:pointer;transition:background .2s ease,transform .2s ease;}
.ps-cart-close:hover{transform:rotate(4deg);}
.ps-cart-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;}
.ps-cart-drawer-content{position:relative;flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;transition:opacity .2s ease;}
.ps-cart-drawer.is-refreshing .ps-cart-drawer-content{opacity:.72;}
.ps-side-cart-items{display:flex!important;flex-direction:column!important;gap:0!important;margin:0!important;padding:0!important;list-style:none!important;}
.ps-side-cart-item{position:relative;display:grid!important;align-items:start!important;margin:0!important;border-bottom:1px solid #eee8df!important;list-style:none!important;}
.ps-side-cart-thumb{overflow:hidden;}
.ps-side-cart-thumb a{display:block;width:100%;height:100%;}
.ps-side-cart-thumb img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;}
.ps-side-cart-item-details{min-width:0;padding:3px 0;}
.ps-side-cart-product-name{display:block;padding-right:2px;text-decoration:none!important;}
.ps-side-cart-item-details dl.variation{display:flex;flex-wrap:wrap;gap:4px 9px;margin:7px 0 0!important;font-size:11px;color:#6b797f;}
.ps-side-cart-item-details dl.variation dt,
.ps-side-cart-item-details dl.variation dd{margin:0!important;}
.ps-side-cart-item-bottom{display:flex;justify-content:space-between;}
.ps-side-cart-qty{font-size:12px;color:#758187;}
.ps-side-cart-item-bottom strong{color:#173d4c;font-size:13px;white-space:nowrap;}
.ps-side-cart-remove{display:grid!important;place-items:center;margin:0!important;padding:0!important;text-decoration:none!important;line-height:1!important;opacity:1!important;}
.ps-side-cart-remove:hover{color:var(--ps-red)!important;}

.ps-side-cart-subtotal{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:650;}
.ps-side-cart-subtotal strong{letter-spacing:-.025em;}
.ps-side-cart-summary>p{margin:9px 0 20px;line-height:1.5;}
.ps-side-cart-checkout{display:flex!important;align-items:center;justify-content:center;gap:10px;min-height:52px;margin:0!important;padding:15px 20px!important;border:0!important;border-radius:13px!important;background:#10394b!important;color:#fff!important;text-decoration:none!important;font-size:14px!important;font-weight:750!important;box-shadow:0 10px 24px rgba(16,57,75,.14)!important;}
.ps-side-cart-checkout:hover{background:#1a5663!important;color:#fff!important;}
.ps-side-cart-continue{display:block;margin:15px auto 0;text-align:center;font-weight:700;text-decoration:none!important;}
.ps-side-cart-continue:hover{text-decoration:underline!important;text-underline-offset:3px;}
.ps-cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:360px;padding:30px 12px;text-align:center;}
.ps-cart-empty-icon{display:grid;place-items:center;width:74px;height:74px;font-size:34px;}
.ps-cart-empty h3{margin:20px 0 8px;font-size:23px;letter-spacing:-.03em;}
.ps-cart-empty p{max-width:280px;margin:0 0 23px;font-size:14px;line-height:1.7;}
.ps-cart-empty .btn{border-radius:999px;padding:14px 20px;text-decoration:none;}
.ps-cart-drawer-bottom{flex:0 0 auto;padding:14px 24px;border-top:1px solid #eae4da;}
.ps-cart-drawer-bottom p{display:flex;align-items:center;justify-content:center;gap:11px;margin:0;font-size:10px;font-weight:650;letter-spacing:.03em;}

html.ps-cart-open,
html.ps-cart-open body{overflow:hidden!important;}
.header-icon-link.ps-cart-link{position:relative;}
.ps-cart-count-fragment.is-empty{display:none!important;}

@media(max-width:900px){
 .ps-about-redesign .ps-about-hero-modern{min-height:590px;background-position:58% center;}
 .ps-about-redesign .ps-about-intro-grid{gap:36px;}
 .ps-about-redesign .ps-about-story-image>img{height:420px;}
 .ps-photo-guide .ps-guide-hero-grid{gap:35px;}
 .ps-photo-guide .ps-guide-hero-visual>img{height:330px;}
}
@media(max-width:700px){
 .ps-about-redesign .ps-about-hero-modern{min-height:0;padding:70px 0 58px;background-position:61% center;}
 .ps-about-redesign .ps-about-hero-shade{background:linear-gradient(90deg,rgba(13,39,51,.88),rgba(13,39,51,.70));}
 .ps-about-redesign .ps-about-hero-content{width:calc(100% - 36px);}
 .ps-about-redesign .ps-about-hero-content h1{font-size:clamp(39px,11vw,54px);}
 .ps-about-redesign .ps-about-hero-content>p{font-size:15px;}
 .ps-about-redesign .about-hero-actions{align-items:flex-start;flex-direction:column;gap:16px;}
 .ps-about-redesign .ps-about-hero-points{gap:11px 16px;margin-top:34px;}
 .ps-about-redesign .ps-about-hero-points span{font-size:11px;}
 .ps-about-redesign .ps-about-intro-grid,
.ps-about-redesign .ps-about-process-grid{grid-template-columns:1fr;gap:40px;}
 .ps-about-redesign .ps-about-story-image{padding-right:15px;padding-bottom:18px;}
 .ps-about-redesign .ps-about-story-image>img{height:350px;}
 .ps-about-redesign .ps-about-image-note{left:10px;bottom:32px;padding:13px 14px;max-width:265px;}
 .ps-about-redesign .ps-about-value-grid{grid-template-columns:1fr;gap:13px;}
 .ps-about-redesign .ps-about-value-card{min-height:0;padding:24px;}
 .ps-about-redesign .ps-about-index{margin-top:19px;}
 .ps-about-redesign .ps-about-final-cta-inner{align-items:flex-start;flex-direction:column;border-radius:22px;}
 .ps-photo-guide .ps-guide-hero-grid{grid-template-columns:1fr;gap:35px;}
 .ps-photo-guide .ps-guide-hero-copy h1{font-size:clamp(39px,10.5vw,55px);}
 .ps-photo-guide .ps-guide-hero-copy>p{font-size:15px;}
 .ps-photo-guide .ps-guide-hero-actions{align-items:flex-start;gap:16px;}
 .ps-photo-guide .ps-guide-hero-visual{padding:10px;border-radius:22px;margin-left:12px;}
 .ps-photo-guide .ps-guide-hero-visual>img{height:270px;border-radius:15px;}
 .ps-photo-guide .ps-guide-visual-note{left:-12px;bottom:20px;padding:12px 14px;}
 .ps-photo-guide .ps-guide-hero-meta{gap:10px 15px;margin-top:24px;}
 .ps-photo-guide .ps-guide-steps-grid,
.ps-photo-guide .ps-guide-troubleshoot{grid-template-columns:1fr;}
 .ps-photo-guide .ps-guide-step-card{padding:23px 21px;border-radius:18px;}
 .ps-photo-guide .ps-guide-step-top h3{font-size:19px;}
 .ps-photo-guide .ps-guide-video-note{align-items:flex-start;font-size:12px;}
 .ps-photo-guide .ps-guide-video-note strong{white-space:normal;}
 body.single-post .single-post-page .ps-article-hero{min-height:330px!important;background-position:60% center!important;}
 body.single-post .single-post-page .ps-article-hero .ps-inner-hero-content{width:calc(100% - 36px);padding:54px 0 58px!important;}
 body.single-post .single-post-page .ps-article-hero .section-title{font-size:clamp(34px,9vw,48px)!important;}
 body.single-post .single-post-page .ps-article-hero .section-copy{font-size:15px!important;}
 body.single-post .single-post-page .ps-single-post-body{padding:22px!important;font-size:15px!important;line-height:1.8!important;}
 body.single-post .single-post-page .ps-single-post-featured-image{border-radius:16px!important;}
 body.single-post .single-post-page .ps-single-post-sidebar{position:static;}
 .woocommerce-message,
.woocommerce-page .woocommerce-message{align-items:flex-start!important;padding:16px 15px 16px 47px!important;font-size:13px!important;}
 .woocommerce-message:before,
.woocommerce-page .woocommerce-message:before{left:15px!important;top:19px!important;transform:none!important;}
 .woocommerce-message a.button.wc-forward,
.woocommerce-page .woocommerce-message a.button.wc-forward{width:100%;margin:4px 0 0!important;}
 .ps-cart-drawer{width:100vw!important;}
 .ps-cart-drawer-header{padding:23px 20px 19px;}
 .ps-cart-drawer-content{padding:8px 20px 20px;}
 .ps-cart-drawer-bottom{padding:13px 14px;}
 .ps-side-cart-item{grid-template-columns:74px minmax(0,1fr) 24px!important;gap:11px!important;}
 .ps-side-cart-thumb{width:74px;height:84px;}
}
@media(prefers-reduced-motion:reduce){.ps-cart-drawer,
.ps-cart-backdrop,
.ps-about-redesign *,
.ps-photo-guide *{transition:none!important;animation:none!important;scroll-behavior:auto!important;}}

/* Fallback selectors for themes/builders that wrap single-post content differently. */
body.single-post .ps-article-hero{background-image:linear-gradient(100deg,rgba(14,43,57,.92),rgba(14,43,57,.66)),url("assets/images/inner-hero-memory.webp")!important;background-size:cover!important;background-position:center!important;}
body.single-post .ps-article-hero .section-title{max-width:930px;font-size:clamp(36px,5.2vw,68px);line-height:1.03;letter-spacing:-.052em;color:#fff;}
body.single-post .ps-article-hero .section-copy{color:rgba(255,255,255,.84);line-height:1.75;}
body.single-post article.post,
.single-post .entry-content{color:#405861;line-height:1.9;}
body.single-post .entry-content{padding:clamp(18px,3vw,38px);border:1px solid #e8e2d8;border-radius:22px;background:#fffdf9;}
body.single-post .entry-content h2,
body.single-post .entry-content h3{color:#123847;line-height:1.2;letter-spacing:-.025em;}
body.single-post .entry-content img,
body.single-post .post-thumbnail img{border-radius:15px;}
body.single-post .entry-content blockquote{padding:20px 24px;border-left:3px solid #c49d6c;border-radius:0 13px 13px 0;background:#f4f0e7;color:#35515b;}
.ps-guide-hero-modern{position:relative;overflow:hidden;padding:clamp(58px,8vw,104px) 0;background:radial-gradient(circle at 84% 20%,#e6ece5 0,transparent 29%),linear-gradient(125deg,#f6f2e9,#fbfaf7 68%);}
.ps-guide-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:center;gap:clamp(38px,7vw,90px);}
.ps-guide-hero-copy h1{max-width:690px;margin:17px 0 19px;font-size:clamp(42px,5.7vw,72px);line-height:1.02;letter-spacing:-.055em;color:#123443;text-wrap:balance;}
.ps-guide-hero-copy>p{max-width:600px;font-size:17px;line-height:1.8;color:#65747b;}
.ps-guide-hero-visual{position:relative;padding:18px;border:1px solid #fff;border-radius:30px;background:rgba(255,255,255,.65);box-shadow:0 24px 65px rgba(24,51,62,.13);}
.ps-guide-hero-visual>img{display:block;width:100%;height:390px;object-fit:cover;border-radius:20px;}
.ps-guide-steps-section{padding:clamp(62px,8vw,100px) 0;background:#f5f2eb;}
@media(max-width:700px){.ps-guide-hero-grid{grid-template-columns:1fr;gap:35px;}.ps-guide-hero-copy h1{font-size:clamp(39px,10.5vw,55px);}.ps-guide-hero-visual{padding:10px;border-radius:22px;}.ps-guide-hero-visual>img{height:270px;}}

:root{--ps-blue-2:#1d4774;--ps-blue-3:#0f3158;--ps-red:#e74031;--ps-ink:#102f40;--ps-muted:#667784;--ps-bg:#f7f9fc;--ps-card:#ffffff;--ps-line:#e3eaf2;--ps-radius:13px;--ps-shadow:0 18px 48px rgba(15,49,88,.10);--ps-control-focus:0 0 0 3px rgba(232,93,73,.18);}

/* Button styles intentionally match the homepage primary/secondary buttons. */
body .btn,
body a.button,
body button.button,
body input.button,
body .woocommerce a.button,
body .woocommerce button.button,
body .woocommerce input.button,
body .woocommerce #respond input#submit,
body .woocommerce button[name="add-to-cart"],
body .woocommerce .single_add_to_cart_button,
body .woocommerce .checkout-button,
body .woocommerce #place_order,
body .wp-block-button__link,
body input[type="submit"].button,
body .ps-filter-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;min-height:48px!important;padding:0 21px!important;border:1px solid transparent!important;border-radius:14px!important;background:var(--ps-red)!important;color:#111!important;font-family:inherit!important;font-size:14px!important;font-weight:800!important;line-height:1.2!important;letter-spacing:0!important;text-decoration:none!important;text-transform:none!important;box-shadow:0 10px 22px rgba(232,93,73,.18)!important;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,border-color .2s ease,color .2s ease!important;cursor:pointer;}
body .btn:after{display:none!important;content:none!important;}
body .btn:hover,
body a.button:hover,
body button.button:hover,
body input.button:hover,
body .woocommerce a.button:hover,
body .woocommerce button.button:hover,
body .woocommerce input.button:hover,
body .woocommerce #respond input#submit:hover,
body .woocommerce button[name="add-to-cart"]:hover,
body .woocommerce .single_add_to_cart_button:hover,
body .woocommerce .checkout-button:hover,
body .woocommerce #place_order:hover,
body .wp-block-button__link:hover,
body input[type="submit"].button:hover,
body .ps-filter-submit:hover{border-color:var(--ps-red)!important;background:var(--ps-red)!important;color:#111!important;transform:translateY(-2px);box-shadow:0 14px 28px rgba(232,93,73,.23)!important;}
body .btn-secondary,
body .woocommerce a.button.btn-secondary,
body .ps-hero-outline-btn{border-color:#ccd8e7!important;background:#fff!important;color:var(--ps-blue)!important;box-shadow:none!important;}
body .btn-secondary:hover,
body .woocommerce a.button.btn-secondary:hover,
body .ps-hero-outline-btn:hover{border-color:var(--ps-red)!important;background:var(--ps-red)!important;color:#111!important;box-shadow:0 8px 20px rgba(232,93,73,.16)!important;}
body .btn-light,
body .cta-box .btn-light{border-color:#fff!important;background:#fff!important;color:var(--ps-blue)!important;box-shadow:0 8px 20px rgba(3,20,37,.10)!important;}
body .btn-light:hover,
body .cta-box .btn-light:hover{border-color:#e8f0fa!important;background:#edf5fc!important;color:var(--ps-blue)!important;}
body .btn-footer-ghost,
body .cta-box .btn-footer-ghost{border-color:rgba(255,255,255,.52)!important;background:rgba(255,255,255,.06)!important;color:#fff!important;box-shadow:none!important;}
body .btn-footer-ghost:hover,
body .cta-box .btn-footer-ghost:hover{border-color:#fff!important;background:rgba(255,255,255,.15)!important;color:#fff!important;}
body .btn:focus-visible,
body a.button:focus-visible,
body button.button:focus-visible,
body input.button:focus-visible,
body .woocommerce button:focus-visible,
body .wp-block-button__link:focus-visible{outline:0!important;box-shadow:var(--ps-control-focus)!important;}
body .btn:disabled,
body .button:disabled,
body button:disabled{opacity:.48;cursor:not-allowed;transform:none!important;box-shadow:none!important;}
body input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus,
body textarea:focus,
body select:focus,
body .woocommerce form .form-row input.input-text:focus,
body .woocommerce form .form-row textarea:focus{border-color:var(--ps-red)!important;outline:0!important;box-shadow:var(--ps-control-focus)!important;}

/* One shared banner treatment for every inner page; home keeps its slider. */
.ps-inner-hero,
.ps-inner-hero-contact,
.ps-inner-hero-about,
.ps-inner-hero-guide,
.ps-inner-hero-blog{position:relative!important;display:flex!important;align-items:center!important;min-height:330px!important;overflow:hidden!important;background-color:#173b54!important;background-size:cover!important;background-position:center 48%!important;isolation:isolate;}
.ps-inner-hero::before{z-index:0!important;background:linear-gradient(90deg,rgba(8,26,43,.84) 0%,rgba(14,45,68,.66) 53%,rgba(14,45,68,.34) 100%)!important;}
.ps-inner-hero-overlay{z-index:1!important;background:linear-gradient(0deg,rgba(7,26,41,.18),rgba(7,26,41,.03))!important;}
.ps-inner-hero-about{background-image:url("assets/images/about-hero-editorial.webp")!important;background-position:center 52%!important;}
.ps-inner-hero-guide{background-image:url("assets/images/inner-hero-memory.webp")!important;}
.ps-inner-hero-blog{background-image:url("assets/images/inner-hero-memory.webp")!important;}
.ps-inner-hero-contact{background-image:url("assets/images/inner-hero-gifts.webp")!important;}
.ps-inner-hero-content{position:relative!important;z-index:2!important;width:min(1180px,calc(100% - 48px))!important;margin-inline:auto!important;padding:60px 0!important;color:#fff!important;}
.ps-inner-hero-content .eyebrow{display:inline-flex!important;align-items:center!important;width:max-content!important;max-width:100%;padding:7px 12px!important;border:1px solid rgba(255,255,255,.23)!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;color:#fff!important;font-size:12px!important;letter-spacing:.09em!important;font-weight:700!important;}
.ps-inner-hero-content .section-title{max-width:800px!important;margin:16px 0 13px!important;color:#fff!important;font-size:clamp(36px,4.5vw,60px)!important;font-weight:800!important;line-height:1.06!important;letter-spacing:-.045em!important;text-shadow:0 5px 20px rgba(0,0,0,.10)!important;}
.ps-inner-hero-content .section-copy{max-width:700px!important;margin:0!important;color:rgba(255,255,255,.88)!important;font-size:16px!important;line-height:1.75!important;}
.ps-inner-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:11px;margin-top:23px;}
.ps-inner-hero-content .ps-inner-hero-secondary{border-color:rgba(255,255,255,.66)!important;background:rgba(255,255,255,.96)!important;color:#285787!important;}
.ps-inner-hero-content .ps-inner-hero-secondary:hover{background:#fff!important;border-color:#fff!important;}
.ps-inner-hero-blog{min-height:365px!important;}
.ps-article-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:12px;color:#fff;font-size:12px;font-weight:650;}
.ps-article-kicker .eyebrow{margin:0;font-weight:700!important;}
.ps-article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:20px;}
.ps-article-meta span{display:inline-flex;align-items:center;min-height:30px;padding:5px 11px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.10);color:#fff;font-size:11px;font-weight:700;}

/* Matching CTAs on home, About and Photo Guide. */
body .cta.ps-unified-cta,
body .cta{padding:clamp(42px,6vw,76px) 0!important;background:#fff!important;}
body .cta-box,
body .ps-cta-box{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(180px,.65fr)!important;align-items:center!important;gap:clamp(24px,5vw,58px)!important;padding:clamp(28px,5vw,56px)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:24px!important;background:linear-gradient(125deg,#0f3158 0%,#285787 66%,#3477b8 100%)!important;color:#fff!important;box-shadow:0 24px 55px rgba(15,49,88,.17)!important;}
body .cta-box:after{pointer-events:none;opacity:.55;}
body .cta-box .eyebrow,
body .cta-box .eyebrow-light{color:#d9eafa!important;font-weight:700!important;}
body .cta-box .section-title,
body .cta-box h2{max-width:680px;margin:12px 0 13px!important;color:#fff!important;font-size:clamp(29px,3.6vw,43px)!important;line-height:1.1!important;letter-spacing:-.04em!important;}
body .cta-box .section-copy,
body .cta-box p{max-width:620px;color:rgba(255,255,255,.82)!important;font-size:15px!important;line-height:1.75!important;}
body .cta-box .hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px!important;margin-top:23px!important;}
body .cta-box>img{display:block;width:100%!important;max-width:300px!important;max-height:270px!important;justify-self:end;object-fit:contain!important;filter:drop-shadow(0 18px 25px rgba(0,0,0,.14));}

/* About Us: editorial sections with consistent spacing, cards and typography. */
.ps-about-redesign{background:#fff!important;color:#102f40!important;}
.ps-about-redesign .ps-about-intro-section{padding:clamp(55px,7vw,88px) 0!important;background:#fff!important;}
.ps-about-redesign .ps-about-intro-grid{gap:clamp(30px,5vw,72px)!important;align-items:center!important;}
.ps-about-redesign .ps-about-story-image{padding:0 20px 20px 0!important;}
.ps-about-redesign .ps-about-story-image:before{width:72%!important;height:72%!important;border-radius:24px!important;background:#eaf1f8!important;}
.ps-about-redesign .ps-about-story-image>img{height:clamp(320px,42vw,480px)!important;border-radius:22px!important;box-shadow:0 20px 48px rgba(15,49,88,.12)!important;}
.ps-about-redesign .ps-about-image-note{left:18px!important;bottom:38px!important;border-color:#e6edf5!important;border-radius:14px!important;box-shadow:0 14px 32px rgba(15,49,88,.12)!important;}
.ps-about-redesign .ps-about-note-mark{background:#e8f1fb!important;color:#285787!important;}
.ps-about-redesign .ps-about-intro-copy .eyebrow,
.ps-about-redesign .ps-about-section-heading .eyebrow,
.ps-about-redesign .ps-about-process-intro .eyebrow{color:#285787!important;font-weight:700!important;}
.ps-about-redesign .ps-about-intro-copy h2,
.ps-about-redesign .ps-about-section-heading h2,
.ps-about-redesign .ps-about-process-intro h2{color:#102f40!important;font-size:clamp(30px,3.3vw,45px)!important;line-height:1.12!important;letter-spacing:-.04em!important;}
.ps-about-redesign .ps-about-intro-copy p,
.ps-about-redesign .ps-about-section-heading>p,
.ps-about-redesign .ps-about-process-intro>p{color:#627383!important;font-size:15px!important;line-height:1.85!important;}
.ps-about-redesign .ps-about-values-section{padding:clamp(58px,7vw,88px) 0!important;background:#f5f8fc!important;}
.ps-about-redesign .ps-about-section-heading{max-width:790px!important;margin-bottom:32px!important;}
.ps-about-redesign .ps-about-value-grid{gap:16px!important;}
.ps-about-redesign .ps-about-value-card{min-height:260px!important;padding:26px!important;border:1px solid #e0e8f1!important;border-radius:18px!important;background:#fff!important;box-shadow:0 8px 25px rgba(15,49,88,.035)!important;}
.ps-about-redesign .ps-about-value-card:hover{border-color:#c8d8e9!important;transform:translateY(-4px)!important;box-shadow:0 16px 36px rgba(15,49,88,.09)!important;}
.ps-about-redesign .ps-about-value-icon{border-radius:14px!important;background:#edf5fc!important;color:#285787!important;}
.ps-about-redesign .ps-about-index{color:#52779a!important;}
.ps-about-redesign .ps-about-value-card h3{color:#102f40!important;font-size:20px!important;}
.ps-about-redesign .ps-about-value-card p{color:#687986!important;font-size:14px!important;line-height:1.8!important;}
.ps-about-redesign .ps-about-process-section{padding:clamp(60px,7vw,92px) 0!important;background:#fff!important;}
.ps-about-redesign .ps-about-process-grid{gap:clamp(30px,6vw,82px)!important;}
.ps-about-redesign .ps-about-process-list{border-color:#e2eaf2!important;}
.ps-about-redesign .ps-about-process-step{gap:16px!important;padding:22px 0!important;border-color:#e2eaf2!important;}
.ps-about-redesign .ps-about-process-step>span{border-radius:14px!important;background:#edf5fc!important;color:#285787!important;}
.ps-about-redesign .ps-about-process-step h3{color:#102f40!important;font-size:19px!important;}
.ps-about-redesign .ps-about-process-step p{color:#687986!important;}
.ps-about-redesign .ps-about-text-link{color:#285787!important;}
.ps-about-redesign .ps-about-text-link:hover{color:#1d4774!important;}

/* Photo guide: a clear 3-step overview, readable video, and airy instructions. */
.ps-photo-guide{background:#f7f9fc!important;color:#102f40!important;}
.ps-guide-quickstart{position:relative;z-index:2;padding:0 0 20px;background:#fff;}
.ps-guide-quickstart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;transform:translateY(-14px);}
.ps-guide-quickstart-grid article{display:flex;align-items:flex-start;gap:15px;min-width:0;padding:21px 22px;border:1px solid #e3eaf2;border-radius:16px;background:#fff;box-shadow:0 12px 28px rgba(15,49,88,.06);}
.ps-guide-quickstart-number{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#edf5fc;color:#285787;font-size:12px;font-weight:900;}
.ps-guide-quickstart-grid h2{margin:2px 0 5px;color:#102f40;font-size:16px;line-height:1.3;letter-spacing:-.02em;}
.ps-guide-quickstart-grid p{margin:0;color:#6a7a87;font-size:13px;line-height:1.65;}
.ps-photo-guide .ps-guide-video-section{padding:clamp(48px,6vw,78px) 0!important;background:#fff!important;}
.ps-photo-guide .ps-guide-section-head{margin-bottom:28px!important;}
.ps-photo-guide .ps-guide-section-head .eyebrow{color:#285787!important;font-weight:700!important;}
.ps-photo-guide .ps-guide-section-head .section-title{color:#102f40!important;}
.ps-photo-guide .ps-guide-section-head .section-copy{color:#687986!important;}
.ps-photo-guide .ps-guide-video-shell{max-width:1000px!important;border:1px solid #dfe8f2!important;border-radius:20px!important;background:#0f3158!important;box-shadow:0 18px 44px rgba(15,49,88,.13)!important;}
.ps-photo-guide .ps-guide-video-shell video{border-radius:15px!important;}
.ps-photo-guide .ps-guide-video-note{background:#edf5fc!important;color:#5a6f80!important;border-radius:12px!important;}
.ps-photo-guide .ps-guide-video-note strong{color:#285787!important;}
.ps-photo-guide .ps-guide-steps-section{padding:clamp(50px,6.5vw,84px) 0!important;background:#f5f8fc!important;}
.ps-photo-guide .ps-guide-steps-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;margin-top:28px!important;}
.ps-photo-guide .ps-guide-step-card{border:1px solid #e1e9f2!important;background:#fff!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;}
.ps-photo-guide .ps-guide-step-card:hover{transform:translateY(-4px)!important;border-color:#cbdceb!important;box-shadow:0 15px 32px rgba(15,49,88,.08)!important;}
.ps-photo-guide .ps-guide-step-top{margin-bottom:14px!important;}
.ps-photo-guide .ps-guide-step-number{background:linear-gradient(135deg,#285787,#3477b8)!important;}
.ps-photo-guide .ps-guide-step-card h3{color:#102f40!important;font-size:18px!important;line-height:1.28!important;}
.ps-photo-guide .ps-guide-step-card p,
.ps-photo-guide .ps-guide-step-card ul{color:#687986!important;font-size:13px!important;line-height:1.8!important;}
.ps-photo-guide .ps-guide-tip{border:1px solid #e4edf6!important;border-radius:11px!important;background:#f3f8fd!important;color:#526e86!important;font-size:12px!important;}
.ps-photo-guide .ps-guide-tip strong{color:#285787!important;}
.ps-photo-guide .ps-guide-troubleshoot{gap:14px!important;}
.ps-photo-guide .ps-guide-trouble-card{padding:22px!important;border:1px solid #e1e9f2!important;border-radius:16px!important;background:#fff!important;}
.ps-photo-guide .ps-guide-trouble-card h3{color:#102f40!important;font-size:16px!important;}
.ps-photo-guide .ps-guide-trouble-card p{color:#687986!important;line-height:1.75!important;}

/* Single blog article: magazine-style image, readable story column and useful side card. */
body.single-post .single-post-page{background:#f6f8fc!important;color:#102f40!important;}
body.single-post .single-post-page .ps-article-hero{min-height:370px!important;background-image:url("assets/images/inner-hero-memory.webp")!important;background-size:cover!important;background-position:center 48%!important;}
body.single-post .single-post-page .ps-article-hero .ps-inner-hero-content{width:min(1180px,calc(100% - 48px))!important;padding:62px 0 76px!important;}
body.single-post .single-post-page .ps-article-hero .section-title{max-width:900px!important;font-size:clamp(34px,4.7vw,60px)!important;line-height:1.05!important;letter-spacing:-.045em!important;}
body.single-post .single-post-page .ps-article-hero .section-copy{max-width:700px!important;font-size:16px!important;}
body.single-post .ps-single-post-shell{position:relative!important;padding:0 0 clamp(50px,7vw,82px)!important;background:#f6f8fc!important;}
body.single-post .single-post{width:min(1140px,calc(100% - 40px))!important;margin:0 auto!important;overflow:visible!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;}
body.single-post .single-post-image{position:relative!important;z-index:3!important;width:min(960px,calc(100% - 32px))!important;height:clamp(250px,42vw,500px)!important;margin:-54px auto 0!important;overflow:hidden!important;border:7px solid #fff!important;border-radius:23px!important;background:#e9eef5!important;box-shadow:0 22px 52px rgba(15,49,88,.14)!important;}
body.single-post .single-post-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:15px!important;}
body.single-post .single-post-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 270px!important;grid-template-areas:"story sidebar"!important;align-items:start!important;gap:26px!important;width:min(1050px,100%)!important;margin:0 auto!important;padding:38px 0 0!important;}
body.single-post .single-post-content{grid-area:story!important;min-width:0!important;padding:clamp(27px,4vw,47px)!important;border:1px solid #e1e9f2!important;border-radius:19px!important;background:#fff!important;box-shadow:0 10px 30px rgba(15,49,88,.045)!important;color:#435968!important;font-size:16px!important;line-height:1.9!important;}
body.single-post .single-post-content>*:first-child{margin-top:0!important;}
body.single-post .single-post-content p{margin:0 0 1.25em!important;color:#526777!important;}
body.single-post .single-post-content .article-lead{font-size:19px!important;line-height:1.8!important;color:#28495f!important;}
body.single-post .single-post-content h2{margin:1.7em 0 .65em!important;color:#102f40!important;font-size:clamp(25px,2.8vw,34px)!important;line-height:1.15!important;letter-spacing:-.04em!important;}
body.single-post .single-post-content h3{margin:1.5em 0 .55em!important;color:#163d56!important;font-size:21px!important;line-height:1.25!important;letter-spacing:-.025em!important;}
body.single-post .single-post-content h4{margin:1.4em 0 .5em!important;color:#163d56!important;font-size:18px!important;}
body.single-post .single-post-content ul,
body.single-post .single-post-content ol{padding-left:24px!important;margin:0 0 1.4em!important;color:#526777!important;}
body.single-post .single-post-content li+li{margin-top:7px!important;}
body.single-post .single-post-content a:not(.btn){color:var(--ps-blue)!important;text-decoration:underline!important;text-decoration-color:#b5c9dd!important;text-underline-offset:3px!important;}
body.single-post .single-post-content a:not(.btn):hover{color:var(--ps-blue)!important;text-decoration-color:var(--ps-blue)!important;}
body.single-post .single-post-content img{max-width:100%!important;height:auto!important;border-radius:14px!important;}
body.single-post .single-post-content blockquote{margin:28px 0!important;padding:22px 25px!important;border:0!important;border-left:4px solid #3477b8!important;border-radius:0 13px 13px 0!important;background:#edf5fc!important;color:#254b68!important;font-size:18px!important;line-height:1.7!important;}
body.single-post .single-post-aside{grid-area:sidebar!important;position:sticky!important;top:112px!important;}
body.single-post .article-aside-card{padding:25px!important;border:1px solid #dce7f2!important;border-radius:18px!important;background:#edf5fc!important;box-shadow:none!important;}
body.single-post .article-aside-card .eyebrow{color:#285787!important;font-size:10px!important;letter-spacing:.12em!important;font-weight:700!important;}
body.single-post .article-aside-card>strong{display:block;margin:13px 0 9px!important;color:#102f40!important;font-size:22px!important;line-height:1.18!important;letter-spacing:-.035em!important;}
body.single-post .article-aside-card p{margin:0 0 18px!important;color:#607383!important;font-size:13px!important;line-height:1.75!important;}
body.single-post .article-aside-card .text-link{color:#285787!important;font-size:13px!important;font-weight:800!important;}
body.single-post .single-post-footer{display:flex!important;justify-content:space-between!important;gap:12px!important;width:min(1050px,100%)!important;margin:22px auto 0!important;padding:0!important;}
body.single-post .ps-related-stories{background:#fff!important;padding-top:clamp(54px,7vw,80px)!important;}
body.single-post .ps-related-stories .section-title{color:#102f40!important;}
body.single-post .ps-related-stories .blog-card{height:100%;border:1px solid #e1e9f2!important;border-radius:17px!important;background:#fff!important;box-shadow:0 8px 24px rgba(15,49,88,.045)!important;overflow:hidden!important;}
body.single-post .ps-related-stories .blog-card-image{display:block;overflow:hidden;aspect-ratio:16/10!important;}
body.single-post .ps-related-stories .blog-card-image img{display:block;width:100%;height:100%;object-fit:cover;}
body.single-post .ps-related-stories .blog-card-body{padding:20px!important;}
body.single-post .ps-related-stories .blog-card-body h3{font-size:19px!important;line-height:1.3!important;color:#102f40!important;}

/* Success notice and off-canvas cart use the same button tokens. */
body .woocommerce-message a.button.wc-forward,
body .woocommerce-page .woocommerce-message a.button.wc-forward{min-height:46px!important;padding:0 20px!important;border:1px solid transparent!important;border-radius:14px!important;background:var(--ps-red)!important;color:#111!important;box-shadow:0 10px 22px rgba(232,93,73,.18)!important;}
body .woocommerce-message a.button.wc-forward:hover,
body .woocommerce-page .woocommerce-message a.button.wc-forward:hover{background:var(--ps-red)!important;border-color:var(--ps-red)!important;transform:translateY(-2px);}
.ps-cart-drawer{background:#fff!important;color:#102f40!important;}
.ps-cart-drawer-header{background:#fff!important;border-color:#e3eaf2!important;}
.ps-cart-kicker{color:#285787!important;}
.ps-cart-drawer-header h2{color:#102f40!important;}
.ps-cart-drawer-header h2 span{background:#edf5fc!important;color:#285787!important;}
.ps-cart-drawer-header p{color:#687986!important;}
.ps-cart-close{border-color:#dce6f0!important;border-radius:14px!important;color:var(--ps-blue)!important;}
.ps-cart-close:hover{background:#edf5fc!important;transform:rotate(0)!important;}
.ps-cart-drawer-content{padding:7px 26px 20px!important;}
.ps-side-cart-item{grid-template-columns:80px minmax(0,1fr) 28px!important;gap:13px!important;border-color:#e6edf4!important;padding:20px 0!important;}
.ps-side-cart-thumb{width:80px!important;height:88px!important;border-radius:14px!important;background:#f1f5f9!important;}
.ps-side-cart-product-name{color:#102f40!important;font-size:14px!important;line-height:1.45!important;font-weight:800!important;}
.ps-side-cart-meta{display:grid;gap:4px;margin:9px 0 0!important;font-size:11px!important;line-height:1.45!important;color:#6d7f8d!important;}
.ps-side-cart-meta>div{display:flex;gap:5px;flex-wrap:wrap;}
.ps-side-cart-meta dt{font-weight:800!important;color:#607587!important;}
.ps-side-cart-meta dd{margin:0!important;}
.ps-side-cart-item-bottom{align-items:center!important;gap:10px!important;margin-top:13px!important;}
.ps-side-cart-quantity{display:inline-flex;align-items:center;gap:0;min-height:32px;border:1px solid #dce6f0;border-radius:10px;background:#fff;overflow:hidden;}
.ps-side-cart-qty-step{display:grid;place-items:center;width:30px;height:30px;min-width:30px;padding:0!important;border:0!important;border-radius:0!important;background:#f3f7fb!important;color:var(--ps-blue)!important;font-size:17px!important;font-weight:700!important;line-height:1!important;box-shadow:none!important;cursor:pointer;}
.ps-side-cart-qty-step:hover{background:#e7f0f9!important;color:var(--ps-blue)!important;transform:none!important;box-shadow:none!important;}
.ps-side-cart-qty-step:disabled{opacity:.35!important;cursor:not-allowed!important;}
.ps-side-cart-qty-input{width:34px!important;height:30px!important;min-height:30px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;background:#fff!important;color:#102f40!important;text-align:center!important;font-size:12px!important;font-weight:800!important;appearance:textfield;-moz-appearance:textfield;}
.ps-side-cart-qty-input::-webkit-outer-spin-button,
.ps-side-cart-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.ps-side-cart-line-price{color:#285787!important;font-size:13px!important;white-space:nowrap!important;}
.ps-side-cart-remove{width:28px!important;height:28px!important;border:1px solid #e0e8f1!important;border-radius:9px!important;background:#fff!important;color:#637888!important;font-size:18px!important;}
.ps-side-cart-remove:hover{border-color:#cbd9e8!important;background:#edf5fc!important;color:var(--ps-blue)!important;}
.ps-side-cart-summary{padding:20px 0 5px!important;}
.ps-side-cart-subtotal{color:#102f40!important;font-size:14px!important;}
.ps-side-cart-subtotal strong{color:#102f40!important;font-size:21px!important;}
.ps-side-cart-summary>p{color:#6b7d8a!important;font-size:12px!important;}
.ps-side-cart-checkout{width:100%!important;}
.ps-side-cart-continue{color:#285787!important;font-size:13px!important;}
.ps-cart-empty-icon{background:#edf5fc!important;color:#285787!important;border-radius:20px!important;}
.ps-cart-empty-kicker{margin-top:17px;color:#285787;font-size:10px;font-weight:900;letter-spacing:.13em;}
.ps-cart-empty h3{margin-top:8px!important;color:#102f40!important;}
.ps-cart-empty p{color:#687986!important;}
.ps-cart-drawer-bottom{border-color:#e3eaf2!important;background:#f5f8fc!important;}
.ps-cart-drawer-bottom p{color:#627689!important;}
.ps-cart-drawer-bottom p span:nth-child(2){color:#285787!important;}
.ps-cart-drawer.is-updating-cart .ps-cart-drawer-content{opacity:.60;pointer-events:none;}
.ps-side-cart-item.is-updating{opacity:.55;}
.ps-cart-update-error{padding:10px 12px;border:1px solid #e5b7b7;border-radius:10px;background:#fff5f5;color:#8d3434;font-size:12px;}

@media(max-width:1000px){
  .ps-photo-guide .ps-guide-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body.single-post .single-post-layout{grid-template-columns:minmax(0,1fr) 235px!important;gap:18px!important;}
}
@media(max-width:760px){
  .ps-inner-hero,
.ps-inner-hero-contact,
.ps-inner-hero-about,
.ps-inner-hero-guide,
.ps-inner-hero-blog{min-height:285px!important;background-position:58% center!important;}
  .ps-inner-hero-content{width:calc(100% - 32px)!important;padding:43px 0!important;}
  .ps-inner-hero-content .section-title{font-size:clamp(32px,8vw,45px)!important;}
  .ps-inner-hero-content .section-copy{font-size:14px!important;}
  .ps-inner-hero-actions{gap:9px;margin-top:18px;}
  .ps-inner-hero-actions .btn{min-height:44px!important;padding:0 14px!important;font-size:12px!important;white-space:normal;}
  body .cta-box,
body .ps-cta-box{grid-template-columns:1fr!important;gap:20px!important;padding:27px!important;border-radius:19px!important;}
  body .cta-box>img{width:min(210px,70%)!important;max-height:190px!important;justify-self:start!important;}
  body .cta-box .hero-actions{gap:9px!important;}
  .ps-about-redesign .ps-about-intro-grid,
.ps-about-redesign .ps-about-process-grid{grid-template-columns:1fr!important;gap:30px!important;}
  .ps-about-redesign .ps-about-story-image>img{height:320px!important;}
  .ps-about-redesign .ps-about-value-grid{grid-template-columns:1fr!important;}
  .ps-about-redesign .ps-about-value-card{min-height:0!important;}
  .ps-guide-quickstart{padding-bottom:8px;}
  .ps-guide-quickstart-grid{grid-template-columns:1fr!important;gap:10px!important;transform:translateY(-9px);}
  .ps-guide-quickstart-grid article{padding:16px!important;}
  .ps-photo-guide .ps-guide-steps-grid,
.ps-photo-guide .ps-guide-troubleshoot{grid-template-columns:1fr!important;}
  
  body.single-post .single-post-page .ps-article-hero{min-height:320px!important;}
  body.single-post .single-post-page .ps-article-hero .ps-inner-hero-content{padding:44px 0 60px!important;}
  body.single-post .single-post{width:calc(100% - 24px)!important;}
  body.single-post .single-post-image{width:calc(100% - 10px)!important;height:250px!important;margin-top:-36px!important;border-width:5px!important;border-radius:18px!important;}
  body.single-post .single-post-layout{grid-template-columns:1fr!important;grid-template-areas:"story" "sidebar"!important;padding-top:25px!important;}
  body.single-post .single-post-content{padding:23px!important;font-size:15px!important;line-height:1.85!important;}
  body.single-post .single-post-content .article-lead{font-size:17px!important;}
  body.single-post .single-post-aside{position:static!important;}
  body.single-post .single-post-footer{flex-direction:column!important;}
  body.single-post .single-post-footer .btn{width:100%!important;}
  .ps-cart-drawer{width:min(100vw,440px)!important;}
  .ps-cart-drawer-header{padding:21px 19px 18px!important;}
  .ps-cart-drawer-content{padding:7px 18px 18px!important;}
  .ps-side-cart-item{grid-template-columns:66px minmax(0,1fr) 26px!important;gap:10px!important;}
  .ps-side-cart-thumb{width:66px!important;height:76px!important;}
  .ps-side-cart-item-bottom{align-items:flex-start!important;flex-direction:column!important;}
  .ps-cart-drawer-bottom{padding:12px 10px!important;}
}
@media(max-width:420px){
  body .btn,
body a.button,
body button.button,
body .woocommerce a.button,
body .woocommerce button.button{min-height:44px!important;padding:0 14px!important;font-size:12px!important;}
  .ps-side-cart-item{grid-template-columns:58px minmax(0,1fr) 24px!important;gap:8px!important;}
  .ps-side-cart-thumb{width:58px!important;height:66px!important;}
  .ps-side-cart-qty-step{width:27px;height:28px;min-width:27px;}
  .ps-side-cart-qty-input{width:31px!important;height:28px!important;}
}

/* Match legacy high-specificity home and product CTA rules to the shared controls above. */
body .ps-home .hero-actions .btn-primary{background:var(--ps-red)!important;border-color:var(--ps-red)!important;color:#111!important;box-shadow:0 10px 22px rgba(232,93,73,.18)!important;}
body .ps-home .hero-actions .btn-primary:hover{background:var(--ps-red)!important;border-color:var(--ps-red)!important;color:#111!important;transform:translateY(-2px)!important;box-shadow:0 14px 28px rgba(232,93,73,.23)!important;}
body .ps-home .hero-actions .btn-secondary,
body .ps-home .hero-actions .ps-hero-outline-btn{background:#fff!important;border:1px solid #fff!important;color:#0f3158!important;box-shadow:0 8px 20px rgba(0,0,0,.10)!important;}
body .ps-home .hero-actions .btn-secondary:hover,
body .ps-home .hero-actions .ps-hero-outline-btn:hover{background:var(--ps-red)!important;border-color:var(--ps-red)!important;color:#111!important;transform:translateY(-2px)!important;box-shadow:0 12px 25px rgba(232,93,73,.20)!important;}
body .ps-home .hero-actions .ps-hero-outline-btn:before{display:none!important;content:none!important;}

/* Final button consistency overrides for legacy page-specific rules. */
body .ps-inner-hero-content .ps-inner-hero-secondary:hover{background:#e85d49!important;border-color:#e85d49!important;color:#fff!important;box-shadow:0 12px 25px rgba(232,93,73,.20)!important;transform:translateY(-2px)!important;}
body .btn.btn-outline,
body .ps-review-trigger{background:#fff!important;border:1px solid #fff!important;color:var(--ps-blue)!important;box-shadow:0 8px 20px rgba(0,0,0,.10)!important;border-radius:14px!important;}
body .btn.btn-outline:hover,
body .ps-review-trigger:hover{background:var(--ps-red)!important;border-color:var(--ps-red)!important;color:#111!important;box-shadow:0 12px 25px rgba(232,93,73,.20)!important;transform:translateY(-2px)!important;}
body .ps-home .hero-actions .btn{min-height:48px!important;padding:0 21px!important;border-radius:14px!important;}

/* Same coral action across product-page CTAs and purchase controls. */

:root{--ps-action-blue-start:#174777;--ps-action-blue-mid:#2367a3;--ps-action-blue-end:#3984c4;--ps-action-coral:#ed624f;--ps-action-coral-end:#f17461;--ps-action-border:#cbd8e5;}

/* Restore the sticky header consistently on every frontend template. */
.site-header{align-self:stretch!important;}

html{scroll-padding-top:105px;}

/* Shared geometry and motion: no random lifts or shadow jumps. */
body .btn,
body a.button,
body button.button,
body input.button,
body .woocommerce #respond input#submit,
body .wp-block-button__link{position:relative!important;min-height:48px!important;padding:0 22px!important;border-width:1px!important;border-style:solid!important;border-radius:12px!important;font-family:inherit!important;font-size:13px!important;font-weight:800!important;letter-spacing:0!important;line-height:1.15!important;text-decoration:none!important;box-shadow:none!important;transform:none!important;overflow:hidden!important;isolation:isolate!important;transition:background-color .2s ease,color .2s ease,border-color .2s ease!important;-webkit-tap-highlight-color:transparent;}

/* Solid brand blue is the single primary-action style, including the home slider and footer. */
body .btn-primary,
body .site-footer .footer-actions .btn-primary,
body .woocommerce a.button,
body .woocommerce button.button,
body .woocommerce input.button,
body .woocommerce #respond input#submit,
body .wp-block-button__link,
body .ps-side-cart-checkout{color:#fff!important;background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;box-shadow:none!important;transform:none!important;}
body .btn-primary:hover,
body .btn-primary:focus-visible,
body .site-footer .footer-actions .btn-primary:hover,
body .woocommerce a.button:hover,
body .woocommerce a.button:focus-visible,
body .woocommerce button.button:hover,
body .woocommerce button.button:focus-visible,
body .woocommerce input.button:hover,
body .woocommerce #respond input#submit:hover,
body .wp-block-button__link:hover,
body .wp-block-button__link:focus-visible,
body .ps-side-cart-checkout:hover{color:#fff!important;background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;box-shadow:none!important;transform:none!important;}

/* White buttons: quiet outline at rest, coral fill on hover like the supplied reference. */

body .btn-secondary:hover,
body .btn-secondary:focus-visible,
body .btn-light:hover,
body .btn-light:focus-visible,
body .btn.btn-outline:hover,
body .btn.btn-outline:focus-visible,
body .ps-inner-hero-content .ps-inner-hero-secondary:hover,
body .ps-inner-hero-content .ps-inner-hero-secondary:focus-visible,
body .woocommerce-message a.button.wc-forward:hover,
body .woocommerce-info a.button:hover{border-color:var(--ps-action-coral)!important;}

/* Transparent buttons for dark surfaces keep the outlined look and only get a light sweep. */
body .btn-footer-ghost,
body .cta-box .btn-footer-ghost,
body .ps-cta-box .btn-footer-ghost,
body .site-footer .footer-actions .btn-footer-ghost{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);}
body .btn-footer-ghost:hover,
body .btn-footer-ghost:focus-visible,
body .cta-box .btn-footer-ghost:hover,
body .cta-box .btn-footer-ghost:focus-visible,
body .ps-cta-box .btn-footer-ghost:hover,
body .ps-cta-box .btn-footer-ghost:focus-visible,
body .site-footer .footer-actions .btn-footer-ghost:hover{border-color:rgba(255,255,255,.82)!important;}

/* One-pass shine. It plays on pointer hover or keyboard focus, then leaves the button calm. */
@keyframes ps-button-shine-v34{
  0%{transform:translateX(-180%) skewX(-22deg);opacity:0;}
  14%{opacity:.82;}
  100%{transform:translateX(500%) skewX(-22deg);opacity:0;}
}
body .btn::before{content:none!important;display:none!important;}
body .btn::after{content:""!important;display:block!important;position:absolute!important;top:-35%!important;bottom:-35%!important;left:-10%!important;width:34%!important;height:170%!important;background:transparent!important;border:0!important;border-radius:inherit!important;opacity:0!important;pointer-events:none!important;transform:translateX(-180%) skewX(-22deg)!important;transition:none!important;animation:none!important;z-index:4!important;}
body .btn:hover::after,
body .btn:focus-visible::after{animation:ps-button-shine-v34 .82s cubic-bezier(.2,.65,.3,1) 1!important;}
/* WooCommerce-native controls receive the same sweep without replacing its add-to-cart spinner. */
body .woocommerce a.button:not(.btn),
body .woocommerce button.button:not(.btn){overflow:hidden!important;isolation:isolate!important;}
body .woocommerce a.button:not(.btn)::before,
body .woocommerce button.button:not(.btn)::before{content:""!important;display:block!important;position:absolute!important;top:-35%!important;bottom:-35%!important;left:-10%!important;width:34%!important;height:170%!important;background:transparent!important;border:0!important;border-radius:inherit!important;opacity:0!important;pointer-events:none!important;transform:translateX(-180%) skewX(-22deg)!important;animation:none!important;z-index:4!important;}
body .woocommerce a.button:not(.btn):hover::before,
body .woocommerce a.button:not(.btn):focus-visible::before,
body .woocommerce button.button:not(.btn):hover::before,
body .woocommerce button.button:not(.btn):focus-visible::before{animation:ps-button-shine-v34 .82s cubic-bezier(.2,.65,.3,1) 1!important;}

/* Replace the old, low-impact CTA thumbnails with one integrated 3D studio visual. */
body .cta .cta-box.ps-cta-box,
body .cta-box.ps-cta-box,
body .ps-cta-box{display:block!important;position:relative!important;isolation:isolate!important;min-height:430px!important;padding:clamp(38px,5vw,68px)!important;border:0!important;background-color:#12395f!important;background-image:linear-gradient(90deg,rgba(14,44,76,.99) 0%,rgba(14,44,76,.97) 29%,rgba(14,44,76,.81) 48%,rgba(14,44,76,.27) 74%,rgba(14,44,76,.06) 100%),url("assets/images/cta-3d-photo-display.webp")!important;background-repeat:no-repeat,no-repeat!important;}
body .ps-cta-box>div:first-child{position:relative!important;z-index:2!important;width:min(100%,660px)!important;max-width:660px!important;}
body .ps-cta-box>img{display:none!important;}
body .ps-cta-box::before,
body .ps-cta-box::after{content:none!important;display:none!important;}
body .ps-cta-box .section-title,
body .ps-cta-box h2{color:#fff!important;max-width:660px!important;}
body .ps-cta-box .section-copy,
body .ps-cta-box p{color:rgba(255,255,255,.83)!important;max-width:600px!important;}
body .ps-cta-box .eyebrow,
body .ps-cta-box .eyebrow-light{color:#c9e1fa!important;font-weight:700!important;}
body .ps-cta-box .hero-actions{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important;margin-top:25px!important;}
body .cta,
body .ps-unified-cta{box-shadow:none!important;}
@media(max-width:760px){
  body .cta .cta-box.ps-cta-box,
body .cta-box.ps-cta-box,
body .ps-cta-box{min-height:0!important;padding:32px 24px 210px!important;background-image:linear-gradient(180deg,rgba(14,44,76,.99) 0%,rgba(14,44,76,.96) 52%,rgba(14,44,76,.65) 100%),url("assets/images/cta-3d-photo-display.webp")!important;background-repeat:no-repeat,no-repeat!important;}
  body .ps-cta-box>div:first-child{width:100%!important;max-width:none!important;}
  body .ps-cta-box .hero-actions{gap:9px!important;}
  body .ps-cta-box .hero-actions .btn{min-width:0!important;}
}
@media(prefers-reduced-motion:reduce){
  body .btn:hover::after,
body .btn:focus-visible::after,
body .woocommerce a.button:not(.btn):hover::before,
body .woocommerce a.button:not(.btn):focus-visible::before,
body .woocommerce button.button:not(.btn):hover::before,
body .woocommerce button.button:not(.btn):focus-visible::before{animation:none!important;}
}

/* Specificity bridges for legacy hero/product CTA selectors from earlier releases. */
body .ps-home .hero-actions .btn-primary,
body .ps-home .hero-actions .btn-primary:hover,
body .ps-home .hero-actions .btn-primary:focus-visible,
body .ps-cta-box .btn-primary,
body .ps-cta-box .btn-primary:hover,
body .ps-cta-box .btn-primary:focus-visible{color:#fff!important;background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;box-shadow:none!important;transform:none!important;}
body .ps-home .hero-actions .btn-secondary:hover,
body .ps-home .hero-actions .btn-secondary:focus-visible,
body .ps-home .hero-actions .ps-hero-outline-btn:hover,
body .ps-home .hero-actions .ps-hero-outline-btn:focus-visible{color:#111!important;background:var(--ps-red)!important;border-color:var(--ps-red)!important;box-shadow:none!important;transform:none!important;}
body .wp-block-button__link,
body .wp-block-button__link:hover,
body .wp-block-button__link:focus-visible{color:#fff!important;background:var(--ps-blue)!important;border:1px solid var(--ps-blue)!important;border-radius:12px!important;box-shadow:none!important;transform:none!important;}
body .wp-block-button__link{position:relative!important;overflow:hidden!important;isolation:isolate!important;}
body .wp-block-button__link::after{content:""!important;display:block!important;position:absolute!important;top:-35%!important;bottom:-35%!important;left:-10%!important;width:34%!important;height:170%!important;background:transparent!important;border:0!important;opacity:0!important;pointer-events:none!important;transform:translateX(-180%) skewX(-22deg)!important;animation:none!important;z-index:4!important;}
body .wp-block-button__link:hover::after,
body .wp-block-button__link:focus-visible::after{animation:ps-button-shine-v34 .82s cubic-bezier(.2,.65,.3,1) 1!important;}

:root{--ps-v35-blue-a:#174777;--ps-v35-blue-b:#2367a3;--ps-v35-blue-c:#3984c4;--ps-v35-coral:#ed624f;--ps-v35-coral-dark:#e85342;--ps-v35-line:#d5dfeb;--ps-v35-text:#122f42;--ps-v35-muted:#667989;}

/* Keep the actual header pinned after the announcement bar scrolls away. */
html{scroll-padding-top:104px!important;}
body{overflow-x:clip!important;}
.site-header{position:sticky!important;top:0!important;z-index:99990!important;width:100%;}
body.admin-bar .site-header{top:32px!important;}
@media(max-width:782px){body.admin-bar .site-header{top:46px!important;}}

/* Clean state model: one border color per state, with no lift or shadow flicker. */
body .btn,
body a.button,
body button.button,
body input.button,
body .woocommerce #respond input#submit,
body .wp-block-button__link,
body .fluentform-card .ff-btn-submit,
body .fluentform-card button[type="submit"],
body .fluentform-card input[type="submit"]{position:relative!important;isolation:isolate!important;overflow:hidden!important;min-height:48px!important;padding:0 22px!important;border:1px solid transparent!important;border-radius:12px!important;font-family:inherit!important;font-size:13px!important;font-weight:800!important;line-height:1.15!important;letter-spacing:0!important;text-decoration:none!important;text-shadow:none!important;box-shadow:none!important;transform:none!important;outline-offset:3px;transition:background-color .22s ease,color .22s ease,border-color .22s ease!important;-webkit-tap-highlight-color:transparent;}
body .btn:focus:not(:focus-visible),
body a.button:focus:not(:focus-visible),
body button.button:focus:not(:focus-visible){outline:none!important;}
body .btn:focus-visible,
body a.button:focus-visible,
body button.button:focus-visible{outline:2px solid rgba(35,103,163,.55)!important;outline-offset:3px!important;}

/* Primary actions use solid brand blue. */
body .btn-primary,
body .site-footer .footer-actions .btn-primary,
body .woocommerce a.button,
body .woocommerce button.button,
body .woocommerce input.button,
body .woocommerce #respond input#submit,
body .wp-block-button__link,
body .ps-side-cart-checkout,
body .fluentform-card .ff-btn-submit,
body .fluentform-card button[type="submit"],
body .fluentform-card input[type="submit"]{color:#fff!important;background:var(--ps-blue)!important;background-color:var(--ps-v35-blue-b)!important;border-color:var(--ps-blue)!important;}
body .btn-primary:hover,
body .btn-primary:focus-visible,
body .site-footer .footer-actions .btn-primary:hover,
body .woocommerce a.button:hover,
body .woocommerce a.button:focus-visible,
body .woocommerce button.button:hover,
body .woocommerce button.button:focus-visible,
body .woocommerce input.button:hover,
body .woocommerce #respond input#submit:hover,
body .wp-block-button__link:hover,
body .wp-block-button__link:focus-visible,
body .ps-side-cart-checkout:hover,
body .fluentform-card .ff-btn-submit:hover,
body .fluentform-card button[type="submit"]:hover,
body .fluentform-card input[type="submit"]:hover{color:#fff!important;background:var(--ps-blue)!important;background-color:var(--ps-v35-blue-b)!important;border-color:var(--ps-blue)!important;box-shadow:none!important;transform:none!important;}

/* White actions: smooth white-to-coral fill, with no competing outline flashes. */
body .btn-secondary,
body .btn-light,
body .btn.btn-outline,
body .ps-inner-hero-content .ps-inner-hero-secondary,
body .woocommerce-message a.button.wc-forward,
body .woocommerce-info a.button{color:var(--ps-blue)!important;background:#fff!important;background-image:none!important;border-color:#cbd8e5!important;box-shadow:none!important;transform:none!important;transition:background-color .22s ease,color .22s ease,border-color .22s ease!important;}
body .btn-secondary:hover,
body .btn-secondary:focus-visible,
body .btn-light:hover,
body .btn-light:focus-visible,
body .btn.btn-outline:hover,
body .btn.btn-outline:focus-visible,
body .ps-inner-hero-content .ps-inner-hero-secondary:hover,
body .ps-inner-hero-content .ps-inner-hero-secondary:focus-visible,
body .woocommerce-message a.button.wc-forward:hover,
body .woocommerce-info a.button:hover{color:#111!important;background:var(--ps-red)!important;background-image:none!important;border-color:var(--ps-red)!important;box-shadow:none!important;transform:none!important;}
body .btn-secondary::after,
body .btn-light::after,
body .btn.btn-outline::after,
body .ps-inner-hero-content .ps-inner-hero-secondary::after,
body .woocommerce-message a.button.wc-forward::before,
body .woocommerce-info a.button::before{animation:none!important;opacity:0!important;display:none!important;content:none!important;}

/* Transparent actions: preserve glass/outline style and animate only the shine. */
body .btn-footer-ghost,
body .cta-box .btn-footer-ghost,
body .ps-cta-box .btn-footer-ghost,
body .site-footer .footer-actions .btn-footer-ghost{color:#fff!important;background:rgba(255,255,255,.055)!important;background-image:none!important;border-color:rgba(255,255,255,.55)!important;box-shadow:none!important;transform:none!important;transition:border-color .22s ease!important;}
body .btn-footer-ghost:hover,
body .btn-footer-ghost:focus-visible,
body .cta-box .btn-footer-ghost:hover,
body .cta-box .btn-footer-ghost:focus-visible,
body .ps-cta-box .btn-footer-ghost:hover,
body .ps-cta-box .btn-footer-ghost:focus-visible,
body .site-footer .footer-actions .btn-footer-ghost:hover{color:#fff!important;background:rgba(255,255,255,.055)!important;background-image:none!important;border-color:rgba(255,255,255,.7)!important;box-shadow:none!important;transform:none!important;}
@keyframes ps-v35-shine-once{
  0%{left:-48%;opacity:0;transform:skewX(-20deg)}
  12%{opacity:.88}
  78%{opacity:.5}
  100%{left:130%;opacity:0;transform:skewX(-20deg)}
}
body .btn::after,
body .wp-block-button__link::after,
body .fluentform-card .ff-btn-submit::after,
body .fluentform-card button[type="submit"]::after,
body .fluentform-card input[type="submit"]::after,
body .woocommerce a.button:not(.btn)::before,
body .woocommerce button.button:not(.btn)::before{content:""!important;display:block!important;position:absolute!important;top:-35%!important;bottom:-35%!important;left:-48%!important;width:38%!important;height:170%!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;opacity:0!important;pointer-events:none!important;transform:skewX(-20deg)!important;animation:none!important;transition:none!important;z-index:4!important;}
body .btn-primary:hover::after,
body .btn-primary:focus-visible::after,
body .btn-footer-ghost:hover::after,
body .btn-footer-ghost:focus-visible::after,
body .ps-cta-box .btn-footer-ghost:hover::after,
body .ps-cta-box .btn-footer-ghost:focus-visible::after,
body .site-footer .footer-actions .btn-footer-ghost:hover::after,
body .wp-block-button__link:hover::after,
body .wp-block-button__link:focus-visible::after,
body .fluentform-card .ff-btn-submit:hover::after,
body .fluentform-card button[type="submit"]:hover::after,
body .fluentform-card input[type="submit"]:hover::after,
body .woocommerce a.button:not(.btn):hover::before,
body .woocommerce a.button:not(.btn):focus-visible::before,
body .woocommerce button.button:not(.btn):hover::before,
body .woocommerce button.button:not(.btn):focus-visible::before{animation:ps-v35-shine-once .78s cubic-bezier(.22,.65,.28,1) 1!important;}
body .btn-secondary:hover::after,
body .btn-secondary:focus-visible::after,
body .btn-light:hover::after,
body .btn-light:focus-visible::after,
body .btn.btn-outline:hover::after,
body .btn.btn-outline:focus-visible::after{display:none!important;animation:none!important;}
body .btn:disabled,
body .btn[disabled],
body .woocommerce button.button:disabled,
body .woocommerce button.button:disabled:hover{opacity:.48!important;cursor:not-allowed!important;transform:none!important;}

/* CTA: restore a tasteful radius, keep the 3D background and avoid heavy shadows. */
body .cta .cta-box.ps-cta-box,
body .cta-box.ps-cta-box,
body .ps-cta-box{border-radius:20px!important;box-shadow:none!important;overflow:hidden!important;background-size:100% 100%,auto 100%!important;background-position:center,right center!important;}
@media(max-width:760px){
  body .cta .cta-box.ps-cta-box,
body .cta-box.ps-cta-box,
body .ps-cta-box{border-radius:17px!important;background-size:100% 100%,auto 72%!important;background-position:center,right bottom!important;}
}

/* Photo guide: center step titles and force the step number text to white. */
.ps-photo-guide .ps-guide-step-card{padding:29px 28px 26px!important;border-radius:18px!important;box-shadow:none!important;border-color:#e0e8f1!important;}
.ps-photo-guide .ps-guide-step-top{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:13px!important;margin:0 0 19px!important;text-align:center!important;}
.ps-photo-guide .ps-guide-step-number{display:grid!important;place-items:center!important;width:54px!important;height:54px!important;flex:0 0 54px!important;border-radius:15px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;background:linear-gradient(135deg,#174777,#3984c4)!important;font-size:15px!important;font-weight:900!important;line-height:1!important;text-align:center!important;}
.ps-photo-guide .ps-guide-step-top h3,
.ps-photo-guide .ps-guide-step-card h3{width:100%!important;text-align:center!important;color:#102f40!important;}
.ps-photo-guide .ps-guide-quickstart-grid article{align-items:center!important;}
.ps-photo-guide .ps-guide-quickstart-number{color:#fff!important;-webkit-text-fill-color:#fff!important;background:linear-gradient(135deg,#174777,#3984c4)!important;text-align:center!important;}
@media(max-width:760px){.ps-photo-guide .ps-guide-step-card{padding:24px 19px!important;}.ps-photo-guide .ps-guide-step-top h3{font-size:20px!important;}}

/* Fresh editorial article page: image belongs to the hero column, never floats over the banner. */
body.single-post .ps-journal-single{background:#fff;color:var(--ps-v35-text);overflow:clip;}
.ps-journal-hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(56px,7vw,94px) 0 clamp(56px,7vw,86px);background:linear-gradient(130deg,#f5f8fc 0%,#f8fafc 52%,#f1f6fb 100%);}
.ps-journal-hero::before{content:"";position:absolute;z-index:-1;width:540px;height:540px;right:-120px;top:-210px;border-radius:50%;background:radial-gradient(circle,rgba(57,132,196,.12),rgba(57,132,196,0) 70%);pointer-events:none;}
.ps-journal-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);align-items:center;gap:clamp(34px,5vw,72px);}
.ps-journal-hero-copy{min-width:0;max-width:650px;}
.ps-journal-backlink{display:inline-flex;align-items:center;gap:9px;margin:0 0 28px;color:#356b9d!important;font-size:13px;font-weight:800;text-decoration:none!important;}
.ps-journal-backlink span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #cfdae6;border-radius:50%;background:#fff;}
.ps-journal-meta-top{display:flex;align-items:center;flex-wrap:wrap;gap:11px;color:#6b7e8d;font-size:12px;font-weight:650;}
.ps-journal-category{display:inline-flex;align-items:center;min-height:28px;padding:5px 11px;border-radius:5px;background:#e5eff9;color:#275e91;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;}
.ps-journal-hero-copy h1{max-width:680px;margin:18px 0 19px;color:#122f42;font-size:clamp(38px,4.6vw,62px);font-weight:750;line-height:1.04;letter-spacing:-.055em;text-wrap:balance;}
.ps-journal-deck{max-width:570px;margin:0;color:#617484;font-size:17px;line-height:1.8;}
.ps-journal-reading-meta{display:flex;align-items:center;gap:9px;margin-top:27px;color:#4e6476;font-size:12px;font-weight:750;}
.ps-journal-author-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#174777,#3984c4);color:#fff;font-size:15px;font-weight:900;}
.ps-journal-meta-dot{color:#aab7c2;}
.ps-journal-hero-media{position:relative;min-width:0;margin:0;padding:0 0 26px 25px;}
.ps-journal-hero-media::before{content:"";position:absolute;z-index:-1;top:-17px;right:-13px;bottom:44px;left:65px;border:1px solid #cad9e8;border-radius:20px;}
.ps-journal-hero-media img{display:block;width:100%!important;height:clamp(310px,35vw,480px)!important;max-height:none!important;object-fit:cover!important;border-radius:17px!important;box-shadow:0 19px 45px rgba(17,53,83,.13)!important;}
.ps-journal-hero-media figcaption{position:absolute;left:0;bottom:0;display:inline-flex;align-items:center;gap:9px;max-width:calc(100% - 34px);padding:13px 17px;border:1px solid #e2eaf1;border-radius:8px;background:#fff;color:#244b6c;font-size:11px;font-weight:850;letter-spacing:.04em;box-shadow:0 8px 24px rgba(20,54,82,.06);}
.ps-journal-hero-media figcaption span{color:#e76754;font-size:16px;}
.ps-journal-article-section{padding:clamp(48px,6.5vw,86px) 0 clamp(64px,7vw,100px);background:#fff;}
.ps-journal-article-grid{display:grid;grid-template-columns:minmax(0,790px) minmax(245px,310px);align-items:start;gap:clamp(32px,6vw,88px);}

.ps-journal-article-toolbar{padding-bottom:19px;margin-bottom:28px;border-bottom:1px solid #e7edf3;font-weight:650;}

.ps-journal-prose{overflow-wrap:anywhere;}
.ps-journal-prose>p:first-child,
.ps-journal-prose .ps-journal-lead{font-size:19px;}
.ps-journal-prose p{margin:0 0 1.35em;}
.ps-journal-prose h2{font-size:clamp(26px,3vw,35px);}
.ps-journal-prose h3{margin:1.55em 0 .55em;line-height:1.3;}
.ps-journal-prose h4{margin:1.4em 0 .5em;color:#183b54;font-size:18px;}
.ps-journal-prose ul,
.ps-journal-prose ol{padding-left:24px;margin:0 0 1.5em;}
.ps-journal-prose li{padding-left:4px;margin:.35em 0;}
.ps-journal-prose li::marker{color:#3984c4;}
.ps-journal-prose a{color:#2169a5;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;}
.ps-journal-prose img{display:block;max-width:100%;height:auto;margin:28px auto;border-radius:12px;}
.ps-journal-prose figure{max-width:100%;margin:30px 0;}
.ps-journal-prose figcaption{margin-top:10px;color:#7e8d99;font-size:12px;text-align:center;}
.ps-journal-prose blockquote{margin:30px 0;padding:24px 27px;border:0;border-left:4px solid #3984c4;border-radius:0 10px 10px 0;background:#f1f6fb;color:#244b6c;font-size:19px;font-weight:650;line-height:1.75;}
.ps-journal-prose table{width:100%;border-collapse:collapse;display:block;overflow-x:auto;margin:24px 0;}
.ps-journal-prose th,
.ps-journal-prose td{padding:12px 14px;border:1px solid #dce5ee;text-align:left;}
.ps-journal-post-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:42px;padding-top:25px;border-top:1px solid #e7edf3;}
.ps-journal-article-aside{position:sticky;top:112px;display:grid;gap:16px;}
.ps-journal-aside-card{padding:27px 24px 26px;border-radius:16px;background:linear-gradient(145deg,#12395f 0%,#205c91 100%);color:#fff;}
.ps-journal-aside-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:24px;border:1px solid rgba(255,255,255,.24);border-radius:12px;background:rgba(255,255,255,.08);color:#d5eaff;font-size:23px;}
.ps-journal-aside-card .eyebrow{color:#bcdcff;font-size:10px;letter-spacing:.13em;font-weight:700!important;}
.ps-journal-aside-card h2{margin:12px 0 13px;color:#fff;font-size:25px;line-height:1.22;letter-spacing:-.04em;}
.ps-journal-aside-card p{margin:0 0 22px;color:rgba(255,255,255,.8);font-size:13px;line-height:1.8;}
.ps-journal-aside-card .btn-primary{background:#fff!important;color:var(--ps-blue)!important;border-color:#fff!important;}
.ps-journal-aside-card .btn-primary:hover{background:var(--ps-red)!important;color:#111!important;border-color:var(--ps-red)!important;}
.ps-journal-aside-note{display:flex;align-items:flex-start;gap:12px;padding:18px 19px;border:1px solid #e4ebf2;border-radius:12px;background:#f7f9fc;}
.ps-journal-aside-note>span{color:#e76754;font-size:21px;line-height:1.2;}
.ps-journal-aside-note p{margin:0;color:#617484;font-size:12px;line-height:1.7;font-weight:650;}
.ps-journal-related{padding:clamp(55px,7vw,90px) 0;background:#f5f8fb;border-top:1px solid #e8eef4;}
.ps-journal-related-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:29px;}
.ps-journal-related-heading h2{margin:8px 0 8px;color:#122f42;font-size:clamp(29px,3.5vw,42px);line-height:1.12;letter-spacing:-.045em;}
.ps-journal-related-heading p{margin:0;color:#6a7c8a;font-size:14px;}
.ps-journal-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.ps-journal-related-card{overflow:hidden;border:1px solid #e0e8f0;border-radius:13px;background:#fff;}
.ps-journal-related-image{display:block;overflow:hidden;background:#e8eef4;aspect-ratio:1.55;}
.ps-journal-related-image img{display:block;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .45s cubic-bezier(.2,.65,.3,1)!important;}
.ps-journal-related-card:hover .ps-journal-related-image img{transform:scale(1.035)!important;}
.ps-journal-related-body{padding:21px 21px 23px;}
.ps-journal-related-body>span{color:#7b8b99;font-size:11px;font-weight:650;}
.ps-journal-related-body h3{margin:9px 0 9px;color:#163b53;font-size:19px;line-height:1.35;letter-spacing:-.025em;}
.ps-journal-related-body h3 a{color:inherit;text-decoration:none;}
.ps-journal-related-body p{margin:0 0 17px;color:#687c8a;font-size:13px;line-height:1.7;}
.ps-journal-read-more{display:inline-flex;gap:9px;align-items:center;color:#2367a3;font-size:12px;font-weight:900;text-decoration:none;}
.ps-journal-read-more span{transition:transform .2s ease;}
.ps-journal-read-more:hover span{transform:translateX(4px);}
@media(max-width:980px){
  .ps-journal-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.86fr);gap:28px;}
  .ps-journal-article-grid{grid-template-columns:minmax(0,1fr) 260px;gap:28px;}
  .ps-journal-aside-card{padding:22px 19px;}
  .ps-journal-related-grid{gap:15px;}
}
@media(max-width:760px){
  .ps-journal-hero{padding:44px 0 38px;}
  .ps-journal-hero-grid{grid-template-columns:1fr;gap:26px;}
  .ps-journal-backlink{margin-bottom:20px;}
  .ps-journal-hero-copy h1{font-size:clamp(35px,9.5vw,48px);}
  .ps-journal-deck{font-size:15px;line-height:1.75;}
  .ps-journal-hero-media{padding:0 0 22px 14px;}
  .ps-journal-hero-media::before{top:-9px;right:-4px;bottom:36px;left:34px;border-radius:13px;}
  .ps-journal-hero-media img{height:clamp(230px,65vw,360px)!important;border-radius:12px!important;}
  .ps-journal-hero-media figcaption{left:0;max-width:calc(100% - 14px);padding:10px 12px;font-size:10px;}
  .ps-journal-article-section{padding:40px 0 58px;}
  .ps-journal-article-grid{grid-template-columns:1fr;gap:28px;}
  .ps-journal-article-toolbar{align-items:flex-start;flex-direction:column;gap:7px;margin-bottom:22px;}
  .ps-journal-prose{font-size:15px;line-height:1.85;width:100%!important;max-width:none!important;box-sizing:border-box!important;}
  .ps-journal-prose>p:first-child,
.ps-journal-prose .ps-journal-lead{font-size:17px;}
  .ps-journal-prose blockquote{padding:18px;font-size:17px;}
  .ps-journal-post-navigation{flex-direction:column;align-items:stretch;}
  .ps-journal-post-navigation .btn{width:100%;}
  .ps-journal-article-aside{position:static;grid-template-columns:1fr;}
  .ps-journal-related-heading{align-items:flex-start;flex-direction:column;}
  .ps-journal-related-grid{grid-template-columns:1fr;gap:16px;}
  .ps-journal-related-card{display:grid;grid-template-columns:minmax(105px,.8fr) minmax(0,1.2fr);}
  .ps-journal-related-image{height:100%;min-height:180px;aspect-ratio:auto;}
  .ps-journal-related-body{padding:15px;}
  .ps-journal-related-body h3{font-size:16px;}
  .ps-journal-related-body p{font-size:12px;}
}
@media(max-width:430px){.ps-journal-related-card{grid-template-columns:1fr;}.ps-journal-related-image{height:auto;aspect-ratio:1.6;min-height:0;}}

/* Contact page: designed help hub with contact paths and a clear form panel. */
.ps-contact-modern-page{background:#fff;color:#102f40;overflow:clip;}
.ps-contact-modern-hero{min-height:430px!important;display:flex;align-items:center;}
.ps-contact-modern-hero .ps-inner-hero-content{padding-top:66px!important;padding-bottom:64px!important;}
.ps-contact-modern-hero .section-title{max-width:740px!important;font-size:clamp(37px,5vw,61px)!important;line-height:1.04!important;letter-spacing:-.05em!important;text-wrap:balance;}
.ps-contact-modern-hero .section-copy{max-width:650px!important;font-size:16px!important;line-height:1.8!important;}
.ps-contact-modern-hero .eyebrow{color:#d5e9ff!important;font-weight:700!important;}
.ps-contact-modern-hero .ps-inner-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px;}
.ps-contact-hero-trust{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px;color:rgba(255,255,255,.86);font-size:11px;font-weight:750;}
.ps-contact-hero-trust span{display:inline-flex;align-items:center;gap:7px;}
.ps-contact-hero-trust i{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:10px;font-style:normal;}
.ps-contact-methods{position:relative;z-index:2;padding:0 0 20px;background:#fff;}
.ps-contact-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;transform:translateY(-17px);}
.ps-contact-method{display:flex;align-items:center;gap:14px;min-width:0;min-height:115px;padding:21px 18px;border:1px solid #e2eaf2;border-radius:14px;background:#fff;text-decoration:none;color:inherit;}
a.ps-contact-method{transition:border-color .2s ease,background-color .2s ease!important;}
a.ps-contact-method:hover{border-color:#9dbbd7;background:#f9fbfe;}
.ps-contact-method-icon{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border-radius:11px;background:#eaf3fb;color:#2367a3;font-size:20px;font-weight:850;}
.ps-contact-method-content{display:flex;flex-direction:column;gap:4px;min-width:0;}
.ps-contact-method-content small{color:#6d8395;font-size:9px;letter-spacing:.13em;font-weight:900;}
.ps-contact-method-content strong{color:#173c56;font-size:13px;line-height:1.45;overflow-wrap:anywhere;}
.ps-contact-method-content>span{color:#788998;font-size:11px;line-height:1.5;}
.ps-contact-method-arrow{margin-left:auto;color:var(--ps-blue);font-size:18px;}
.ps-contact-main-section{padding:55px 0 clamp(65px,8vw,105px);background:linear-gradient(180deg,#f7f9fc 0%,#fff 100%);}
.ps-contact-main-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start;gap:clamp(28px,5vw,72px);}
.ps-contact-intro-panel{min-width:0;padding:15px 0 0;}
.ps-contact-intro-panel>.eyebrow,
.ps-contact-form-heading .eyebrow{font-size:10px;letter-spacing:.15em;font-weight:700!important;}
.ps-contact-intro-panel h2{max-width:520px;margin:12px 0 15px;color:#102f40;font-size:clamp(30px,3.6vw,44px);line-height:1.12;letter-spacing:-.045em;}
.ps-contact-intro-panel>p{max-width:510px;margin:0;color:#657989;font-size:14px;line-height:1.85;}
.ps-contact-promise-list{display:grid;gap:19px;margin-top:29px;}
.ps-contact-promise-list>div{display:flex;align-items:flex-start;gap:13px;}
.ps-contact-promise-list>div>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #d4e3f0;border-radius:9px;background:#fff;color:#2b6ba4;font-size:10px;font-weight:900;}
.ps-contact-promise-list p{display:grid;gap:4px;margin:0;}
.ps-contact-promise-list strong{color:#24465e;font-size:13px;line-height:1.45;}
.ps-contact-promise-list small{color:#748796;font-size:12px;line-height:1.65;}
.ps-contact-visual{position:relative;overflow:hidden;margin-top:31px;min-height:170px;border-radius:15px;background:#12395f;}
.ps-contact-visual img{display:block;width:100%;height:190px;object-fit:cover;object-position:right center;opacity:.95;}
.ps-contact-visual-label{position:absolute;left:15px;bottom:14px;padding:9px 12px;border:1px solid rgba(255,255,255,.35);border-radius:7px;background:rgba(13,42,70,.68);color:#fff;font-size:10px;font-weight:850;letter-spacing:.04em;backdrop-filter:blur(6px);}
.ps-contact-form-panel{min-width:0;padding:clamp(24px,4vw,42px);border:1px solid #e2eaf2;border-radius:17px;background:#fff;box-shadow:0 12px 35px rgba(16,47,64,.045);}
.ps-contact-form-heading{margin-bottom:22px;}
.ps-contact-form-heading h2{margin:9px 0 8px;color:#102f40;font-size:clamp(27px,3vw,34px);line-height:1.15;letter-spacing:-.04em;}
.ps-contact-form-heading p{margin:0;color:#708392;font-size:13px;line-height:1.7;}
.ps-contact-form-panel .form-card{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;}
.ps-contact-form-panel .fluentform-card .ff-el-form-label,
.ps-contact-form-panel .fluentform-card .ff-el-input--label label{color:#24445c!important;font-size:12px!important;}
.ps-contact-form-panel .fluentform-card input:not([type="checkbox"]):not([type="radio"]),
.ps-contact-form-panel .fluentform-card textarea,
.ps-contact-form-panel .fluentform-card select,
.ps-contact-form-panel .fluentform-card .ff-el-form-control{border:1px solid #d9e3ec!important;border-radius:8px!important;background:#fbfcfe!important;box-shadow:none!important;}
.ps-contact-form-panel .fluentform-card input:focus,
.ps-contact-form-panel .fluentform-card textarea:focus,
.ps-contact-form-panel .fluentform-card select:focus{border-color:#6d9cc6!important;box-shadow:0 0 0 3px rgba(35,103,163,.1)!important;}
.ps-contact-privacy-note{display:flex;align-items:flex-start;gap:8px;margin:19px 0 0;color:#7c8d9a;font-size:10px;line-height:1.65;}
.ps-contact-privacy-note span{color:#3978ae;}
.ps-contact-bottom-cta{padding:0 0 clamp(60px,7vw,90px);background:#fff;}
.ps-contact-bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:clamp(28px,4vw,43px);border-radius:19px;background:#f0f6fc;}
.ps-contact-bottom-inner h2{margin:7px 0 8px;color:#12384f;font-size:clamp(23px,3vw,34px);line-height:1.15;letter-spacing:-.04em;}
.ps-contact-bottom-inner p{margin:0;color:#62798b;font-size:13px;line-height:1.7;}
@media(max-width:900px){.ps-contact-method-grid{grid-template-columns:1fr;transform:translateY(-10px);}.ps-contact-method{min-height:0;padding:17px 19px;}.ps-contact-main-grid{grid-template-columns:1fr;gap:34px;}.ps-contact-intro-panel{padding-top:0;}.ps-contact-visual{max-width:570px;}}
@media(max-width:600px){.ps-contact-modern-hero{min-height:0!important;}.ps-contact-modern-hero .ps-inner-hero-content{padding:54px 0 72px!important;}.ps-contact-hero-trust{gap:10px 13px;}.ps-contact-method-grid{gap:9px;}.ps-contact-main-section{padding-top:36px;}.ps-contact-form-panel{padding:23px 18px;border-radius:13px;}.ps-contact-bottom-inner{align-items:flex-start;flex-direction:column;padding:25px 21px;border-radius:15px;}.ps-contact-bottom-inner .btn{width:100%;}.ps-contact-visual img{height:155px;}}
@media(prefers-reduced-motion:reduce){body .btn::after,
body .woocommerce a.button:not(.btn)::before,
body .woocommerce button.button:not(.btn)::before{animation:none!important;}}

/* PrintStrokes 3.6.0 — product personalization, sharing and custom cart previews. */
.ps-product-card-share{position:absolute!important;right:62px!important;top:13px!important;width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;display:grid!important;place-items:center!important;z-index:9!important;border:1px solid rgba(14,51,71,.10)!important;border-radius:50%!important;background:rgba(255,255,255,.96)!important;color:var(--ps-blue-3,#0f3158)!important;line-height:1!important;cursor:pointer!important;transition:background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease!important;}
.ps-product-card-share:hover,
.ps-product-card-share:focus-visible{background:linear-gradient(135deg,#0f3158,#3477b8)!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 12px 26px rgba(15,49,88,.22)!important;outline:none!important;}
.ps-product-card-wishlist{right:13px!important;}
.ps-product-card-share:focus-visible,
.ps-product-card-wishlist:focus-visible{outline:3px solid rgba(40,87,135,.30)!important;outline-offset:3px!important;}
.ps-product-image-wrap,
.ps-wishlist-card-image-wrap{position:relative!important;}
.ps-wishlist-card-image-wrap .ps-product-card-share{top:12px!important;right:62px!important;}
.ps-wishlist-card-image-wrap .ps-product-card-wishlist{top:12px!important;right:12px!important;}
.ps-theme-toast{z-index:100000!important;}
.ps-side-cart-edit-hint{display:block!important;margin-top:5px!important;color:#778797!important;font-size:11px!important;line-height:1.45!important;}
.ps-side-cart-edit-hint a{color:#285787!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:3px!important;}
.ps-side-cart-thumb .cppd-cart-design-thumbnail{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}

/* A more considered product detail page: elegant gallery, clear buying column and helpful process content. */

/* Custom design previews must show the complete composition, never a square crop. */
.ps-side-cart-thumb img.cppd-cart-design-thumbnail,
.woocommerce-cart img.cppd-cart-design-thumbnail,
.woocommerce-checkout img.cppd-cart-design-thumbnail,
.widget_shopping_cart img.cppd-cart-design-thumbnail{object-fit:contain!important;background:#f7f9fc!important;}
.ps-side-cart-thumb img.cppd-cart-design-thumbnail{padding:4px!important;}

/* Clear, restrained banner when a cart design is reopened for editing. */
.cppd-editing-saved-design-notice{display:flex!important;flex-direction:column!important;gap:3px!important;padding:12px 14px!important;margin:0 0 14px!important;border-left:3px solid #285787!important;background:#eff6fc!important;color:#173b55!important;font-size:12px!important;line-height:1.55!important;}
.cppd-editing-saved-design-notice strong{font-weight:800!important;}
.cppd-editing-saved-design-notice span{color:#68798c!important;}
.ps-wishlist-view-product{display:inline-flex;align-items:center;gap:7px;color:var(--ps-blue);font-size:12px;font-weight:800;text-decoration:none;}
.ps-wishlist-view-product:hover{color:var(--ps-red);}

/* Legacy pseudo-element shine rules removed; the child overlay below is the single active animation system. */

body .ps-shine-host{position:relative!important;isolation:isolate!important;overflow:hidden!important;-webkit-mask-image:none;}
body .ps-shine-overlay{position:absolute!important;top:-35%!important;left:0!important;width:42%!important;height:170%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;opacity:0;pointer-events:none!important;z-index:20!important;transform:translateX(-190%) skewX(-22deg);transform-origin:center;will-change:transform, opacity;animation:none!important;}
/* Final duration and opacity are defined in the following v3.6.3 polish block. */
/* Turn off the old pseudo-element sweeps; the real overlay above replaces them. */
body a.btn-primary::after,
body button.btn-primary::after,
body .btn.btn-primary::after,
body .btn-footer-ghost::after,
body .cta-box .btn-footer-ghost::after,
body .ps-cta-box .btn-footer-ghost::after,
body .site-footer .footer-actions .btn-footer-ghost::after,
body .woocommerce a.button.alt::before,
body .woocommerce button.button.alt::before{animation:none!important;opacity:0!important;display:none!important;content:none!important;}
@media (prefers-reduced-motion: reduce) {
  body .ps-shine-overlay.ps-shine-run{animation-duration:.01ms!important;}
}

/* A slower, softer single-pass shine. JS still restarts this on pointer entry. */
@keyframes ps-v362-shine-sweep {
  0%   { transform: translateX(-190%) skewX(-22deg); opacity: 0; }
  16%  { opacity: .40; }
  58%  { opacity: .34; }
  100% { transform: translateX(410%) skewX(-22deg); opacity: 0; }
}
body .ps-shine-overlay{background:transparent!important;}
body .ps-shine-overlay.ps-shine-run{animation:ps-v362-shine-sweep 1.38s cubic-bezier(.20,.62,.28,1) 1 both!important;}

/* The same system explicitly includes all three home-slider primary actions. */
body .ps-home-hero .hero-actions > a.btn-primary,
body .ps-home .ps-hero-slider .hero-actions > .btn.btn-primary,
body .ps-hero-slider .hero-actions > .btn-primary{position:relative!important;isolation:isolate!important;overflow:hidden!important;}

/* Product-card share is quiet until the product card is hovered/focused. */
.ps-product-image-wrap .ps-product-card-share,
.ps-wishlist-card-image-wrap .ps-product-card-share,
.woocommerce ul.products li.product .ps-product-card-share{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-5px) scale(.96)!important;box-shadow:none!important;transition:opacity .18s ease, visibility .18s ease, transform .18s ease,
              background .2s ease, color .2s ease!important;}
.ps-product-image-wrap:hover .ps-product-card-share,
.ps-product-image-wrap:focus-within .ps-product-card-share,
.ps-wishlist-card-image-wrap:hover .ps-product-card-share,
.ps-wishlist-card-image-wrap:focus-within .ps-product-card-share,
.woocommerce ul.products li.product:hover .ps-product-card-share,
.woocommerce ul.products li.product:focus-within .ps-product-card-share,
.ps-product-card-share:focus-visible,
.ps-product-card-share.is-sharing{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0) scale(1)!important;}
.ps-product-card-share{box-shadow:none!important;font-size:0!important;}
@media (hover: none), (max-width: 760px) {
  .ps-product-image-wrap .ps-product-card-share,
.ps-wishlist-card-image-wrap .ps-product-card-share,
.woocommerce ul.products li.product .ps-product-card-share{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;}
}

/* Blog pages: avoid overflow:hidden creating a scroll container that breaks sticky. */
html{scroll-padding-top:108px!important;}
body.single-post{overflow-x:clip!important;overflow-y:visible!important;}
body.single-post .site-header{position:sticky!important;top:0!important;z-index:99990!important;width:100vw!important;max-width:100vw!important;margin-top:0!important;transform:none!important;}
body.single-post.admin-bar .site-header,
body.admin-bar.single-post .site-header{top:32px!important;}
@media (max-width: 782px) {
  body.admin-bar.single-post .site-header{top:46px!important;}
}

/* Reusable editorial extension shown on every post, after the author's content. */
.ps-journal-practical-guide{margin:42px 0 0!important;padding:clamp(24px, 3.8vw, 38px)!important;border:1px solid #e2eaf2!important;border-radius:18px!important;background:linear-gradient(145deg, #f7faff 0%, #fff 100%)!important;}
.ps-journal-practical-heading{max-width:620px!important;margin:0 0 24px!important;}
.ps-journal-practical-heading .eyebrow{color:#3477b8!important;font-size:10px!important;letter-spacing:.14em!important;font-weight:700!important;}
.ps-journal-practical-heading h2{margin:9px 0 10px!important;color:#122f42!important;font-size:clamp(25px, 3vw, 34px)!important;line-height:1.16!important;letter-spacing:-.04em!important;}
.ps-journal-practical-heading p{margin:0!important;color:#627789!important;font-size:14px!important;line-height:1.8!important;}
.ps-journal-practical-grid{display:grid!important;grid-template-columns:repeat(3, minmax(0, 1fr))!important;gap:13px!important;}
.ps-journal-practical-card{min-width:0!important;padding:19px 17px!important;border:1px solid #e4ebf3!important;border-radius:12px!important;background:#fff!important;}
.ps-journal-practical-number{display:grid!important;place-items:center!important;width:34px!important;height:34px!important;margin-bottom:14px!important;border-radius:10px!important;background:#eaf3fb!important;color:#2367a3!important;font-size:11px!important;font-weight:900!important;}
.ps-journal-practical-card h3{margin:0 0 8px!important;color:#173b55!important;font-size:15px!important;line-height:1.35!important;}
.ps-journal-practical-card p{margin:0!important;color:#6a7d8c!important;font-size:12px!important;line-height:1.75!important;}
.ps-journal-practical-checklist{margin:22px 0 0!important;padding:18px 20px!important;border-radius:11px!important;background:#edf5fc!important;}
.ps-journal-practical-checklist h3{margin:0 0 10px!important;color:#173b55!important;font-size:14px!important;}
.ps-journal-practical-checklist ul{display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:8px 20px!important;list-style:none!important;margin:0!important;padding:0!important;}
.ps-journal-practical-checklist li{position:relative!important;margin:0!important;padding:0 0 0 22px!important;color:#506b7e!important;font-size:12px!important;line-height:1.7!important;}
.ps-journal-practical-checklist li::before{content:"✓"!important;position:absolute!important;left:0!important;top:0!important;color:#2367a3!important;font-weight:900!important;}
@media (max-width: 760px) {
  .ps-journal-practical-guide{margin-top:30px!important;padding:22px 17px!important;}
  .ps-journal-practical-grid{grid-template-columns:1fr!important;}
  .ps-journal-practical-card{padding:17px!important;}
  .ps-journal-practical-checklist ul{grid-template-columns:1fr!important;}
}

/* More intentional WooCommerce My Account > Addresses / Edit address forms. */
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content{min-width:0!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content > h2,
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content > h3{margin:0 0 18px!important;color:#123653!important;font-size:clamp(25px, 3vw, 33px)!important;line-height:1.2!important;letter-spacing:-.04em!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses{display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:16px!important;margin:0 0 27px!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address{min-width:0!important;padding:22px!important;border:1px solid #e0e9f1!important;border-radius:15px!important;background:linear-gradient(145deg, #fff, #f8fbfe)!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Address-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0 0 14px!important;padding:0 0 12px!important;border-bottom:1px solid #e6edf3!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Address-title h3{margin:0!important;color:#173b55!important;font-size:17px!important;letter-spacing:-.02em!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Address-title .edit{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;padding:0 12px!important;border:1px solid #d5e4f1!important;border-radius:8px!important;background:#edf5fc!important;color:#245e91!important;font-size:11px!important;font-weight:850!important;text-decoration:none!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields > h3{margin:0 0 20px!important;color:#123653!important;font-size:25px!important;letter-spacing:-.035em!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row label{display:block!important;margin:0 0 7px!important;color:#405a70!important;font-size:12px!important;font-weight:800!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .input-text,
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields select,
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .select2-container--default .select2-selection--single{width:100%!important;min-height:48px!important;border:1px solid #d5e1eb!important;border-radius:10px!important;background:#fbfdff!important;color:#193e59!important;box-shadow:none!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:46px!important;padding-left:13px!important;color:#193e59!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .select2-container--default .select2-selection--single .select2-selection__arrow{height:46px!important;right:8px!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row{margin-bottom:17px!important;}
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .button{min-height:48px!important;margin-top:7px!important;padding:0 24px!important;border-radius:10px!important;background:var(--ps-blue)!important;color:#fff!important;font-weight:850!important;}
@media (max-width: 680px) {
  body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses{grid-template-columns:1fr!important;}
  body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-first,
body.woocommerce-edit-address .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-address-fields .form-row-last{width:100%!important;margin-right:0!important;}
}

.ps-home-hero .ps-hero-copy > .eyebrow,
.ps-home .ps-hero-slider .ps-hero-copy > .eyebrow{backdrop-filter:none!important;}
/* Remove the hero's old sliding colour panel: the same real shine overlay as all buttons handles hover. */
.ps-home-hero .hero-actions > .btn,
.ps-home .ps-hero-slider .hero-actions > .btn{transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease,border-color .24s ease,color .24s ease!important;}
.ps-home-hero .hero-actions > .btn::before,
.ps-home-hero .hero-actions > .btn::after,
.ps-home .ps-hero-slider .hero-actions > .btn::before,
.ps-home .ps-hero-slider .hero-actions > .btn::after{background:none!important;}
.ps-home-hero .hero-actions > .btn-primary,
.ps-home .ps-hero-slider .hero-actions > .btn-primary{border:1px solid var(--ps-blue)!important;}
.ps-home-hero .hero-actions > .btn-primary:hover,
.ps-home-hero .hero-actions > .btn-primary:focus-visible,
.ps-home .ps-hero-slider .hero-actions > .btn-primary:hover,
.ps-home .ps-hero-slider .hero-actions > .btn-primary:focus-visible{box-shadow:0 13px 30px rgba(23,71,119,.26)!important;}
.ps-home-hero .hero-actions > .ps-hero-outline-btn,
.ps-home .ps-hero-slider .hero-actions > .ps-hero-outline-btn{background:rgba(255,255,255,.96)!important;border:1px solid rgba(255,255,255,.96)!important;}
.ps-home-hero .hero-actions > .ps-hero-outline-btn:hover,
.ps-home-hero .hero-actions > .ps-hero-outline-btn:focus-visible,
.ps-home .ps-hero-slider .hero-actions > .ps-hero-outline-btn:hover,
.ps-home .ps-hero-slider .hero-actions > .ps-hero-outline-btn:focus-visible{box-shadow:0 13px 28px rgba(232,93,73,.24)!important;}
/* Sharing dialog uses Font Awesome platform icons and the current product URL. */
.ps-product-share-backdrop{position:fixed!important;inset:0!important;z-index:100100!important;background:rgba(10,29,43,.56)!important;backdrop-filter:blur(5px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease;}
.ps-product-share-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.ps-product-share-dialog{position:fixed!important;z-index:100101!important;left:50%!important;top:50%!important;width:min(470px,calc(100vw - 28px))!important;max-height:calc(100dvh - 32px)!important;overflow:auto!important;padding:30px!important;border:1px solid #dbe5ef!important;border-radius:22px!important;background:#fff!important;color:#173b54!important;box-shadow:0 28px 90px rgba(7,32,52,.3)!important;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-47%) scale(.98);transition:opacity .22s ease,visibility .22s ease,transform .22s cubic-bezier(.2,.7,.2,1);}
.ps-product-share-dialog.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,-50%) scale(1);}
.ps-product-share-close{position:absolute!important;right:17px!important;top:17px!important;display:grid!important;place-items:center!important;width:36px!important;height:36px!important;padding:0!important;border:1px solid #dce5ed!important;border-radius:50%!important;background:#f8fbfe!important;color:var(--ps-blue)!important;font-size:24px!important;line-height:1!important;cursor:pointer!important;}
.ps-product-share-close:hover{background:#edf5fc!important;border-color:#b8d2e8!important;}
.ps-product-share-kicker{display:block;margin:0 40px 8px 0;color:#3979af!important;font-size:10px!important;font-weight:900!important;letter-spacing:.18em!important;}
.ps-product-share-dialog h2{margin:0 38px 8px 0!important;color:#12344d!important;font-size:clamp(23px,4vw,29px)!important;line-height:1.15!important;letter-spacing:-.035em!important;overflow-wrap:anywhere;}
.ps-product-share-description{margin:0 0 21px!important;color:#6b7e8d!important;font-size:13px!important;line-height:1.65!important;}
.ps-product-share-options{display:grid;gap:9px;}
.ps-product-share-option{display:flex!important;align-items:center!important;gap:13px!important;width:100%!important;min-height:65px!important;margin:0!important;padding:10px 13px!important;border:1px solid #e0e8ef!important;border-radius:13px!important;background:#fff!important;color:#183d55!important;text-align:left!important;text-decoration:none!important;cursor:pointer!important;box-shadow:none!important;}
.ps-product-share-option:hover,
.ps-product-share-option:focus-visible{border-color:#9fc5e5!important;background:#f5faff!important;color:#183d55!important;transform:translateY(-1px);}
.ps-product-share-option-icon{display:grid!important;place-items:center!important;flex:0 0 40px!important;width:40px!important;height:40px!important;border-radius:11px!important;background:#eef5fb!important;color:#28669b!important;font-size:22px!important;font-weight:900!important;}
.ps-product-share-option-icon svg{display:block;width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

.ps-facebook-mark{font-family:var(--ps-font-body)!important;font-size:29px!important;line-height:1!important;}
.ps-product-share-option>span:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column;gap:3px;}
.ps-product-share-option strong{display:block;color:inherit!important;font-size:13px!important;font-weight:850!important;line-height:1.25!important;}
.ps-product-share-option small{display:block;color:#7b8b98!important;font-size:11px!important;font-weight:500!important;line-height:1.35!important;}
.ps-product-share-chevron{margin-left:auto;color:#8395a3!important;font-size:17px!important;}
.ps-product-share-url{overflow:hidden;margin:17px 0 0!important;padding:10px 12px!important;border:1px solid #edf1f5!important;border-radius:9px!important;background:#f8fafc!important;color:#7a8b98!important;font-size:10px!important;line-height:1.5!important;text-overflow:ellipsis;white-space:nowrap;}
html.ps-product-share-open,
html.ps-product-share-open body{overflow:hidden!important;}
/* Rework THE STORY as an intentional editorial panel and make short posts feel composed, not empty. */
.ps-journal-article-content{padding:0!important;min-width:0!important;}
.ps-journal-article-toolbar{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:12px!important;margin:0 0 21px!important;padding:21px 24px!important;border:1px solid #dce8f3!important;border-radius:15px!important;background:linear-gradient(120deg,#eef6fd 0%,#f8fbff 68%,#fff 100%)!important;color:#647d91!important;font-size:12px!important;line-height:1.5!important;}
.ps-journal-article-label{display:inline-flex!important;align-items:center!important;gap:9px!important;color:#245f94!important;font-size:10px!important;font-weight:950!important;letter-spacing:.16em!important;}
.ps-journal-article-label::before{content:"";display:inline-block;width:24px;height:3px;border-radius:3px;background:linear-gradient(90deg,#174777,#61a7df);}
.ps-journal-prose{position:relative!important;padding:clamp(24px,4.2vw,46px)!important;border:1px solid #e5edf4!important;border-radius:18px!important;background:#fff!important;color:#536a7b!important;font-size:16px!important;line-height:1.9!important;box-shadow:0 13px 36px rgba(24,61,85,.045)!important;counter-reset:ps-story-heading;width:100%!important;max-width:none!important;box-sizing:border-box!important;}
.ps-journal-prose>p:first-child,
.ps-journal-prose .ps-journal-lead{position:relative!important;margin:0 0 29px!important;padding:21px 23px 21px 26px!important;border-left:4px solid #3984c4!important;border-radius:0 12px 12px 0!important;background:linear-gradient(110deg,#eff6fc,#f9fbfd)!important;color:#294b65!important;font-size:clamp(17px,1.7vw,20px)!important;font-weight:550!important;line-height:1.8!important;}
.ps-journal-prose h2{display:flex!important;align-items:flex-start!important;gap:13px!important;margin:32px 0 12px!important;padding:0 0 13px!important;border-bottom:1px solid #e5edf3!important;color:#153a55!important;font-size:clamp(23px,2.5vw,30px)!important;font-weight:850!important;line-height:1.2!important;letter-spacing:-.035em!important;counter-increment:ps-story-heading;}
.ps-journal-prose h2::before{content:counter(ps-story-heading,decimal-leading-zero)!important;display:inline-grid!important;place-items:center!important;flex:0 0 36px!important;width:36px!important;height:36px!important;margin-top:-2px!important;border:1px solid #cee2f2!important;border-radius:10px!important;background:#edf6fd!important;color:#28689f!important;font-size:10px!important;font-weight:950!important;letter-spacing:.04em!important;}
.ps-journal-prose h2+p{margin-top:0!important;color:#5a7080!important;}
.ps-journal-prose h3{margin-top:26px!important;color:#1a4766!important;font-size:20px!important;font-weight:850!important;}
.ps-journal-article-toolbar+.ps-journal-prose{margin-top:0!important;}
@media(max-width:680px){
 .ps-product-share-dialog{padding:24px 18px!important;border-radius:17px!important;}
 .ps-product-share-option{min-height:60px!important;padding:9px 10px!important;}
 .ps-journal-article-toolbar{align-items:flex-start!important;flex-direction:column!important;padding:18px!important;}
 .ps-journal-prose{padding:22px 17px!important;font-size:15px!important;line-height:1.85!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;}
 .ps-journal-prose>p:first-child,
.ps-journal-prose .ps-journal-lead{padding:17px!important;font-size:17px!important;}
 .ps-journal-prose h2{gap:10px!important;font-size:23px!important;}
 .ps-journal-prose h2::before{flex-basis:31px!important;width:31px!important;height:31px!important;}
}
@media(prefers-reduced-motion:reduce){
 .ps-product-share-backdrop,
.ps-product-share-dialog,
.ps-product-share-option{transition:none!important;}
}
/* The hero previously assigned relative positioning to every nested span; keep the shine layer absolutely positioned above hero-button text. */
.ps-home-hero .hero-actions .btn > .ps-shine-overlay,
.ps-home .ps-hero-slider .hero-actions .btn > .ps-shine-overlay{position:absolute!important;display:block!important;top:-35%!important;left:0!important;width:42%!important;height:170%!important;margin:0!important;padding:0!important;pointer-events:none!important;z-index:30!important;}

/* WooCommerce adds clearfix pseudo-elements to .col2-set. In a CSS grid these
   become extra grid children and can force Billing/Shipping into diagonal rows. */
body.woocommerce-account .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
.woocommerce-account-wrapper.is-endpoint .woocommerce-Addresses.col2-set.addresses{display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;align-items:stretch!important;gap:18px!important;width:100%!important;max-width:100%!important;float:none!important;margin:0 0 24px!important;padding:0!important;clear:none!important;}
body.woocommerce-account .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set::before,
body.woocommerce-account .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set::after,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set::after,
.woocommerce-account-wrapper.is-endpoint .woocommerce-Addresses.col2-set.addresses::before,
.woocommerce-account-wrapper.is-endpoint .woocommerce-Addresses.col2-set.addresses::after{content:none!important;display:none!important;}
body.woocommerce-account .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
.woocommerce-account-wrapper.is-endpoint .woocommerce-Addresses .woocommerce-Address{display:flex!important;flex-direction:column!important;align-self:stretch!important;justify-self:stretch!important;float:none!important;clear:none!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;box-sizing:border-box!important;}
body.woocommerce-account .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Address address,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address{display:block!important;margin:0!important;padding:0!important;font-style:normal!important;line-height:1.8!important;overflow-wrap:anywhere!important;}
@media (max-width: 720px) {
  body.woocommerce-account .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
.woocommerce-account-wrapper.is-endpoint .woocommerce-Addresses.col2-set.addresses{grid-template-columns:minmax(0, 1fr)!important;gap:12px!important;}
}

/* Account details: First name and Last name are a deliberate two-column pair. */
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm{display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;column-gap:18px!important;row-gap:0!important;align-items:start!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > .form-row,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > fieldset{float:none!important;clear:none!important;width:auto!important;max-width:100%!important;min-width:0!important;margin-right:0!important;box-sizing:border-box!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm #account_first_name_field,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm #account_last_name_field{grid-column:auto!important;width:auto!important;margin-bottom:17px!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm #account_email_field,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > .form-row-wide,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > p:has(button[name="save_account_details"]){grid-column:1 / -1!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm fieldset{padding:18px!important;margin:8px 0 18px!important;border:1px solid #e2eaf1!important;border-radius:14px!important;background:#f9fbfd!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm fieldset legend{padding:0 8px!important;color:#173b55!important;font-size:13px!important;font-weight:850!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm .form-row label{display:block!important;margin:0 0 7px!important;color:#405a70!important;font-size:12px!important;font-weight:800!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm .input-text{width:100%!important;min-height:48px!important;box-sizing:border-box!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm button[name="save_account_details"]{min-height:48px!important;padding:0 24px!important;border:1px solid transparent!important;border-radius:12px!important;background:var(--ps-blue)!important;color:#fff!important;font-size:13px!important;font-weight:850!important;box-shadow:0 9px 22px rgba(40,87,135,.16)!important;}
@media (max-width: 560px) {
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm{grid-template-columns:minmax(0, 1fr)!important;column-gap:0!important;}
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm #account_first_name_field,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm #account_last_name_field,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm #account_email_field,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > .form-row-wide,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > p:has(button[name="save_account_details"]){grid-column:1!important;}
}

/* Keep the account password eye stationary: only the button is vertically
   positioned; no rotation animation is applied to its icon/pseudo-element. */
body.woocommerce-account .password-input .show-password-input,
body.woocommerce-account-wrapper .password-input .show-password-input{transition:background-color .18s ease, color .18s ease, border-color .18s ease!important;rotate:none!important;}
body.woocommerce-account .password-input .show-password-input::before,
body.woocommerce-account .password-input .show-password-input::after,
body.woocommerce-account-wrapper .password-input .show-password-input::before,
body.woocommerce-account-wrapper .password-input .show-password-input::after{transform:none!important;rotate:none!important;animation:none!important;transition:none!important;}

/* Compact product's first viewport. The canvas scales proportionally inside a
   capped gallery rather than forcing a long page; all photo editor controls remain usable. */

/* Review actions use the same solid-blue primary-button treatment as the rest
   of the theme, including native WooCommerce review-submit controls. */

/* Match the homepage slider eyebrow to the Contact page's translucent pill. */
.ps-home-hero .ps-hero-copy > .eyebrow,
.ps-home .ps-hero-slider .ps-hero-copy > .eyebrow{display:inline-flex!important;align-items:center!important;width:max-content!important;max-width:100%!important;margin:0 0 14px!important;padding:0!important;border:0!important;border-radius:999px!important;background:transparent!important;box-shadow:none!important;color:#e74031!important;-webkit-text-fill-color:#e74031!important;font-size:12px!important;line-height:1.5!important;letter-spacing:.09em!important;text-transform:uppercase!important;backdrop-filter:blur(2px);background-color:transparent!important;margin-bottom:8px!important;font-weight:700!important;}

/* Hero buttons use the existing child-layer shine animation with no competing
   pseudo-element sweep or color-flash transition. */
.ps-home-hero .hero-actions > .btn,
.ps-home .ps-hero-slider .hero-actions > .btn{transition:transform .24s ease, box-shadow .24s ease, background-color .24s ease,
              border-color .24s ease, color .24s ease!important;}
.ps-home-hero .hero-actions > .btn::before,
.ps-home-hero .hero-actions > .btn::after,
.ps-home .ps-hero-slider .hero-actions > .btn::before,
.ps-home .ps-hero-slider .hero-actions > .btn::after{content:none!important;display:none!important;animation:none!important;}
.ps-home-hero .hero-actions > .btn > .ps-shine-overlay,
.ps-home .ps-hero-slider .hero-actions > .btn > .ps-shine-overlay{position:absolute!important;top:-35%!important;left:0!important;z-index:30!important;width:42%!important;height:170%!important;margin:0!important;padding:0!important;pointer-events:none!important;transform:translateX(-190%) skewX(-22deg);}
.ps-home-hero .hero-actions > .btn-primary,
.ps-home .ps-hero-slider .hero-actions > .btn-primary{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;}
.ps-home-hero .hero-actions > .btn-primary:hover,
.ps-home-hero .hero-actions > .btn-primary:focus-visible,
.ps-home .ps-hero-slider .hero-actions > .btn-primary:hover,
.ps-home .ps-hero-slider .hero-actions > .btn-primary:focus-visible{background:var(--ps-blue)!important;border-color:var(--ps-blue)!important;color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 13px 30px rgba(23, 71, 119, .26)!important;}
.ps-home-hero .hero-actions > .ps-hero-outline-btn,
.ps-home .ps-hero-slider .hero-actions > .ps-hero-outline-btn{background:rgba(255, 255, 255, .96)!important;border-color:rgba(255, 255, 255, .96)!important;color:var(--ps-blue)!important;}
.ps-home-hero .hero-actions > .ps-hero-outline-btn:hover,
.ps-home-hero .hero-actions > .ps-hero-outline-btn:focus-visible,
.ps-home .ps-hero-slider .hero-actions > .ps-hero-outline-btn:hover,
.ps-home .ps-hero-slider .hero-actions > .ps-hero-outline-btn:focus-visible{background:var(--ps-red)!important;border-color:var(--ps-red)!important;color:#111!important;transform:translateY(-2px)!important;box-shadow:0 13px 28px rgba(232, 93, 73, .24)!important;}

/* Account details: retain WooCommerce's two half-width name fields. */
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-first,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-last{display:inline-block!important;vertical-align:top!important;width:calc(49.8% - 10px)!important;box-sizing:border-box!important;clear:none!important;}
@media (max-width: 680px) {
  .woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-first,
.woocommerce-account-wrapper.is-endpoint .woocommerce-MyAccount-content form .form-row.form-row-last{display:block!important;width:100%!important;margin-right:0!important;}
}

/* Redesign story subsections as paired editorial panels; keep headings compact. */
body.single-post .ps-journal-prose{column-gap:16px!important;align-items:stretch!important;counter-reset:ps-story-heading;}
body.single-post .ps-journal-prose > p{grid-column:1 / -1;}

body.single-post .ps-journal-prose > h2{align-self:stretch!important;min-width:0!important;counter-increment:ps-story-heading;}

body.single-post .ps-journal-prose > h2 + p{align-self:stretch!important;border-left:0!important;}

@media (max-width: 760px) {
  body.single-post .ps-journal-prose{grid-template-columns:minmax(0, 1fr)!important;row-gap:13px!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;}
  body.single-post .ps-journal-prose > p:first-child,
body.single-post .ps-journal-prose > .ps-journal-lead{margin-bottom:21px!important;}
  body.single-post .ps-journal-prose > h2{grid-column:1 / -1!important;border-bottom:0!important;border-radius:13px 13px 0 0!important;}
  body.single-post .ps-journal-prose > h2 + p{grid-column:1 / -1!important;border-top:0!important;border-left:1px solid #dce8f3!important;border-radius:0 0 13px 13px!important;margin-bottom:0!important;}
}

/* Copy feedback is attached to the share choice; don't dismiss the dialog or
   show the global top-corner toast for a successful copy. */
.ps-product-share-dialog .ps-share-copy{position:relative!important;overflow:visible!important;}
.ps-product-share-copy-tooltip{position:absolute!important;top:-13px!important;right:9px!important;z-index:2!important;display:block!important;padding:4px 8px!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:7px!important;background:#173b54!important;color:#fff!important;font-size:10px!important;font-weight:800!important;line-height:1.3!important;opacity:0!important;transform:translateY(4px)!important;pointer-events:none!important;transition:opacity .18s ease, transform .18s ease!important;}
.ps-product-share-dialog .ps-share-copy.is-copied .ps-product-share-copy-tooltip,
.ps-product-share-dialog .ps-share-copy.copy-failed .ps-product-share-copy-tooltip{opacity:1!important;transform:translateY(0)!important;}
.ps-product-share-dialog .ps-share-copy.is-copied .ps-product-share-copy-tooltip{background:#1f754d!important;}
.ps-product-share-dialog .ps-share-copy.copy-failed .ps-product-share-copy-tooltip{background:#a43838!important;}
.ps-product-share-dialog .ps-share-copy.is-copied .ps-product-share-chevron::after{content:"✓";margin-left:5px;}

/* Keep the full designed canvas inside its gallery frame; the plugin's auto-height
   preview rule must not expand past the product first viewport. */

/* Product reviews: same row height for the review summary and review form, and
   the submit button uses the theme's regular solid-blue primary treatment. */

/* HERO: guarantee the same sheen interaction on slider links even when the
   slider's fade/transform stack prevents the JS-only hover event from showing. */
body .ps-home-hero .hero-actions > .btn:hover > .ps-shine-overlay,
body .ps-home-hero .hero-actions > .btn:focus-visible > .ps-shine-overlay,
body .ps-home .ps-hero-slider .hero-actions > .btn:hover > .ps-shine-overlay,
body .ps-home .ps-hero-slider .hero-actions > .btn:focus-visible > .ps-shine-overlay{animation:ps-v362-shine-sweep 1.38s cubic-bezier(.20,.62,.28,1) 1 both!important;}
body .ps-home-hero .hero-actions > .btn,
body .ps-home .ps-hero-slider .hero-actions > .btn{overflow:hidden!important;-webkit-mask-image:none;}
body .ps-home-hero .hero-actions > .btn > .ps-shine-overlay,
body .ps-home .ps-hero-slider .hero-actions > .btn > .ps-shine-overlay{pointer-events:none!important;}

/* BLOG DETAIL: softer editorial cards, compact headings and more readable copy.
   Keep each section title directly above its paragraph rather than in a large
   side-by-side heading/paragraph grid. */
body.single-post .ps-journal-hero-copy h1{max-width:700px!important;font-size:clamp(30px, 3.5vw, 44px)!important;line-height:1.12!important;letter-spacing:-.035em!important;}
body.single-post .ps-journal-prose{display:grid!important;grid-template-columns:minmax(0, 1fr)!important;row-gap:0!important;color:#40566a!important;font-size:15px!important;line-height:1.85!important;}
body.single-post .ps-journal-prose > p:first-child,
body.single-post .ps-journal-prose > .ps-journal-lead{grid-column:1!important;margin:0 0 24px!important;padding:20px 23px!important;border:1px solid #dbe8f3!important;border-left:4px solid #3984c4!important;border-radius:15px!important;background:linear-gradient(135deg, #f4f9fe 0%, #fbfdff 100%)!important;color:#27465e!important;font-size:16px!important;line-height:1.85!important;box-shadow:0 10px 26px rgba(23, 71, 119, .045)!important;}
body.single-post .ps-journal-prose > h2{grid-column:1!important;display:flex!important;align-items:center!important;gap:11px!important;margin:0!important;padding:15px 18px 7px!important;border:1px solid #dce8f3!important;border-bottom:0!important;border-radius:14px 14px 0 0!important;background:#f5f9fd!important;color:#153e5c!important;font-size:18px!important;font-weight:800!important;line-height:1.35!important;letter-spacing:-.02em!important;}
body.single-post .ps-journal-prose > h2::before{content:counter(ps-story-heading, decimal-leading-zero)!important;display:inline-grid!important;place-items:center!important;flex:0 0 27px!important;width:27px!important;height:27px!important;margin:0!important;border:1px solid #c9dfef!important;border-radius:8px!important;background:#e5f1fb!important;color:#28689f!important;font-size:10px!important;line-height:1!important;}
body.single-post .ps-journal-prose > h2 + p{grid-column:1!important;margin:0 0 15px!important;padding:4px 18px 17px!important;border:1px solid #dce8f3!important;border-top:0!important;border-radius:0 0 14px 14px!important;background:#fff!important;color:#5a7082!important;font-size:14px!important;line-height:1.8!important;box-shadow:0 8px 20px rgba(23, 71, 119, .035)!important;}
body.single-post .ps-journal-prose > h3{grid-column:1!important;margin:20px 0 8px!important;color:#153e5c!important;font-size:17px!important;line-height:1.4!important;letter-spacing:-.015em!important;}
body.single-post .ps-journal-prose > blockquote,
body.single-post .ps-journal-prose > ul,
body.single-post .ps-journal-prose > ol,
body.single-post .ps-journal-prose > figure,
body.single-post .ps-journal-prose > img{grid-column:1!important;}
@media (max-width: 760px) {
  body.single-post .ps-journal-hero-copy h1{font-size:clamp(28px, 7vw, 36px)!important;}
  body.single-post .ps-journal-prose > p:first-child,
body.single-post .ps-journal-prose > .ps-journal-lead{padding:16px 17px!important;font-size:14px!important;}
  body.single-post .ps-journal-prose > h2{padding:13px 14px 7px!important;font-size:16px!important;}
  body.single-post .ps-journal-prose > h2 + p{padding:4px 14px 14px!important;font-size:13px!important;}
}

/* PRODUCT CANVAS: the preview is absolutely positioned by the designer CSS.
   Give the actual gallery column a real height whenever the preview is present,
   even if the plugin's "featured canvas" marker was not added. */

/* REVIEWS: equally wide and equally tall panes; compact, matching solid blue
   submit button with a reduced radius. */

body .ps-shine-input-wrap{position:relative!important;display:inline-flex!important;align-items:stretch!important;max-width:100%!important;overflow:hidden!important;isolation:isolate!important;vertical-align:middle!important;border-radius:9px!important;}
body .ps-shine-input-wrap > .ps-shine-overlay{z-index:30!important;}
body .ps-shine-input-wrap > input{max-width:100%!important;}

/* BLOG DETAIL: keep the prose container padding exactly 30px at every viewport. */
body.single-post .ps-journal-prose{padding:30px!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;}

/* HERO BUTTONS: use a dedicated pseudo-element for a true left-to-right light sweep.
   The old JS child-overlay remains disabled here because nested/slider transforms
   could make its animation visible without the directional movement. */
@keyframes ps-home-button-shine-ltr {
  0%   { left: -68%; opacity: 0; transform: skewX(-22deg); }
  12%  { opacity: .68; }
  58%  { opacity: .52; }
  100% { left: 132%; opacity: 0; transform: skewX(-22deg); }
}
.ps-home-hero .hero-actions > .btn,
.ps-home .ps-hero-slider .hero-actions > .btn{position:relative!important;isolation:isolate!important;overflow:hidden!important;-webkit-mask-image:none;}
.ps-home-hero .hero-actions > .btn::before,
.ps-home .ps-hero-slider .hero-actions > .btn::before{content:""!important;display:block!important;position:absolute!important;top:-45%!important;left:-68%!important;z-index:8!important;width:42%!important;height:190%!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;opacity:0!important;pointer-events:none!important;transform:skewX(-22deg);animation:none!important;}
.ps-home-hero .hero-actions > .btn:hover::before,
.ps-home-hero .hero-actions > .btn:focus-visible::before,
.ps-home .ps-hero-slider .hero-actions > .btn:hover::before,
.ps-home .ps-hero-slider .hero-actions > .btn:focus-visible::before{animation:ps-home-button-shine-ltr .95s cubic-bezier(.2,.62,.28,1) 1 both!important;}
.ps-home-hero .hero-actions > .btn > .ps-shine-overlay,
.ps-home .ps-hero-slider .hero-actions > .btn > .ps-shine-overlay{display:none!important;animation:none!important;}
.ps-home-hero .hero-actions > .btn > span,
.ps-home .ps-hero-slider .hero-actions > .btn > span{position:relative!important;z-index:9!important;}

/* PRODUCT CANVAS: fix collapsed intermediate shell as well as the gallery height.
   Absolutely positioned canvas layers need every intermediate wrapper to have a
   measurable height; otherwise the toolbar remains visible above a blank viewport. */

/* A saved custom design may add a full-width editor/notice before the purchase
   controls. Use a two-column CSS grid so that full-row content cannot force the
   quantity and Add to cart button outside the summary card. */

/* Variable products have a separate WooCommerce variation cart row. */

/* Reviews/details are full-width sections below the gallery + summary row, not
   narrow children in the old two-column product layout. */

/* Review blocks inserted by the WooCommerce block editor sometimes inherit a
   half-width Gutenberg column. Expand only review-specific block rows/columns. */

/* Keep the CPPD mount available for the editor, but don't let its hidden modal
   wrapper consume an extra CSS-grid row beside quantity and Add to cart. */

/* Keep the sticky header flush with the viewport. On narrow logged-in views,
   the WordPress admin bar can scroll away; a reserved 46px sticky offset then
   creates the visible blank strip above the header. */
.site-header,
.site-header.ps-fixed-header{top:0!important;inset-block-start:0!important;margin-block-start:0!important;transform:none!important;-webkit-transform:none!important;}
@media (max-width: 782px) {
  body.admin-bar .site-header,
body.admin-bar .site-header.ps-fixed-header,
.admin-bar .site-header,
.admin-bar .site-header.ps-fixed-header{top:0!important;inset-block-start:0!important;}
}

/* The header hamburger is the one and only menu close control. Hide the old
   drawer close button defensively for cached/legacy markup as well. */
.mobile-panel .mobile-menu-close,
.site-header .mobile-panel .mobile-menu-close{display:none!important;}
.site-header .menu-toggle .ps-menu-icon{width:24px!important;height:24px!important;flex:0 0 24px!important;overflow:visible!important;stroke-width:2.1!important;}
.site-header .menu-toggle .ps-menu-line,
.site-header .menu-toggle .ps-menu-close-line{transform:none!important;opacity:1!important;transition:opacity .16s ease!important;}
.site-header .menu-toggle .ps-menu-close-line{stroke-width:2.25!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.site-header .menu-toggle:focus-visible{outline:2px solid var(--ps-blue)!important;outline-offset:3px!important;}

/* Keep the mobile drawer below the sticky header and make every link reachable
   without clipping the last menu/action item on short phone screens. */
@media (max-width: 1180px) {
  .mobile-menu-backdrop{top:var(--ps-offcanvas-top, 68px)!important;bottom:0!important;}
  .mobile-panel,
.site-header .mobile-panel{top:var(--ps-offcanvas-top, 68px)!important;bottom:0!important;height:auto!important;max-height:none!important;overflow:hidden!important;overscroll-behavior:contain!important;}
  .mobile-panel-shell{min-height:0!important;height:100%!important;}
  .mobile-panel-inner{min-height:0!important;flex:1 1 auto!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;padding-bottom:max(22px, env(safe-area-inset-bottom))!important;}
}

/* Site-wide narrow-screen safeguards for template grids, long labels and
   footer columns without changing desktop layouts. */
@media (max-width: 760px) {
  html,
body{max-width:100%!important;overflow-x:clip!important;}
  .container,
.site-main,
main,
.footer-grid > *,
.footer-bottom > *{min-width:0!important;}
  .footer-grid{width:100%!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;}
  .footer-main{grid-column:1 / -1!important;}
  .footer-links a,
.footer-bottom,
.footer-legal-note,
.mobile-menu-list a{overflow-wrap:anywhere!important;word-break:normal!important;}
  .footer-bottom{align-items:flex-start!important;flex-wrap:wrap!important;gap:10px 18px!important;}
  .footer-legal-note{display:flex!important;flex-wrap:wrap!important;gap:6px!important;}
  .ps-inner-hero-content,
.page-hero,
.ps-hero-copy,
.ps-contact-form-panel,
.ps-policy-content{min-width:0!important;max-width:100%!important;}
}
@media (max-width: 430px) {
  .footer-grid{grid-template-columns:minmax(0, 1fr)!important;}
  .footer-main{grid-column:auto!important;}
  .footer-bottom{flex-direction:column!important;align-items:flex-start!important;}
}
@media (prefers-reduced-motion: reduce) {
  .site-header .menu-toggle .ps-menu-line,
.site-header .menu-toggle .ps-menu-close-line{transition:none!important;}
}

/* Product media + summary: aligned columns on desktop, stacked on mobile. */

/* The real gallery wrapper takes its own natural height. */

/* IMPORTANT: the repeated ID selector intentionally outranks several legacy
   !important rules that forced the featured canvas to absolute/100%-height. */

/* Do not let older theme rules crop the canvas at an ancestor. */

/* Keep the gallery + purchase summary as two columns on desktop. */

/* Review workspace: full width shell, blue header, equal white cards with
   a real bottom inset; two IDs in these selectors beat old #reviews #comments
   rules that previously forced the list card to min-height:100%. */

/* Remove the decorative preview eyebrow completely. */

/* Reduce the purchase card padding without changing the main grid. */

/* Match Add to cart to the shared solid primary color. */

/* Compact the canvas area; keep the natural canvas aspect ratio and let the
   browser scale the canvas down instead of stretching it to the gallery width. */
/* Keep the gallery card content-sized on desktop; do not stretch a compact
   canvas to the full height of a longer purchase summary. */

/* Wrap tools into additional rows instead of putting a horizontal scrollbar
   inside the toolbar. Menus can still overflow visibly from their trigger. */

/* WordPress block-template compatibility: the gallery helper also normalizes
   the enclosing .wp-block-column inline. These rules keep that column stretched
   to the exact grid-row height of the product summary. */

/* PrintStrokes product-page refresh v3.8.1 — clear preview/edit hierarchy, balanced columns and responsive cart controls. */

/* PrintStrokes v3.8.1 quality pass — definitive preview/editor separation.
   Earlier theme overrides exposed the legacy live toolbar above the canvas with
   triple-ID selectors. The storefront now previews the design and exposes one
   clear Edit action; tool controls stay inside the full-screen editor. */

/* PrintStrokes v3.8.2: product images remain visible; preview actions belong below native gallery. */

/* Sale badge label is deliberately white for contrast. */
/* Keep the cart payload quantity at WooCommerce's default, but do not show a quantity stepper. */

/* Fallback for product templates which are not wrapped in the theme's custom .ps-product-content block. */

/* PrintStrokes 3.8.3 — native WooCommerce gallery + actions underneath.
   Older canvas revisions made the gallery a fixed-height overlay. These selectors
   intentionally outrank those historical rules while preserving Woo's image slider
   and thumbnail list. */

/* The number-style gallery lives in the editor's stage toolbar, never in the left panel. */
.cppd-modal.cppd-editor-redesign .cppd-number-style-top-action{display:inline-flex!important;align-items:center;gap:7px;min-height:34px;padding:6px 10px!important;border:1px solid #dce3ec!important;border-radius:9px!important;background:#fff!important;color:#27364b!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important;}
.cppd-modal.cppd-editor-redesign .cppd-number-style-top-action .cppd-action-icon{background:#fff1ef;color:#e9473f;}
@media(max-width:560px){.cppd-modal.cppd-editor-redesign .cppd-number-style-top-action{padding:5px 7px!important;min-height:31px;font-size:10px!important;}.cppd-modal.cppd-editor-redesign .cppd-number-style-top-action>span:last-child{display:none;}}

/* PrintStrokes 3.8.4 — final product CTA order and personalization button. */

/* Native grid auto-placement keeps Add to cart first and Buy Now second. */

/* Theme v3.8.5 — sale badge contrast and predictable purchase-action order. */
.woocommerce span.onsale,
.woocommerce-page span.onsale,
.wc-block-grid__product-onsale{color:#fff!important;}

.woocommerce span.onsale,
.woocommerce-page span.onsale,
.wc-block-grid__product-onsale,
.wc-block-components-product-sale-badge{color:#fff!important;}

/* PrintStrokes v3.8.8 — polished product hero and single-row purchase controls. */

/* Quantity, Add to cart and Buy now stay on the same row at all storefront widths. */

/* PrintStrokes v3.9.1 — focused product gallery controls and final purchase actions. */

/* PrintStrokes 3.9.2 — final gallery trigger + thin Edit-button shine. */

/* PrintStrokes 3.9.3 — final product gallery cleanup for the live canvas preview. */

/* PrintStrokes 3.9.4 — hard-stop WooCommerce gallery trigger and remove doubled image frame styling. */

/* PrintStrokes 3.9.4 — nested gallery wrapper cleanup. */

/* PrintStrokes 3.9.5 — restore purchase controls and hard-hide Woo gallery zoom. */

/* PrintStrokes 3.9.6 — purchase-action recovery and persistent gallery-trigger suppression. */

/* Do not let legacy hide rules suppress the quantity stepper or either purchase button. */

/* PrintStrokes 3.9.7 — clean WooCommerce product gallery: remove the card padding and border. */

/* PrintStrokes 3.9.8 — clean, clickable attribute choices for variable products. */

/* Variable and simple product purchases share an even three-column action row. */

/* PrintStrokes 3.9.9 — variable-product defaults and full-width purchase actions. */

/* Keep Buy Now visibly available while WooCommerce resolves the default variation.
   Its click handler still validates the variation and stock before submitting. */

/* Product designer action controls overlay the image area without sizing the gallery itself. */

/* Keep the gallery card and information column aligned without resizing either when a size changes. */

/* Edit uses the same JS-driven shine overlay and timing as the other theme buttons. */

/* Equalize the actual gallery card to the product-summary grid row (including legacy high-specificity rules). */

/* PrintStrokes v3.11.3 — native WooCommerce product gallery slider polish.
   Earlier layout rules forced every slide to display:flex, bypassing FlexSlider's
   active-slide handling. Keep the native slider's slide visibility and controls. */

/* Let FlexSlider manage its track width and active slide; do not hide sibling slides. */

/* Slim, horizontal thumbnail rail under the hero slide. */

/* Tactile previous/next arrows are supplied by WooCommerce's FlexSlider. */

/* Theme/plugin normalizers wrap the Woo gallery and summary in one row.
   The parent product is a two-column grid, so this row must span both columns. */

/* Outrank old repeated-ID rules. Animate only the artwork transform, not the filter. */

/* Keep the gap between the gallery/purchase row and product details comfortably below 100px. */

/* Product gallery carousel: natural image dimensions, no outer card or fixed-height frame. */

/* Blockified WooCommerce templates need the same visible image card as classic
   .woocommerce-product-gallery templates, even when they have no CPPD canvas. */

/* Scale the stable artwork stage instead of the image node. If WooCommerce
   swaps the image element while resolving a variation, the stage animation
   remains continuous rather than jumping to the newly-created image's scale. */

/* Unified purchase controls: clean aligned quantity, blue Add to cart, red Buy Now. */

/* Additional fallback for WooCommerce's standalone Product Image block variant. */

/* Final fallback: if Woo's FlexSlider controls survive a late init, make them a
   horizontal strip. Prefer the theme carousel rail whenever it exists. */

/* Card fallback when a Woo gallery has an unusual single-image structure and
   therefore does not get the carousel-ready class. */

/* Consistent cart buttons even when CPPD is disabled for a normal product. */

/* High-specificity overrides neutralize older image-level scaling rules. The
   featured .ps-product-artwork-stage is the only element that may be scaled. */

/* A common visible media card for classic single images and Woo block images. */

.cppd-modal.cppd-editor-redesign .cppd-editor-top-actions #cppd-save-preview[hidden]{display:none!important;}
.cppd-modal.cppd-editor-redesign .cppd-editor-top-actions #cppd-save-preview{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:10px 14px;border:1px solid #d5deea;border-radius:10px;background:#fff;color:#173b62;font-size:12px;font-weight:800;line-height:1.1;cursor:pointer;}

/* Designer-active rules had a separate 28px row margin + 28px section padding.
   Let the product container's 24px row-gap be the single source of section spacing. */

/* Keep the requested arrow padding exact; also enforced by product-gallery.js. */

/* Stable card treatment for classic Woo product galleries, including simple
   products which may already have data-ps-gallery-ready set by an older script. */

/* Exactly one size-animation channel: the featured artwork stage. */

/* Remove only the related-products top divider; retain normal section spacing. */

/* The gallery and summary share one grid row and stretch to exactly the same
   outer height. The gallery's contents (main frame + thumbnails) determine the
   row height; do not keep the legacy fixed 620px gallery height. */

/* Override the old fixed-height variation gallery rule without removing its
   inner artwork stage sizing or thumbnail rail. */

/* Keep exactly one transform transition on the artwork stage, on desktop and
   mobile. The image itself remains neutral; reduced-motion preference is honored. */

/* The last repeated-ID selectors are intentional legacy cascade guards. Match
   their specificity here so the tablet/mobile gallery sizes really take effect. */

/* Specific override for slider-ready gallery roots (the legacy selector includes
   eight repeated IDs plus this class and otherwise wins the cascade). */

/* Keep simple and variable product columns in natural document flow. */

/* Desktop mega-menu sizing: two-column layouts are 430px; one-card layouts 240px. */
@media (min-width: 1181px) {
  .site-header .primary-nav .primary-menu > li.menu-item-has-children:not(.ps-single-child) > .sub-menu{width:430px!important;min-width:430px!important;max-width:min(430px, calc(100vw - 32px))!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;}
  .site-header .primary-nav .primary-menu > li.menu-item-has-children.ps-single-child > .sub-menu{width:240px!important;min-width:240px!important;max-width:min(240px, calc(100vw - 32px))!important;grid-template-columns:minmax(0, 1fr)!important;}
}

/* General page overflow safety for smaller viewports, without changing the
   desktop grids or forcing fixed heights onto content-heavy pages. */
@media (max-width: 1100px) {
  .site-header .container,
main .container,
.site-main .container,
.woocommerce-page-wrap{max-width:100%!important;box-sizing:border-box!important;}
  main img,
main video,
main iframe,
.site-main img,
.site-main video,
.site-main iframe{max-width:100%;}
  .wp-block-columns{min-width:0;}
  .wp-block-column{min-width:0;overflow-wrap:break-word;}
  .woocommerce table.shop_table{max-width:100%;}
}
@media (max-width: 600px) {
  main .container,
.site-main .container,
.woocommerce-page-wrap{padding-inline:14px!important;}
  .woocommerce table.shop_table{display:block;overflow-x:auto;white-space:nowrap;}
}
/* Footer spacing and legal links are consolidated in the final footer rule. */
.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;}
.site-footer .footer-legal-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:14px;margin-left:auto;}
.site-footer .footer-legal-links a{color:inherit;text-decoration:none;}
.site-footer .footer-legal-links a:hover{text-decoration:underline;}
@media (max-width: 760px) {
  .site-footer .footer-bottom{align-items:flex-start;}
  .site-footer .footer-legal-links{margin-left:0;justify-content:flex-start;}
}

/* Storefront polish. Specificity preserves the existing product/editor overrides. */
body .site-header{background:#fff!important;border-bottom:1px solid #e5e8eb!important;box-shadow:0 4px 20px rgba(16, 47, 64, .035)!important;}
body .site-header .primary-nav a{font-weight:600!important;}
body .site-header .header-register,
body .mobile-panel .mobile-actions .header-register{background:#E74031!important;border-color:#E74031!important;color:#fff!important;font-size:19px!important;font-weight:700!important;box-shadow:none!important;}
body .site-header .header-register:hover,
body .mobile-panel .mobile-actions .header-register:hover{background:#cf3325!important;border-color:#cf3325!important;}
body a:focus-visible,
body button:focus-visible{outline:3px solid var(--ps-blue)!important;outline-offset:4px!important;}
body .site-footer a:focus-visible{outline-color:#fff!important;}

.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide{background:#f5f2ec!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media{inset:0 0 0 auto!important;width:46%!important;height:100%!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::before,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media::after,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide::before,
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-slide::after{display:none!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-media img{object-position:62% center!important;filter:none!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{width:54%!important;max-width:none!important;padding:42px 40px 48px max(32px, calc((100vw - 1180px) / 2))!important;background:transparent!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy > .eyebrow{padding:0!important;border:0!important;background:transparent!important;color:#e74031!important;-webkit-text-fill-color:#e74031!important;font-size:12px!important;letter-spacing:.09em!important;background-color:transparent!important;box-shadow:none!important;margin-bottom:8px!important;font-weight:700!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1{width:100%!important;max-width:560px!important;margin:8px 0 12px!important;font-size:clamp(40px, 4.3vw, 60px)!important;font-weight:600!important;line-height:1.06!important;letter-spacing:-.045em!important;color:#18374a!important;text-shadow:none!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1 span{padding:0!important;background:transparent!important;font-family:var(--ps-font-heading)!important;font-weight:600!important;font-style:normal!important;color:#285787!important;text-shadow:none!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy p{max-width:440px!important;color:#52636e!important;font-size:16px!important;font-weight:400!important;line-height:1.75!important;text-shadow:none!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof{gap:8px 16px!important;margin-top:12px!important;}
.ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof > span{padding:0!important;background:transparent!important;border:0!important;color:#52636e!important;box-shadow:none!important;font-size:11px!important;background-color:transparent!important;border-radius:0!important;min-height:0!important;height:auto!important;white-space:nowrap!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow{top:auto!important;bottom:24px!important;transform:none!important;width:40px!important;height:40px!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow.ps-hero-prev{left:calc(54% + 24px)!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow.ps-hero-next{right:24px!important;}
.ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots{left:77%!important;bottom:30px!important;}

.ps-home .section{padding-block:clamp(48px, 6.5vw, 88px)!important;}
.ps-home .section-title{font-size:clamp(30px, 3.2vw, 44px)!important;font-weight:600!important;line-height:1.15!important;letter-spacing:-.035em!important;text-wrap:balance;}
.ps-home .section-copy{font-size:16px!important;line-height:1.8!important;}
.ps-home .ps-favourites,
.ps-home .ps-how-section{background:#f7f8fa!important;}
.ps-home .ps-category-card,
.ps-home .ps-product-card,
.ps-home .ps-step,
.ps-home .quote,
.ps-home .blog-card{border:1px solid #e5e8eb!important;border-radius:16px!important;background:#fff!important;box-shadow:0 4px 16px rgba(16, 47, 64, .035)!important;}
.ps-home .ps-category-card:hover,
.ps-home .ps-product-card:hover,
.ps-home .blog-card:hover{border-color:#b8c8d5!important;box-shadow:none!important;transform:none!important;}
.ps-home .ps-category-copy h3,
.ps-home .ps-product-meta h3,
.ps-home .ps-step h3{font-weight:600!important;letter-spacing:-.02em!important;}
.ps-home .ps-product-type{font-size:10px!important;letter-spacing:.1em!important;}
.ps-home .quote .stars{color:#a66b16!important;letter-spacing:.12em!important;}
body .site-footer{background:#153448!important;}
body .site-footer .footer-links a{line-height:1.8!important;}

@media (max-width: 1000px) and (min-width: 761px) {
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slides{height:660px!important;min-height:660px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{padding-inline:28px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions{flex-wrap:wrap!important;}
}
@media (max-width: 760px) {
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-slides{height:850px!important;min-height:850px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-media{inset:auto 0 0!important;width:100%!important;height:270px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy{width:100%!important;height:580px!important;min-height:0!important;padding:32px 24px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy h1{max-width:520px!important;font-size:clamp(36px, 10.8vw, 42px)!important;color:#18374a!important;text-shadow:none!important;margin:8px 0 12px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions{gap:10px!important;flex-wrap:wrap!important;}
  .ps-home .ps-hero-slider.ps-home-hero .hero-actions .btn{padding-inline:16px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow.ps-hero-prev{left:20px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow.ps-hero-next{right:20px!important;}
  .ps-home .ps-hero-slider.ps-home-hero .ps-hero-dots{left:50%!important;}
}

/* One brand palette for storefront controls, including plugin-rendered forms. */
:root{--ps-blue:#285787;--ps-blue-2:#285787;--ps-red:#E74031;--ps-teal:#285787;--ps-coral:#E74031;--ps-coral-soft:#fff0ee;--ps-action-blue-start:#285787;--ps-action-blue-mid:#285787;--ps-action-blue-end:#285787;--ps-action-coral:#E74031;--ps-action-coral-end:#E74031;--ps-v35-blue-a:#285787;--ps-v35-blue-b:#285787;--ps-v35-blue-c:#285787;--ps-v35-coral:#E74031;--ps-v35-coral-dark:#E74031;--ps-control-focus:0 0 0 3px rgba(40, 87, 135, .2);}
body :is(button, input[type="submit"], input[type="button"], input[type="reset"],
  .btn, .button, .ps-btn, .wp-block-button__link, .added_to_cart),
body :is(button, input[type="submit"], input[type="button"], input[type="reset"],
  .btn, .button, .ps-btn, .wp-block-button__link, .added_to_cart):is(:hover, :focus-visible, :active){background-image:none!important;}
body .ps-shine-overlay{display:none!important;}
body :is(input, select, textarea){accent-color:var(--ps-blue);}
body :is(input, select, textarea):focus-visible{outline:2px solid var(--ps-blue)!important;outline-offset:2px;}
body .ps-back-top{background:var(--ps-blue)!important;}

/* Purchase details come first; the full description has its own section below. */

/* Purchase controls stay in normal document flow for all viewport widths and heights. */

/* Storefront typography: use the same readable family across pages and forms. */
body :is(h1, h2, h3, h4, h5, h6, .section-title){font-weight:600!important;}
body :is(.btn, .woocommerce button.button, .woocommerce a.button){font-weight:600!important;}

/* Client polish pass: preserve the existing design and correct small interaction issues. */
.header-register{font-size:11.5px!important;}
.ps-home .hero-actions .ps-hero-outline-btn:hover,
.ps-home .hero-actions .btn:hover{transform:none!important;}
.ps-home .hero-actions .btn span{transition:transform .25s ease!important;}
.ps-home .hero-actions .btn:hover span{transform:translateX(4px)!important;}
/* White/secondary buttons use the brand red hover state with readable white text. */
.btn-secondary:hover,
.btn-light:hover,
.btn-white:hover,
a.btn-secondary:hover,
button.btn-secondary:hover,
.ps-hero-outline-btn:hover{background:var(--ps-coral, #d9362b)!important;color:#fff!important;border-color:var(--ps-coral, #d9362b)!important;}
/* Keep the proof-list icons tidy and close to their labels. */
.hero-mini-proof span{align-items:center;gap:6px;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;min-height:0!important;height:auto!important;color:#52636e!important;white-space:nowrap!important;}
.hero-mini-proof span b{display:inline-flex;align-items:center;justify-content:center;width:15px;min-width:15px;font-size:13px;line-height:1;font-weight:800;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;min-height:0!important;height:auto!important;color:#52636e!important;white-space:nowrap!important;}

/* Client refinement pass — compact home categories, footer contrast, and aligned shop cards. */
/* The footer logo artwork is navy, so render it in white against the dark footer. */
body .site-footer{background:linear-gradient(135deg, #0d2636 0%, #153448 58%, #102d40 100%)!important;}

body .site-footer .footer-links{color:#c6d4df!important;}

/* Add breathing room above the final home-page CTA instead of letting it run into the section above. */
body .ps-home .cta{margin-top:26px!important;padding-top:clamp(58px, 7vw, 88px)!important;padding-bottom:clamp(58px, 7vw, 88px)!important;}
body .ps-home .ps-cta-box{margin-top:0!important;}

/* A more compact, scannable category section: six compact cards on wide screens. */
body .ps-home .ps-categories{padding-top:clamp(32px, 4vw, 50px)!important;padding-bottom:clamp(32px, 4vw, 50px)!important;}

body .ps-home .ps-categories .section-title{font-size:clamp(24px, 2.5vw, 32px)!important;}

body .ps-home .ps-category-card{box-shadow:0 5px 18px rgba(14, 51, 71, .055)!important;}

/* Keep home product cards neat and make the View product action actually clickable. */
body .ps-home .ps-product-card{display:flex!important;flex-direction:column!important;height:100%!important;}
body .ps-home .ps-product-image-wrap,
body .ps-home .ps-product-image{flex-shrink:0!important;}
body .ps-home .ps-product-meta{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:stretch!important;}
body .ps-home .ps-product-bottom{margin-top:auto!important;padding-top:12px!important;}
body .ps-home .ps-product-bottom .ps-home-view-product{display:inline-flex!important;align-items:center!important;gap:5px!important;color:#E74031!important;font-size:12px!important;font-weight:800!important;text-decoration:none!important;white-space:nowrap!important;}
body .ps-home .ps-product-bottom .ps-home-view-product:hover{color:#b92e23!important;}
body .ps-home .ps-product-bottom .ps-home-view-product span{transition:transform .2s ease!important;}
body .ps-home .ps-product-bottom .ps-home-view-product:hover span{transform:translateX(3px)!important;}

/* Shop archive: three products per page and an equal-height card row with actions aligned at the bottom. */
body .ps-shop-results > .woocommerce ul.products,
body .ps-shop-results .woocommerce ul.products,
body .ps-shop-results ul.products{display:grid!important;grid-template-columns:repeat(3, minmax(0, 1fr))!important;align-items:stretch!important;gap:22px!important;}
body .ps-shop-results ul.products li.product{display:flex!important;flex-direction:column!important;align-self:stretch!important;height:100%!important;min-width:0!important;padding:0 0 18px!important;box-sizing:border-box!important;}
body .ps-shop-results ul.products li.product > a.woocommerce-LoopProduct-link,
body .ps-shop-results ul.products li.product > a.woocommerce-loop-product__link{display:block!important;flex:0 0 auto!important;width:100%!important;}
body .ps-shop-results ul.products li.product a img{display:block!important;width:100%!important;aspect-ratio:1 / 1!important;object-fit:cover!important;}
body .ps-shop-results ul.products li.product .woocommerce-loop-product__title{padding:14px 16px 5px!important;font-size:16px!important;line-height:1.35!important;overflow-wrap:anywhere!important;}
body .ps-shop-results ul.products li.product .star-rating{margin:3px 16px 8px!important;}
body .ps-shop-results ul.products li.product .price{display:block!important;padding:0 16px 10px!important;margin:0!important;line-height:1.45!important;font-weight:500!important;}
body .ps-shop-results ul.products li.product .button{width:calc(100% - 36px)!important;min-height:46px!important;margin:auto 18px 0!important;padding:10px 12px!important;box-sizing:border-box!important;white-space:normal!important;text-align:center!important;line-height:1.25!important;transform:none!important;}
body .ps-shop-results ul.products li.product .button:hover{transform:none!important;}
body .ps-shop-results .ps-shop-results-note{white-space:nowrap!important;}

/* Login and Register use a matching button layout in the desktop header too. */
body .site-header .header-actions .header-login{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:0 15px!important;border:1px solid #d8e0e8!important;border-radius:11px!important;background:#fff!important;color:var(--ps-blue)!important;font-size:12px!important;font-weight:700!important;line-height:1!important;text-decoration:none!important;box-shadow:none!important;}
body .site-header .header-actions .header-login:hover{background:#E74031!important;border-color:#E74031!important;color:#fff!important;}
body .site-header .header-actions .header-register{min-height:42px!important;padding:0 15px!important;border-radius:11px!important;font-size:12px!important;line-height:1!important;}

/* All light/outline buttons keep readable white text when the hover background turns red. */
body :is(.btn-secondary, .btn-light, .btn-white, .btn-outline, .ps-hero-outline-btn):hover,
body :is(.btn-secondary, .btn-light, .btn-white, .btn-outline, .ps-hero-outline-btn):focus-visible{background:#E74031!important;border-color:#E74031!important;color:#fff!important;}
body :is(.btn-secondary, .btn-light, .btn-white, .btn-outline, .ps-hero-outline-btn):hover span,
body :is(.btn-secondary, .btn-light, .btn-white, .btn-outline, .ps-hero-outline-btn):hover svg,
body :is(.btn-secondary, .btn-light, .btn-white, .btn-outline, .ps-hero-outline-btn):focus-visible span{color:#fff!important;fill:currentColor!important;}

@media (max-width: 1180px) {
  body .ps-home .ps-category-grid{grid-template-columns:repeat(3, minmax(0, 1fr))!important;}
  body .site-header .header-actions .header-login{display:none!important;}
}
@media (max-width: 760px) {
  body .ps-home .ps-category-grid{grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:12px!important;}
  body .ps-home .ps-categories .section-head-row{align-items:flex-start!important;flex-direction:column!important;}
  body .ps-home .ps-categories .section-head-row > .btn{align-self:flex-start!important;}
  body .ps-home .ps-category-copy{padding:12px!important;}
  body .ps-home .ps-category-copy h3{font-size:15px!important;}
  body .ps-shop-results ul.products{grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:14px!important;}
  body .ps-shop-results ul.products li.product .woocommerce-loop-product__title{padding-inline:12px!important;font-size:14px!important;}
  body .ps-shop-results ul.products li.product .price{padding-inline:12px!important;font-size:13px!important;font-weight:500!important;}
  body .ps-shop-results ul.products li.product .button{width:calc(100% - 24px)!important;margin-inline:12px!important;font-size:12px!important;}
  body .ps-home .cta{margin-top:18px!important;padding-top:48px!important;padding-bottom:48px!important;}
}
@media (max-width: 480px) {
  body .ps-shop-results ul.products{grid-template-columns:1fr!important;}
}

.site-header .primary-nav .primary-menu > li > a,
.site-header .primary-nav .primary-menu > li.menu-item-has-children > .sub-menu > li > a{font-weight:600!important;}
.ps-announcement{font-weight:600!important;}
.ps-announcement .ps-announcement-item{display:inline-flex!important;align-items:end!important;gap:4px!important;line-height:1.2!important;white-space:nowrap!important;}
.ps-announcement .ps-announcement-item>svg{display:block!important;flex:0 0 16px!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.ps-announcement .ps-announcement-item>span{display:inline!important;}
.ps-announcement .ps-announcement-inner{gap:24px!important;}
.ps-announcement .ps-announcement-right{margin-left:auto!important;}

/* Footer: preserve the dark brand treatment, with no red divider. */
body .site-footer{background:linear-gradient(135deg,#0d2636 0%,#153448 58%,#102d40 100%)!important;border-top:0!important;color:#eaf1f7!important;}
body .site-footer::before{border-top:0!important;background:none!important;}
body .site-footer .footer-brand .site-logo,
body .site-footer .footer-brand img,
body .site-footer .footer-logo{filter:none!important;opacity:1!important;}
body .site-footer .footer-copy{color:#c1d0dc!important;}
body .site-footer .footer-links,
body .site-footer .footer-legal-links{color:#c6d4df!important;}
body .site-footer .footer-links a:hover,
body .site-footer .footer-legal-links a:hover{color:#fff!important;}
body .site-footer .footer-title{color:#fff!important;}
body .site-footer .footer-bottom{border-top-color:rgba(255,255,255,.17)!important;}
body .site-footer .footer-actions .btn-primary{color:#fff!important;}

/* Homepage categories: three cards, responsive and easy to scan. */
body .ps-home .ps-categories{padding-top:clamp(34px,4vw,52px)!important;padding-bottom:clamp(34px,4vw,52px)!important;}
body .ps-home .ps-categories .section-head-row{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:18px 28px!important;margin-bottom:0!important;}
body .ps-home .ps-categories .section-head-row>div{max-width:740px!important;min-width:0!important;}
body .ps-home .ps-categories .section-title{max-width:none!important;margin:8px 0!important;font-size:clamp(27px,3vw,36px)!important;line-height:1.14!important;letter-spacing:-.035em!important;white-space:nowrap!important;}
body .ps-home .ps-categories .section-copy{max-width:670px!important;margin:0!important;font-size:14px!important;line-height:1.65!important;color:#647684!important;}
body .ps-home .ps-category-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;margin-top:26px!important;align-items:stretch!important;}
body .ps-home .ps-category-card{display:flex!important;flex-direction:column!important;min-width:0!important;overflow:hidden!important;border:1px solid #e3e9ef!important;border-radius:18px!important;background:#fff!important;box-shadow:0 6px 22px rgba(17,48,66,.055)!important;transform:none!important;}
body .ps-home .ps-category-card:hover{transform:none!important;border-color:#cad9e5!important;box-shadow:none!important;}
body .ps-home .ps-category-image{aspect-ratio:1.42/1!important;overflow:hidden!important;background:#f4f6f7!important;}
body .ps-home .ps-category-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:transform .45s ease!important;}
body .ps-home .ps-category-card:hover .ps-category-image img{transform:scale(1.035)!important;}
body .ps-home .ps-category-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;flex:1 1 auto!important;padding:18px 19px 19px!important;}
body .ps-home .ps-category-copy h3{margin:0 0 7px!important;font-size:18px!important;line-height:1.28!important;letter-spacing:-.018em!important;color:#17394b!important;}
body .ps-home .ps-category-copy p{display:-webkit-box!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;min-height:42px!important;margin:0 0 14px!important;color:#677985!important;font-size:13px!important;line-height:1.6!important;}
body .ps-home .ps-category-copy>span{display:inline-flex!important;align-items:center!important;gap:8px!important;margin-top:auto!important;color:#285787!important;font-size:12px!important;font-weight:800!important;line-height:1.4!important;}
body .ps-home .ps-category-copy>span b{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:20px!important;height:20px!important;border-radius:50%!important;background:#edf4fa!important;color:#285787!important;font-size:0!important;}
body .ps-home .ps-category-copy>span b::before{content:""!important;display:block!important;width:6px!important;height:6px!important;border-top:1.6px solid currentColor!important;border-right:1.6px solid currentColor!important;transform:rotate(45deg)!important;margin-left:-2px!important;}
body .ps-home .ps-category-copy>span .ps-category-link-arrow{display:block!important;flex:0 0 16px!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .18s ease!important;}
body .ps-home .ps-category-card:hover .ps-category-link-arrow{transform:none!important;}
@media(max-width:760px){
  body .ps-home .ps-categories{padding-top:30px!important;padding-bottom:32px!important;}
  body .ps-home .ps-categories .section-head-row{align-items:flex-start!important;flex-direction:column!important;gap:14px!important;}
  body .ps-home .ps-categories .section-title{font-size:27px!important;max-width:none!important;white-space:normal!important;}
  body .ps-home .ps-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px!important;margin-top:20px!important;}
  body .ps-home .ps-category-image{aspect-ratio:1.1/1!important;}
  body .ps-home .ps-category-copy{padding:13px!important;}
  body .ps-home .ps-category-copy h3{font-size:15px!important;}
  body .ps-home .ps-category-copy p{min-height:0!important;font-size:12px!important;}
}
@media(max-width:480px){body .ps-home .ps-category-grid{grid-template-columns:1fr!important;gap:14px!important;}body .ps-home .ps-category-image{aspect-ratio:1.55/1!important;}}

/* Hero proof points stay content-width, rather than stretching into wide cards. */
body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important;grid-template-columns:none!important;width:fit-content!important;max-width:100%!important;gap:8px 16px!important;margin:14px 0 0!important;color:#405461!important;margin-top:12px!important;}
body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof>span{display:inline-flex!important;flex:0 1 auto!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;width:fit-content!important;min-width:0!important;max-width:100%!important;min-height:0!important;margin:0!important;padding:0!important;gap:7px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#52636e!important;box-shadow:none!important;font-size:11px!important;font-weight:600!important;line-height:1.3!important;letter-spacing:0!important;white-space:nowrap!important;overflow-wrap:anywhere!important;backdrop-filter:none!important;background-color:transparent!important;height:auto!important;}
body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof>span b.ps-proof-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 20px!important;width:16px!important;min-width:16px!important;height:16px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#285787!important;box-shadow:none!important;font-size:0!important;line-height:0!important;background-color:transparent!important;min-height:0!important;}
body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof>span b.ps-proof-icon svg{display:block!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;color:#285787!important;min-width:16px!important;min-height:0!important;}
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-copy>.eyebrow{margin-bottom:8px!important;color:#e74031!important;-webkit-text-fill-color:#e74031!important;background:transparent!important;background-color:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;font-size:12px!important;letter-spacing:.09em!important;font-weight:700!important;}
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow,
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:hover,
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:focus-visible,
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:active{transform:none!important;translate:none!important;animation:none!important;transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important;}
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:hover,
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:focus-visible{background:#285787!important;color:#fff!important;border-color:#285787!important;box-shadow:0 10px 24px rgba(22,55,80,.16)!important;}
body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow:active{background:#1d4774!important;color:#fff!important;border-color:#1d4774!important;}
/* The white hero button fills red on hover; both the label and arrow stay white. */
body .ps-home .ps-hero-slider.ps-home-hero .hero-actions>.ps-hero-outline-btn:is(:hover,:focus-visible,:active),
body .ps-home .ps-hero-slider.ps-home-hero .hero-actions>.btn-secondary:is(:hover,:focus-visible,:active){background:#e74031!important;background-color:#e74031!important;border-color:#e74031!important;color:#fff!important;-webkit-text-fill-color:#fff!important;transform:none!important;box-shadow:0 8px 20px rgba(232,64,49,.18)!important;}
body .ps-home .ps-hero-slider.ps-home-hero .hero-actions>.ps-hero-outline-btn:is(:hover,:focus-visible,:active) *,
body .ps-home .ps-hero-slider.ps-home-hero .hero-actions>.btn-secondary:is(:hover,:focus-visible,:active) *{color:#fff!important;-webkit-text-fill-color:#fff!important;}
body .ps-home .ps-hero-slider.ps-home-hero .hero-actions>.btn-primary:is(:hover,:focus-visible,:active),
body .ps-home .ps-hero-slider.ps-home-hero .hero-actions>.btn-primary:is(:hover,:focus-visible,:active) *{color:#fff!important;-webkit-text-fill-color:#fff!important;}
@media(max-width:760px){body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof{gap:8px 16px!important;margin-top:12px!important;}body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof>span{min-height:0!important;padding:0!important;font-size:10px!important;gap:5px!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;height:auto!important;color:#52636e!important;white-space:nowrap!important;}body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof>span b.ps-proof-icon{flex-basis:18px!important;width:16px!important;min-width:16px!important;height:16px!important;padding:0!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;color:#285787!important;min-height:0!important;}body .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof>span b.ps-proof-icon svg{width:16px!important;height:16px!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0!important;color:#285787!important;min-width:16px!important;min-height:0!important;}}

/* Inline SVGs: menu chevrons, submenu icons, product wishlist/share and shop controls. */
@media(min-width:1181px){
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>a .ps-menu-chevron{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 15px!important;width:15px!important;height:15px!important;margin:0 0 0 3px!important;border:0!important;transform:none!important;opacity:1!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>a .ps-menu-chevron svg{display:block!important;width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .18s ease!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children:hover>a .ps-menu-chevron svg,
.site-header .primary-nav .primary-menu>li.menu-item-has-children:focus-within>a .ps-menu-chevron svg{transform:rotate(180deg)!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a::before,
.site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a::after{content:none!important;display:none!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a{gap:10px!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a .ps-menu-item-icon{display:inline-grid!important;place-items:center!important;flex:0 0 34px!important;width:34px!important;height:34px!important;border:1px solid #d7e5f0!important;border-radius:10px!important;background:#edf5fb!important;color:#285787!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a .ps-menu-item-icon svg{display:block!important;width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:hover .ps-menu-item-icon,
.site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li>a:focus-visible .ps-menu-item-icon{background:#285787!important;border-color:#285787!important;color:#fff!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li.menu-item-has-children>a .ps-submenu-chevron{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:absolute!important;right:10px!important;top:50%!important;transform:translateY(-50%)!important;width:17px!important;height:17px!important;margin:0!important;border:0!important;color:#285787!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li.menu-item-has-children>a .ps-submenu-chevron svg{display:block!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .18s ease!important;}
  .site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li.menu-item-has-children:hover>a .ps-submenu-chevron svg,
.site-header .primary-nav .primary-menu>li.menu-item-has-children>.sub-menu>li.menu-item-has-children:focus-within>a .ps-submenu-chevron svg{transform:rotate(90deg)!important;}
}
.ps-wishlist-heart{display:flex!important;align-items:center!important;justify-content:center!important;width:22px!important;height:22px!important;font-size:0!important;line-height:0!important;}
.ps-product-card-wishlist{display:flex!important;align-items:center!important;justify-content:center!important;}
.ps-product-card-wishlist .ps-wishlist-heart{display:flex!important;align-items:center!important;justify-content:center!important;width:23px!important;height:23px!important;}
.ps-wishlist-heart .ps-heart-svg{display:block!important;width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.ps-product-card-wishlist .ps-wishlist-heart .ps-heart-svg{width:19px!important;height:19px!important;}
.ps-wishlist-toggle.is-added .ps-wishlist-heart .ps-heart-svg{fill:currentColor!important;}
.ps-product-card-share{opacity:1!important;transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease!important;}
.ps-product-card-share svg{display:block!important;width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.ps-product-card-share:hover,
.ps-product-card-share:focus-visible,
.ps-product-card-share.is-sharing{opacity:1!important;background:#285787!important;background-color:#285787!important;color:#fff!important;border-color:#285787!important;box-shadow:0 8px 18px rgba(40,87,135,.2)!important;transform:none!important;}
.ps-product-card-share:hover svg,
.ps-product-card-share:focus-visible svg,
.ps-product-card-share.is-sharing svg{stroke:#fff!important;color:#fff!important;opacity:1!important;}
.ps-filter-leading-icon,
.ps-filter-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;}
.ps-filter-leading-icon svg,
.ps-filter-submit-icon{display:block!important;width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
.ps-filter-submit{gap:9px!important;}
.ps-home-view-product svg{display:block!important;width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transition:transform .2s ease!important;}
.ps-home-view-product:hover svg{transform:translateX(3px)!important;}
body .woocommerce ul.products li.product .button .ps-loop-action-icon{display:inline-block!important;flex:0 0 14px!important;width:14px!important;height:14px!important;max-width:14px!important;margin:0 6px 0 0!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;vertical-align:middle!important;}
body .ps-shop-results ul.products li.product .button{display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;}
body .ps-shop-results ul.products li.product .button:hover,
body .ps-shop-results ul.products li.product .button:focus-visible,
body .ps-shop-results ul.products li.product .button:active{background:#fff!important;background-color:#fff!important;background-image:none!important;color:#285787!important;-webkit-text-fill-color:#285787!important;border:1px solid #285787!important;box-shadow:none!important;transform:none!important;}
body .ps-shop-results ul.products li.product .button:hover svg,
body .ps-shop-results ul.products li.product .button:focus-visible svg{stroke:#285787!important;fill:none!important;}

/* Compact responsive account actions inside the mobile menu. */
@media(max-width:1180px){
  body .site-header .mobile-panel .mobile-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;gap:8px!important;}
  body .site-header .mobile-panel .mobile-actions>.btn,
body .site-header .mobile-panel .mobile-actions>.header-register{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;min-height:38px!important;max-height:40px!important;padding:7px 8px!important;border-radius:9px!important;font-size:11px!important;font-weight:600!important;line-height:1.15!important;letter-spacing:0!important;text-align:center!important;white-space:normal!important;box-shadow:none!important;transform:none!important;box-sizing:border-box!important;}
}
@media(max-width:360px){body .site-header .mobile-panel .mobile-actions{gap:6px!important;}body .site-header .mobile-panel .mobile-actions>.btn,
body .site-header .mobile-panel .mobile-actions>.header-register{font-size:10.5px!important;padding:6px!important;}}

/* Home CTA has no added top margin; its padding alone creates the section rhythm. */
body .ps-home>.cta,
body .ps-home .cta{margin-top:0!important;margin-bottom:0!important;padding-top:clamp(30px,3.5vw,42px)!important;padding-bottom:clamp(30px,3.5vw,42px)!important;}
body .ps-home>.cta .ps-cta-box{margin:0!important;}
@media(max-width:760px){body .ps-home>.cta,
body .ps-home .cta{margin-top:0!important;padding-top:26px!important;padding-bottom:30px!important;}}

/* Single product: open two-column product presentation, responsive natural-size gallery. */

/* The designer canvas keeps its own intrinsic editor dimensions. */

/* When a variation's own price is shown, hide only the original range price above it. */

/* About this product stays directly below the title as a plain text section. */

@media(prefers-reduced-motion:reduce){body .ps-home .ps-hero-slider.ps-home-hero .ps-hero-arrow,
body .ps-product-card-share{transition:none!important;}}

/* How-it-works step 3: use a crisp SVG cart icon in the brand red. */
.ps-how-section .ps-steps-grid > .ps-step:nth-child(3) .ps-step-cart-icon{color:#e74031!important;background:#fff0ed!important;}
.ps-how-section .ps-steps-grid > .ps-step:nth-child(3) .ps-step-cart-icon svg{display:block!important;width:23px!important;height:23px!important;color:#e74031!important;stroke:currentColor!important;}

/* PrintStrokes shared typography: edit these two variables to change site fonts. */
body{font-family:var(--ps-font-body)!important;}
body :is(h1,h2,h3,h4,h5,h6,.section-title,.product_title,.woocommerce-loop-product__title,.footer-title,.ps-shop-results-title,.entry-title,.page-title,.widget-title,.ps-journal-title,.ps-journal-hero-title){font-family:var(--ps-font-heading)!important;}
.site-header .header-icon-link:hover svg,
.site-header .header-icon-link:hover .ps-header-svg,
.site-header .header-icon-link:hover i,
.site-header .ps-header-account:hover svg{color:#fff!important;stroke:#fff!important;fill:currentColor;}

.site-footer .footer-main .footer-copy{color:#526b7c!important;}
.site-footer .footer-main .footer-actions .btn-primary{background:#285787!important;border-color:#285787!important;color:#fff!important;box-shadow:none!important;}
.site-footer .footer-main .footer-actions .btn-footer-ghost{border-color:#9ebdd3!important;color:#285787!important;background:transparent!important;}
.site-footer .footer-main .footer-actions .btn-footer-ghost:hover{background:#285787!important;border-color:#285787!important;color:#fff!important;}
body.woocommerce ul.products li.product .button,
body.woocommerce ul.products li.product .button::before,
body.woocommerce ul.products li.product .button::after{color:#fff!important;-webkit-text-fill-color:#fff!important;}
body.woocommerce ul.products li.product .button i,
body.woocommerce ul.products li.product .button svg{color:#fff!important;fill:#fff!important;stroke:#fff!important;}

@media (max-width:760px) {      .ps-home .ps-hero-slider.ps-home-hero .hero-mini-proof>span{white-space:normal!important;} }

/* Legacy layout note retained for reference; the consolidated v3.11.45 rules below define final product section placement. */

/* Use a single, lighter heading weight across the site without flattening
   context-specific heading colours (dark panels still keep white headings). */
html body :is(#ps-heading-weight-normalizer,h1,h2,h3,h4,h5,h6,.section-title,.product_title,.woocommerce-loop-product__title,.footer-title,.ps-shop-results-title,.entry-title,.page-title,.widget-title,.ps-journal-title,.ps-journal-hero-title){font-family:var(--ps-font-heading, "Poppins", Arial, sans-serif)!important;font-weight:500!important;}
html body :is(.section-copy,.section-head-row p,.ps-product-card p,.ps-category-copy p,.ps-journal-prose p,.ps-product-final-cta p,.ps-product-service-copy){font-family:var(--ps-font-body, "Inter", Arial, sans-serif);}

/* Home product descriptions: short, quiet, and consistently aligned. */
body .ps-home .ps-product-card .ps-home-product-description,
body .ps-home-shop-products .ps-product-card .ps-home-product-description,
body .ps-product-grid .ps-product-card .ps-home-product-description,
body .ps-home-product-description{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;margin:0!important;padding:0!important;color:rgb(102, 119, 132)!important;font-family:var(--ps-font-body, "Inter", Arial, sans-serif)!important;font-size:14px!important;font-weight:400!important;line-height:1.45!important;max-height:2.9em!important;min-height:0!important;}

/* Footer-main is intentionally styled in one place: no repeated gradient,
   shadow, margin or radius declarations in old desktop-only blocks. */
body .site-footer .footer-main{box-sizing:border-box!important;margin-top:-20px!important;padding:24px!important;border:1px solid #e6f0f6!important;border-radius:16px!important;box-shadow:0 7px 18px rgba(8, 43, 61, .055)!important;}

body .site-footer .footer-main .footer-actions .btn-primary{box-shadow:none!important;}

body .site-footer .footer-main .footer-actions .btn-footer-ghost:hover{background:rgba(255,255,255,.12)!important;border-color:#fff!important;color:#fff!important;}
body .site-footer .footer-bottom{margin-top:24px!important;}
@media (max-width: 760px) {
  body .site-footer .footer-main{margin-top:-20px!important;padding:20px!important;}
  body .site-footer .footer-bottom{margin-top:20px!important;}
}

/* Font Awesome social marks in the product share dialog. */
.ps-product-share-option-icon i{display:inline-block!important;font-size:19px!important;line-height:1!important;font-style:normal!important;font-weight:400!important;}
.ps-share-twitter .ps-product-share-option-icon{background:#eaf4ff!important;color:#1d9bf0!important;}
.ps-share-whatsapp .ps-product-share-option-icon{background:#e7f8ed!important;color:#168447!important;}
.ps-share-facebook .ps-product-share-option-icon{background:#e9f1ff!important;color:#2464c8!important;}
.ps-product-share-dialog .ps-product-share-option{font-family:var(--ps-font-body, "Inter", Arial, sans-serif)!important;font-weight:400!important;}
.ps-product-share-dialog .ps-product-share-option strong{font-size:14px!important;font-weight:600!important;}
.ps-product-share-dialog .ps-product-share-option small{font-size:12px!important;font-weight:400!important;}
.ps-product-share-dialog .ps-product-share-option:hover{transform:none!important;box-shadow:none!important;}

/* Compact WooCommerce loop cart icon; suppress any theme/Woo pseudo-icon. */
body .woocommerce ul.products li.product .button::before,
body .woocommerce ul.products li.product .button::after,
body .ps-shop-results ul.products li.product .button::before,
body .ps-shop-results ul.products li.product .button::after{content:none!important;display:none!important;}
body .woocommerce ul.products li.product .button .ps-loop-action-icon,
body .ps-shop-results ul.products li.product .button .ps-loop-action-icon{display:inline-block!important;flex:0 0 14px!important;width:14px!important;height:14px!important;max-width:14px!important;max-height:14px!important;margin:0 6px 0 0!important;font-size:12px!important;vertical-align:middle!important;}
body .woocommerce ul.products li.product .button i,
body .ps-shop-results ul.products li.product .button i{width:14px!important;height:14px!important;font-size:13px!important;line-height:14px!important;}

/* Keep every single-product support section on a full grid row. The main
   gallery and purchase summary remain in their existing two-column row. */

/* Product steps use the same restrained card language as the homepage steps. */

/* Four trust items: a clean, homepage-style set of cards with FA icons. */

/* Reuse the Shipping & Returns dark support-card treatment for product CTA. */

body .ps-shipping-page .ps-support-card .eyebrow{color:#f28c83!important;font-weight:700!important;}
body .ps-shipping-page .ps-support-card h2{margin:0 0 10px!important;color:#fff!important;font-family:var(--ps-font-heading, "Poppins", Arial, sans-serif)!important;font-size:clamp(27px, 3vw, 36px)!important;font-weight:600!important;line-height:1.18!important;letter-spacing:-.025em!important;}
body .ps-shipping-page .ps-support-card p{margin:0!important;color:rgba(255,255,255,.78)!important;font-size:15px!important;font-weight:400!important;line-height:1.7!important;}

/* Set only eyebrow labels to the requested weight in grouped-selector rules. */
.ps-hero-copy .eyebrow{font-weight:700!important;}

/* Related products: add a short description and remove the decorative red underline. */

/* The shop-all CTA uses a red hover state and keeps white text for contrast. */

/* Hide scrollbar chrome in site popups while keeping their overflow scrolling active. */
:where(.ps-product-share-dialog,.ps-review-modal-dialog,.cppd-modal,[role="dialog"]),
:where(.ps-product-share-dialog,.ps-review-modal-dialog,.cppd-modal,[role="dialog"]) *{scrollbar-width:none!important;-ms-overflow-style:none!important;}
:where(.ps-product-share-dialog,.ps-review-modal-dialog,.cppd-modal,[role="dialog"])::-webkit-scrollbar,
:where(.ps-product-share-dialog,.ps-review-modal-dialog,.cppd-modal,[role="dialog"]) *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;}
.ps-product-share-dialog .ps-product-share-chevron i{display:inline-block!important;font-size:16px!important;line-height:1!important;}
.ps-product-share-dialog .ps-share-copy.is-copied .ps-product-share-chevron{color:#1f754d!important;}

:root{--ps-font-heading:"Poppins", Arial, sans-serif;--ps-font-body:"Inter", Arial, sans-serif;--ps-page-title-weight:500;--ps-eyebrow-size:12px;--ps-eyebrow-weight:700;}

/* Use the homepage's lighter heading treatment across content pages. */
html body :is(.ps-home,.ps-about-page,.ps-contact-modern-page,.ps-faq-page,.blog-page,.ps-journal-single,.ps-account-page,.ps-categories-page,.ps-product-category-archive,.ps-shipping-page,.ps-photo-guide,.ps-auth-page,.ps-wishlist-page,.single-post-page,.ps-inner-page,.ps-legal-page) :is(h1,h2,h3,h4,h5,h6,.section-title,.product_title,.woocommerce-loop-product__title,.footer-title,.ps-shop-results-title,.entry-title,.page-title,.widget-title,.ps-journal-title,.ps-journal-hero-title,.ps-contact-intro-title,.ps-account-title){font-family:var(--ps-font-heading)!important;font-weight:500!important;}
html body .site-content :is(h1,h2,h3,h4,h5,h6,.section-title,.product_title,.woocommerce-loop-product__title,.ps-shop-results-title,.entry-title,.page-title,.widget-title,.ps-journal-title,.ps-journal-hero-title){font-family:var(--ps-font-heading)!important;font-weight:500!important;}

html body :is(.eyebrow,.eyebrow-light){font-family:var(--ps-font-body)!important;font-size:var(--ps-eyebrow-size)!important;font-weight:var(--ps-eyebrow-weight)!important;letter-spacing:.09em!important;line-height:1.4!important;}
html body :is(.blog-meta,.ps-shop-results-note){font-weight:500!important;}
html body .ps-category-count{font-size:12px!important;font-weight:700!important;letter-spacing:.09em!important;color:var(--ps-coral,#e74031)!important;}

/* Secondary-page hero headings retain size, spacing and colour but not heavy weight. */
html body :is(.ps-inner-hero-content,.ps-category-archive-content,.ps-contact-modern-hero) :is(h1,h2,.section-title){font-family:var(--ps-font-heading)!important;font-weight:500!important;letter-spacing:-.035em!important;text-wrap:balance;}
html body :is(.ps-inner-hero-content,.ps-category-archive-content) .section-title,
html body .ps-contact-modern-hero .section-title{font-size:clamp(34px,4.1vw,58px)!important;line-height:1.08!important;}
html body .ps-category-archive-content h1{font-size:clamp(36px,5vw,60px)!important;line-height:1.04!important;font-weight:500!important;}
html body :is(.ps-category-archive-content,.ps-contact-modern-hero,.ps-inner-hero-content) .eyebrow{color:#fff!important;font-weight:700!important;}

/* Product category directory uses the same restrained cards as the homepage. */
html body .ps-category-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;}
html body .ps-category-directory-card{min-width:0!important;border:1px solid #e5e8eb!important;border-radius:16px!important;background:#fff!important;box-shadow:0 4px 16px rgba(16,47,64,.035)!important;transform:none!important;transition:border-color .2s ease!important;}
html body .ps-category-directory-card:hover{border-color:#b8c8d5!important;box-shadow:none!important;transform:none!important;}
html body .ps-category-directory-image{display:block!important;aspect-ratio:1.35 / 1!important;background:#f0f4f7!important;overflow:hidden!important;}
html body .ps-category-directory-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;transition:transform .35s ease!important;}
html body .ps-category-directory-card:hover .ps-category-directory-image img{transform:scale(1.035)!important;}
html body .ps-category-directory-arrow{right:13px!important;bottom:13px!important;display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border:1px solid #dce7ef!important;border-radius:50%!important;background:rgba(255,255,255,.97)!important;box-shadow:0 3px 10px rgba(16,47,64,.08)!important;color:#164D68!important;transform:none!important;}
html body .ps-category-directory-arrow svg,
html body .ps-inline-arrow{display:block!important;width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
html body .ps-category-directory-card:hover .ps-category-directory-arrow{transform:none!important;}
html body .ps-category-directory-copy{padding:20px 21px 22px!important;}
html body .ps-category-directory-copy h3{margin:7px 0 8px!important;font-size:clamp(21px,2vw,25px)!important;line-height:1.2!important;letter-spacing:-.025em!important;font-weight:500!important;}
html body .ps-category-directory-copy p{min-height:0!important;margin:0 0 15px!important;color:#667784!important;font-size:13px!important;line-height:1.65!important;font-weight:400!important;}
html body .ps-category-directory-copy .text-link{display:inline-flex!important;align-items:center!important;gap:7px!important;width:max-content!important;max-width:100%!important;white-space:nowrap!important;font-weight:500!important;line-height:1.4!important;}
html body .ps-category-directory-copy .text-link .ps-inline-arrow{display:inline-block!important;flex:0 0 17px!important;align-self:center!important;}
html body .ps-category-directory-head > .btn{font-weight:500!important;}
html body .ps-category-directory-head > .btn .ps-inline-arrow{width:15px!important;height:15px!important;}

/* Category archive: the category name appears once, in the hero. */
html body .ps-product-category-archive .ps-commerce-category-hero{position:relative!important;background-image:none!important;overflow:hidden!important;}
html body .ps-product-category-archive .ps-inner-hero-category-media{position:absolute!important;inset:0!important;z-index:0!important;overflow:hidden!important;}
html body .ps-product-category-archive .ps-inner-hero-category-media img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;}
html body .ps-product-category-archive .ps-commerce-category-hero .ps-inner-hero-overlay{z-index:1!important;}
html body .ps-product-category-archive .ps-commerce-category-hero .ps-inner-hero-content{z-index:2!important;}
html body .ps-product-category-archive .ps-shop-results .woocommerce-products-header,
html body .ps-product-category-archive .woocommerce-content .woocommerce-products-header{display:none!important;}
html body .ps-product-category-archive .ps-shop-results .woocommerce-products-header + .term-description{display:none!important;}
html body .ps-shop-results-head{align-items:flex-end!important;gap:16px!important;}
html body .ps-shop-results-head-no-title{align-items:center!important;justify-content:space-between!important;gap:16px!important;}
html body .ps-shop-results-title{margin:0!important;font-family:var(--ps-font-heading)!important;font-size:clamp(26px,3vw,34px)!important;line-height:1.15!important;font-weight:500!important;letter-spacing:-.03em!important;color:#17394b!important;}
html body .ps-category-results-description{margin:0!important;color:#667784!important;font:400 14px/1.65 var(--ps-font-body)!important;}
html body .ps-category-products-shell{padding-bottom:30px!important;}
html body .ps-product-category-archive .ps-shop-results ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box!important;}
html body .ps-product-category-archive .ps-shop-results ul.products::before,
html body .ps-product-category-archive .ps-shop-results ul.products::after{display:none!important;content:none!important;}
html body .ps-product-category-archive .ps-shop-results ul.products li.product{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:auto!important;min-width:0!important;max-width:none!important;float:none!important;clear:none!important;margin:0!important;padding:0 0 14px!important;box-sizing:border-box!important;}
html body .ps-product-category-archive .ps-shop-results ul.products li.product > a.woocommerce-LoopProduct-link,
html body .ps-product-category-archive .ps-shop-results ul.products li.product > a.woocommerce-loop-product__link{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;min-width:0!important;max-width:100%!important;flex:1 1 auto!important;box-sizing:border-box!important;}
html body .ps-product-category-archive .ps-shop-results ul.products li.product > a img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:1 / 1!important;object-fit:cover!important;margin:0 0 12px!important;box-sizing:border-box!important;}
html body .ps-product-category-archive .ps-shop-results ul.products li.product .woocommerce-loop-product__title{margin:0 0 8px!important;font-size:15px!important;line-height:1.35!important;font-weight:500!important;}
html body .ps-product-category-archive .ps-shop-results ul.products li.product .price{font-weight:500!important;}
html body .ps-product-category-archive .ps-shop-results ul.products li.product .button{font-weight:500!important;}
html body .ps-product-category-archive .ps-shop-filter-panel :is(h2,h3,h4,strong),
html body .ps-product-category-archive .ps-shop-filter-panel :is(p,label,span,select,input,option),
html body .ps-product-category-archive .ps-filter-field > span,
html body .ps-product-category-archive .ps-filter-field select,
html body .ps-product-category-archive .ps-filter-field input,
html body .ps-product-category-archive .ps-filter-price-group > span{font-weight:400!important;}
html body .ps-product-category-archive .ps-filter-field > span,
html body .ps-product-category-archive .ps-filter-price-group > span{color:#667784!important;font-size:12px!important;}

/* One shared dark CTA treatment, also used by Shipping & Returns. */
html body .ps-shared-cta-section{padding-bottom:clamp(42px,6vw,76px)!important;}
html body .ps-shared-cta-section .container{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;}
html body .ps-shared-cta-section .ps-support-card{display:flex!important;width:100%!important;box-sizing:border-box!important;align-items:center!important;gap:26px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:18px!important;background:#164D68!important;box-shadow:0 16px 38px rgba(8,31,45,.12)!important;}
html body .ps-shared-cta-section .ps-support-card h2{max-width:760px!important;margin:0 0 10px!important;color:#fff!important;font:500 clamp(26px,3vw,36px)/1.16 var(--ps-font-heading)!important;letter-spacing:-.03em!important;text-wrap:balance;}
html body .ps-shared-cta-section .ps-support-card p{max-width:700px!important;margin:0!important;color:rgba(255,255,255,.78)!important;font:400 15px/1.7 var(--ps-font-body)!important;}
html body .ps-shared-cta-section .ps-support-card .eyebrow{margin:0 0 8px!important;color:#f28c83!important;font-weight:700!important;}
html body .ps-shared-cta-section .ps-support-card .btn-light{flex:0 0 auto!important;font-weight:500!important;}
html body .ps-shared-cta-section .ps-support-card .btn-light svg{display:block!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

/* Crisp inline icon sizing; avoid fallback-font arrows on secondary pages. */
html body .ps-contact-method-icon svg{display:block!important;width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
html body .ps-contact-method-arrow svg{display:block!important;width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
html body .ps-contact-hero-trust i svg{display:block!important;width:11px!important;height:11px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
html body .account-nav-link .account-nav-icon{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;flex:0 0 38px!important;border-radius:11px!important;background:#eef5fb!important;color:#285787!important;}
html body .account-nav-link .account-nav-icon svg{display:block!important;width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
html body .account-nav-link:hover .account-nav-icon,
html body .account-nav-link.is-active .account-nav-icon{background:#285787!important;color:#fff!important;}

/* Page-specific card consistency and quieter secondary text. */
html body .ps-contact-method{border-radius:16px!important;box-shadow:0 4px 16px rgba(16,47,64,.035)!important;}
html body .ps-contact-method-content small{font-size:12px!important;letter-spacing:.09em!important;font-weight:700!important;}
html body .ps-contact-method-content strong{font-size:14px!important;font-weight:500!important;}
html body .ps-contact-hero-trust{font-size:12px!important;font-weight:500!important;}
html body .ps-contact-intro-panel h2,
html body .ps-contact-form-heading h2{font-size:clamp(28px,3vw,38px)!important;line-height:1.15!important;letter-spacing:-.035em!important;font-weight:500!important;}
html body .ps-contact-promise-list strong{font-weight:500!important;}

html body .ps-faq-item{border-radius:15px!important;}
html body .ps-faq-item summary{font-size:16px!important;font-weight:500!important;line-height:1.45!important;}
html body .ps-faq-answer p{font-size:14px!important;line-height:1.75!important;font-weight:400!important;}
html body .blog-filter-row .section-title{max-width:800px!important;margin:8px 0 0!important;font-size:clamp(28px,3vw,38px)!important;line-height:1.15!important;letter-spacing:-.035em!important;font-weight:500!important;}
html body .blog-card-large{border-radius:16px!important;box-shadow:0 4px 16px rgba(16,47,64,.035)!important;}
html body .blog-card-large .blog-card-body h3{font-size:clamp(20px,2vw,24px)!important;line-height:1.25!important;letter-spacing:-.02em!important;font-weight:500!important;}
html body .blog-card-large .blog-card-body p{font-size:14px!important;line-height:1.7!important;font-weight:400!important;}
html body .account-guest-card,
html body .account-welcome-card{border-radius:18px!important;box-shadow:0 4px 18px rgba(16,47,64,.045)!important;}
html body .account-guest-copy h1,
html body .account-welcome-copy h1{font-size:clamp(28px,3vw,42px)!important;line-height:1.12!important;font-weight:500!important;}
html body .account-stat-card strong{font-weight:500!important;}
html body .account-nav-link strong{font-weight:500!important;}
html body .account-content-head h2{font-size:clamp(24px,2.5vw,30px)!important;font-weight:500!important;}
html body .ps-account-page .account-section{padding-bottom:clamp(28px,4vw,48px)!important;}

@media (max-width:1050px) {
  html body .ps-category-directory-grid,
html body .blog-card-grid-lg{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body .ps-product-category-archive .ps-shop-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:900px) {
  html body .ps-contact-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;transform:translateY(-10px)!important;}
  html body .ps-shared-cta-section .ps-support-card{align-items:flex-start!important;flex-direction:column!important;}
  html body .ps-shared-cta-section .ps-support-card .btn-light{align-self:flex-start!important;}
}
@media (max-width:760px) {
  html body .ps-category-directory-grid,
html body .blog-card-grid-lg{grid-template-columns:1fr!important;}
  html body .ps-category-directory-head{align-items:flex-start!important;flex-direction:column!important;gap:14px!important;}
  html body .ps-category-directory-head>.btn{align-self:flex-start!important;margin-top:0!important;}
  html body .ps-contact-method-grid{grid-template-columns:1fr!important;}
  html body .ps-contact-main-grid{grid-template-columns:minmax(0,1fr)!important;}
  html body .ps-shared-cta-section{padding-top:14px!important;padding-bottom:44px!important;}
  html body .ps-shared-cta-section .container{width:calc(100% - 28px)!important;}
  html body .ps-shared-cta-section .ps-support-card{gap:18px!important;padding:26px 22px!important;border-radius:16px!important;}
  html body .ps-shared-cta-section .ps-support-card h2{font-size:clamp(24px,7vw,31px)!important;}
  html body .ps-shared-cta-section .ps-support-card p{font-size:14px!important;}
  html body .ps-shared-cta-section .ps-support-card .btn-light{width:100%!important;box-sizing:border-box!important;}
  html body .ps-category-archive-content{padding-top:58px!important;padding-bottom:58px!important;}
  html body .ps-category-archive-content h1{font-size:clamp(34px,8.5vw,46px)!important;}
  html body .ps-shop-results-head,
html body .ps-shop-results-head-no-title{align-items:flex-start!important;flex-direction:column!important;}
  html body .ps-category-results-description{font-size:13px!important;}
  html body .ps-contact-modern-hero .ps-inner-hero-content{padding-top:52px!important;padding-bottom:56px!important;}
  html body .ps-contact-form-panel{padding:23px 18px!important;}
  html body .account-guest-card,
html body .account-welcome-card{grid-template-columns:minmax(0,1fr)!important;padding:24px!important;gap:17px!important;}
  html body .account-logged-out-actions,
html body .account-welcome-actions{grid-column:auto!important;width:100%!important;flex-wrap:wrap!important;}
  html body .account-logged-out-actions .btn,
html body .account-welcome-actions .btn{flex:1 1 140px!important;}
  html body .account-content-head{align-items:flex-start!important;gap:10px!important;flex-wrap:wrap!important;}
  html body .ps-product-category-archive .ps-shop-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
}
@media (max-width:480px) {
  html body .ps-category-directory-copy{padding:18px!important;}
  html body .ps-contact-hero-trust{align-items:flex-start!important;flex-direction:column!important;}
  html body .ps-category-archive-actions{flex-direction:column!important;align-items:stretch!important;}
  html body .ps-category-archive-actions .btn{width:100%!important;box-sizing:border-box!important;}
  html body .account-logged-out-actions,
html body .account-welcome-actions{flex-direction:column!important;align-items:stretch!important;}
  html body .account-logged-out-actions .btn,
html body .account-welcome-actions .btn{width:100%!important;flex:auto!important;}
  html body .ps-product-category-archive .ps-shop-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body .ps-product-category-archive .ps-shop-results ul.products li.product .woocommerce-loop-product__title{font-size:14px!important;}
}

/* PrintStrokes v3.11.50 — clean product-detail layout and responsive gallery */
html body .ps-shop-filter .ps-filter-intro .eyebrow,
html body .woocommerce-page-wrap .ps-shop-filter .ps-filter-intro .eyebrow{font-size:12px!important;font-weight:700!important;letter-spacing:.09em!important;line-height:1.4!important;}
html body .ps-shop-filter .ps-filter-intro strong,
html body .woocommerce-page-wrap .ps-shop-filter .ps-filter-intro strong{font-size:19px!important;font-weight:500!important;line-height:1.3!important;}
html body .ps-shop-filter .ps-filter-intro small,
html body .woocommerce-page-wrap .ps-shop-filter .ps-filter-intro small{font-size:13px!important;font-weight:400!important;line-height:1.55!important;}
html body .ps-shop-results .ps-shop-results-note{font-size:12px!important;font-weight:500!important;}
html body .ps-shop-filter .ps-filter-field>span,
html body .ps-shop-filter .ps-filter-price-group>span{font-size:12px!important;font-weight:400!important;letter-spacing:.06em!important;}
html body .ps-shop-filter .ps-filter-price-fields label,
html body .ps-shop-filter .ps-filter-price-fields label span{font-size:12px!important;font-weight:400!important;}
html body .ps-shop-sidebar .ps-filter-price-fields input{font-size:12px!important;}

html body.ps-faq-page,
html body .ps-faq-page,
html body .ps-contact-modern-page,
html body .ps-shipping-page,
html body.woocommerce-checkout,
html body.woocommerce-checkout #main-content,
html body.woocommerce-checkout .woocommerce-content{background:#fff!important;}
html body .ps-shared-cta-section{margin-top:0!important;padding-top:8px!important;background:#fff!important;}

html body .ps-faq-page .section:has(.ps-faq-grid){padding-bottom:20px!important;}
html body .ps-shipping-page .section:has(.ps-policy-grid){padding-bottom:20px!important;}
html body .ps-contact-main-section{padding-bottom:16px!important;}
html body .ps-contact-bottom-cta{padding-top:8px!important;padding-bottom:38px!important;background:#fff!important;}
html body .ps-shared-cta-section .ps-support-card{box-shadow:0 12px 28px rgba(22,77,104,.12)!important;}
html body .ps-wishlist-card-image{height:220px!important;min-height:0!important;aspect-ratio:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:14px!important;box-sizing:border-box!important;background:#fff!important;}
html body .ps-wishlist-card-image img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;padding:0!important;object-fit:contain!important;object-position:center!important;}
@media(max-width:600px){html body .ps-wishlist-card-image{height:176px!important;padding:10px!important;}}

/* Checkout uses a dedicated layout rather than the shop filter/sidebar layout. */
body.woocommerce-checkout .ps-inner-hero-commerce{min-height:0!important;padding:38px 0 30px!important;background:#fff!important;background-image:none!important;}
body.woocommerce-checkout .ps-inner-hero-commerce .ps-inner-hero-overlay{display:none!important;}
body.woocommerce-checkout .ps-inner-hero-commerce .ps-inner-hero-content{padding-top:0!important;padding-bottom:0!important;}
body.woocommerce-checkout .ps-inner-hero-commerce .section-title{max-width:780px!important;margin:7px 0 9px!important;color:#164D68!important;font-size:clamp(30px,4vw,46px)!important;line-height:1.12!important;font-weight:500!important;}
body.woocommerce-checkout .ps-inner-hero-commerce .section-copy{max-width:680px!important;margin:0!important;color:#667784!important;font-size:15px!important;line-height:1.65!important;}
body.woocommerce-checkout .ps-checkout-shell{padding-top:0!important;padding-bottom:58px!important;background:#fff!important;}
body.woocommerce-checkout .ps-checkout-container{width:min(1240px,calc(100% - 48px))!important;max-width:1240px!important;}
body.woocommerce-checkout .ps-checkout-layout{min-width:0!important;}
body.woocommerce-checkout .ps-checkout-layout form.checkout{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)!important;align-items:start!important;gap:20px 24px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;}
body.woocommerce-checkout #customer_details{grid-column:1!important;grid-row:1 / span 3!important;width:auto!important;margin:0!important;padding:24px!important;border:1px solid #e0eaf1!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(22,77,104,.055)!important;}
body.woocommerce-checkout #order_review_heading{grid-column:2!important;margin:0!important;padding:20px 22px 0!important;border:1px solid #e0eaf1!important;border-bottom:0!important;border-radius:16px 16px 0 0!important;background:#fff!important;color:#164D68!important;font-size:21px!important;font-weight:500!important;}
body.woocommerce-checkout #order_review{grid-column:2!important;margin:0!important;padding:12px 22px 22px!important;border:1px solid #e0eaf1!important;border-top:0!important;border-radius:0 0 16px 16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(22,77,104,.055)!important;}
body.woocommerce-checkout #payment{background:#f7fafc!important;border-radius:12px!important;margin-top:18px!important;}
body.woocommerce-checkout #payment ul.payment_methods{padding:16px!important;border-bottom:1px solid #e2ebf1!important;}
body.woocommerce-checkout #payment div.form-row{padding:16px!important;}
body.woocommerce-checkout #place_order{width:100%!important;min-height:50px!important;border:1px solid #164D68!important;border-radius:10px!important;background:#164D68!important;color:#fff!important;font-size:14px!important;font-weight:600!important;box-shadow:none!important;}
body.woocommerce-checkout #place_order:hover{background:#103e54!important;border-color:#103e54!important;transform:none!important;}
body.woocommerce-checkout .woocommerce form .form-row{margin-bottom:13px!important;}
body.woocommerce-checkout .woocommerce form .form-row label{margin-bottom:6px!important;color:#425a69!important;font-size:12px!important;font-weight:500!important;}
body.woocommerce-checkout .woocommerce form .form-row input.input-text,
body.woocommerce-checkout .woocommerce form .form-row textarea,
body.woocommerce-checkout .woocommerce form .form-row select{min-height:44px!important;height:44px!important;border:1px solid #d8e4ec!important;border-radius:9px!important;box-shadow:none!important;background:#fff!important;}
body.woocommerce-checkout .woocommerce form .form-row textarea{height:auto!important;min-height:100px!important;padding:12px!important;}
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-error{margin:0 0 18px!important;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table{margin:0!important;border:0!important;border-radius:0!important;}
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{padding:12px 0!important;}
@media(max-width:850px){body.woocommerce-checkout .ps-checkout-container{width:calc(100% - 32px)!important;}body.woocommerce-checkout .ps-checkout-layout form.checkout{grid-template-columns:minmax(0,1fr)!important;gap:16px!important;}body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{grid-column:1!important;grid-row:auto!important;}body.woocommerce-checkout #customer_details{padding:18px!important;}body.woocommerce-checkout #order_review_heading{padding:18px 18px 0!important;}body.woocommerce-checkout #order_review{padding:10px 18px 18px!important;}body.woocommerce-checkout .ps-inner-hero-commerce{padding:28px 0 22px!important;}}

/* Solid PrintStrokes blue for all final CTA surfaces; keep the original blue logo legible on its light plate. */
html body .ps-shared-cta-section .ps-support-card,
html body .ps-contact-bottom-cta .ps-support-card{background:#164D68!important;background-image:none!important;border-color:#164D68!important;color:#fff!important;}

html body .site-footer .footer-main{background:#EEF6FC!important;background-image:none!important;}
html body .site-footer .footer-main :is(.footer-title,h2,h3,h4,p,li,a:not(.btn),.footer-links){color:#285787!important;}
html body .site-footer .footer-main .footer-brand{display:inline-flex!important;align-items:center!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;background-image:none!important;box-shadow:none!important;}
html body .site-footer .footer-main .footer-brand .site-logo,
html body .site-footer .footer-main .footer-brand img{filter:none!important;opacity:1!important;}

body .site-footer .footer-main{box-shadow:0 8px 24px rgba(8,43,61,.08)!important;}
body .site-footer .footer-main .footer-copy,
body .site-footer .footer-main p,
body .site-footer .footer-main li{color:#526B7C!important;}

body .site-footer .footer-main{background:#EEF6FC!important;background-image:none!important;border-color:#D5E7F4!important;box-shadow:rgba(8, 43, 61, 0.08) 0 8px 24px!important;}
body .site-footer .footer-main .footer-copy{color:#526B7C!important;}
body .site-footer .footer-main .footer-actions .btn-primary{background:#164D68!important;border-color:#164D68!important;color:#fff!important;}
body .site-footer .footer-main .footer-actions .btn-footer-ghost{border:1px solid #9EBDD3!important;color:#164D68!important;background:transparent!important;}

/* Footer fixes kept global; the product-detail stylesheet is intentionally page-scoped. */
.site-footer .footer-main .footer-brand {background:transparent!important;background-image:none!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;}
.site-footer .footer-main .footer-actions .btn-footer-ghost:hover,
.site-footer .footer-main .footer-actions .btn-footer-ghost:focus-visible {background:#285787!important;border-color:#285787!important;color:#fff!important;}

html body .site-footer .footer-main .footer-copy{color:#285787!important;}

html body .site-footer .footer-main .footer-actions a.btn.btn-footer-ghost:hover,
html body .site-footer .footer-main .footer-actions a.btn.btn-footer-ghost:focus-visible {background:#285787!important;background-image:none!important;border-color:#285787!important;color:#fff!important;box-shadow:none!important;}

/* Home: shorter image panels so category and product cards feel balanced. */
body .ps-home .ps-categories .ps-category-image {aspect-ratio:1.82 / 1!important;height:auto!important;max-height:225px!important;overflow:hidden!important;}
body .ps-home .ps-categories .ps-category-image img {display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;}
body .ps-home-shop-products .section-head-row .section-copy {margin-bottom:0!important;}
body .ps-home-shop-products .ps-product-image-wrap {aspect-ratio:1.28 / 1!important;height:auto!important;max-height:225px!important;min-height:0!important;overflow:hidden!important;}
body .ps-home-shop-products .ps-product-image-wrap > .ps-product-image {display:block!important;width:100%!important;height:100%!important;aspect-ratio:auto!important;overflow:hidden!important;}
body .ps-home-shop-products .ps-product-image-wrap > .ps-product-image img {display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;}
@media (max-width: 760px) {
  body .ps-home .ps-categories .ps-category-image {aspect-ratio:1.48 / 1!important;max-height:180px!important;}
  body .ps-home-shop-products .ps-product-image-wrap {max-height:190px!important;}
}
@media (max-width: 480px) {
  body .ps-home .ps-categories .ps-category-image {aspect-ratio:1.8 / 1!important;max-height:220px!important;}
  body .ps-home-shop-products .ps-product-image-wrap {max-height:225px!important;}
}

/* Shop archives: prevent the WooCommerce sale label from stretching into an oval. */
body .ps-shop-results ul.products li.product > .onsale,
body .ps-shop-results ul.products li.product .onsale,
body.woocommerce-shop ul.products li.product > .onsale,
body.post-type-archive-product ul.products li.product > .onsale,
body.tax-product_cat ul.products li.product > .onsale,
body.single-product .related ul.products li.product > .onsale,
body.single-product .upsells ul.products li.product > .onsale {position:absolute!important;top:12px!important;left:12px!important;right:auto!important;bottom:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:max-content!important;min-width:0!important;max-width:calc(100% - 24px)!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important;padding:7px 11px!important;border:0!important;border-radius:999px!important;background:#e74031!important;color:#fff!important;font-size:11px!important;font-weight:800!important;line-height:1.15!important;letter-spacing:.01em!important;text-align:center!important;white-space:nowrap!important;box-sizing:border-box!important;box-shadow:0 4px 12px rgba(231,64,49,.15)!important;transform:none!important;z-index:6!important;}
body .ps-shop-results ul.products li.product > .onsale::before,
body .ps-shop-results ul.products li.product > .onsale::after,
body.woocommerce-shop ul.products li.product > .onsale::before,
body.woocommerce-shop ul.products li.product > .onsale::after,
body.post-type-archive-product ul.products li.product > .onsale::before,
body.post-type-archive-product ul.products li.product > .onsale::after,
body.tax-product_cat ul.products li.product > .onsale::before,
body.tax-product_cat ul.products li.product > .onsale::after {content:none!important;display:none!important;}
@media (max-width: 760px) {
  body .ps-shop-results ul.products li.product > .onsale,
  body.woocommerce-shop ul.products li.product > .onsale,
  body.post-type-archive-product ul.products li.product > .onsale,
  body.tax-product_cat ul.products li.product > .onsale {top:10px!important;left:10px!important;padding:6px 9px!important;font-size:10px!important;}
}

/* Footer brand should sit flush with the supporting copy. */
.site-footer .footer-main .footer-brand,
body .site-footer .footer-main .footer-brand {margin-bottom:0!important;}

@media (min-width: 761px) {
  body.woocommerce-shop .ps-shop-sidebar,
  body.tax-product_cat .ps-shop-sidebar {top:122px!important;}
}
/* A review-validation toast must always sit above the review modal backdrop. */
body.single-product .ps-theme-toast,
body.single-product .ps-theme-toast.ps-toast-error {z-index:1000005!important;}
