/*
Theme Name: Trust Point
Theme URI: https://trustpointgroupcompanies.com
Author: Trust Point Group of Companies
Description: Responsive cream, brown and gold WooCommerce theme for Trust Point Group of Companies. Compatible with Elementor.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: trust-point
*/
:root{--tp-cream:#f8f4ed;--tp-paper:#fffdf9;--tp-brown:#493326;--tp-brown2:#6e4b35;--tp-gold:#b58b4b;--tp-muted:#756b61;--tp-border:#e7ded2;--tp-shadow:0 12px 32px rgba(55,37,24,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--tp-paper);color:var(--tp-brown);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--tp-brown2);text-decoration:none}a:hover{color:var(--tp-gold)}h1,h2,h3,h4{font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.15;color:var(--tp-brown);margin:0 0 18px}h1{font-size:clamp(2.5rem,5vw,4.8rem)}h2{font-size:clamp(2rem,3.5vw,3rem)}h3{font-size:1.4rem}p{margin:0 0 18px}.tp-container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.tp-kicker{font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tp-gold);font-weight:700;margin-bottom:14px}.tp-section{padding:88px 0}.tp-section--soft{background:var(--tp-cream)}.tp-section-heading{text-align:center;max-width:720px;margin:0 auto 42px}.tp-section-heading p{color:var(--tp-muted)}.tp-btn,.button,button,input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 23px;background:var(--tp-brown);color:#fff!important;border:1px solid var(--tp-brown);font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background .2s,border-color .2s}.tp-btn:hover,.button:hover,button:hover,input[type=submit]:hover{background:var(--tp-gold);border-color:var(--tp-gold);color:#fff!important}.tp-btn--gold{background:var(--tp-gold);border-color:var(--tp-gold)}.tp-btn--outline{background:transparent;color:var(--tp-brown)!important}.tp-header{background:var(--tp-paper);border-bottom:1px solid var(--tp-border);position:relative;z-index:30}.tp-header-inner{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:28px}.tp-brand{display:flex;align-items:center;flex:0 0 auto}.tp-brand img{width:210px;max-height:86px;object-fit:contain}.tp-nav{display:flex;align-items:center;gap:34px}.tp-nav a{font-size:.9rem;color:var(--tp-brown);font-weight:600}.tp-nav a:hover,.tp-nav .current-menu-item>a{color:var(--tp-gold)}.tp-cart{display:inline-flex;align-items:center;gap:9px;font-size:.9rem;font-weight:700;white-space:nowrap}.tp-cart-icon{font-size:1.25rem;line-height:1}.tp-cart-count{background:var(--tp-gold);color:white;border-radius:50%;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem}.tp-menu-toggle{display:none;background:transparent;color:var(--tp-brown)!important;border:1px solid var(--tp-border);padding:8px 12px}.tp-mobile-nav{display:none;padding:0 24px 20px}.tp-mobile-nav a{display:block;padding:10px 0;border-bottom:1px solid var(--tp-border);font-weight:600}.tp-footer{background:var(--tp-brown);color:#f8f0e5;padding:28px 0}.tp-footer-inner{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.tp-footer-links{display:flex;justify-content:center;gap:22px;flex-wrap:wrap}.tp-footer a{color:#f8f0e5;font-size:.88rem}.tp-footer a:hover{color:#dfbd82}.tp-copyright{font-size:.82rem;color:#dfd1c1}.tp-hero{position:relative;min-height:540px;display:flex;align-items:center;overflow:hidden;background:var(--tp-brown);color:#fff}.tp-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tp-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,24,16,.82) 0%,rgba(38,24,16,.58) 45%,rgba(38,24,16,.10) 100%)}.tp-hero-content{position:relative;z-index:1;padding:90px 0;max-width:680px;color:#fff}.tp-hero h1,.tp-hero p{color:#fff}.tp-hero h1 em{font-style:normal;color:#e0bd83}.tp-hero p{max-width:570px;color:#f5ede3;font-size:1.08rem}.tp-hero .tp-kicker{color:#e0bd83}.tp-slider-dots{display:flex;gap:8px;margin-top:30px}.tp-slider-dots span{display:block;width:25px;height:3px;background:rgba(255,255,255,.55)}.tp-slider-dots span:first-child{background:#dfbd82}.tp-grid{display:grid;gap:24px}.tp-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.tp-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.tp-category-card{background:#fff;border:1px solid var(--tp-border);transition:transform .2s,box-shadow .2s}.tp-category-card:hover{transform:translateY(-4px);box-shadow:var(--tp-shadow)}.tp-category-card img{width:100%;height:280px;object-fit:cover}.tp-category-body{padding:20px 20px 24px}.tp-category-body h3{margin-bottom:7px}.tp-category-body p{color:var(--tp-muted);font-size:.92rem;margin-bottom:12px}.tp-text-link{font-size:.83rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.tp-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px}.tp-split-image{width:100%;height:470px;object-fit:cover}.tp-split-copy{max-width:540px}.tp-split-copy p{color:var(--tp-muted)}.tp-values-card{padding:28px;background:#fff;border:1px solid var(--tp-border);height:100%}.tp-values-card .tp-value-icon{font-size:1.8rem;color:var(--tp-gold);margin-bottom:12px}.tp-style-card{position:relative;overflow:hidden;background:var(--tp-brown);color:#fff;min-height:360px}.tp-style-card img{width:100%;height:360px;object-fit:cover;transition:transform .35s}.tp-style-card:hover img{transform:scale(1.035)}.tp-style-card:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(31,20,14,.86))}.tp-style-copy{position:absolute;z-index:1;left:22px;right:22px;bottom:22px;color:#fff}.tp-style-copy h3{color:#fff;margin-bottom:5px}.tp-style-copy p{color:#f4e9dc;font-size:.9rem;margin-bottom:10px}.tp-style-copy a{color:#e7c68f;font-weight:700}.tp-testimonial{padding:30px;background:#fff;border:1px solid var(--tp-border);height:100%}.tp-quote{font-family:Georgia,serif;font-size:2.7rem;line-height:1;color:var(--tp-gold)}.tp-testimonial p{color:var(--tp-muted);font-style:italic}.tp-cta{position:relative;isolation:isolate;padding:82px 24px;text-align:center;color:#fff;background:var(--tp-brown);overflow:hidden}.tp-cta:before{content:'';position:absolute;inset:0;z-index:-2;background-image:var(--tp-cta-image);background-size:cover;background-position:center}.tp-cta:after{content:'';position:absolute;inset:0;z-index:-1;background:rgba(42,27,18,.72)}.tp-cta h2,.tp-cta p{color:#fff}.tp-cta p{max-width:650px;margin:0 auto 25px;color:#f1e7da}.tp-page-hero{background:var(--tp-cream);padding:72px 0;text-align:center;border-bottom:1px solid var(--tp-border)}.tp-page-hero p{max-width:650px;margin:0 auto;color:var(--tp-muted)}.tp-contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px}.tp-contact-info{background:var(--tp-cream);padding:32px}.tp-contact-info h3{margin-top:24px}.tp-contact-form{padding:32px;border:1px solid var(--tp-border);background:#fff}.tp-contact-form label{display:block;font-weight:700;font-size:.9rem;margin-bottom:6px}.tp-contact-form input,.tp-contact-form textarea,.tp-contact-form select{width:100%;border:1px solid #d9cfc2;background:#fff;padding:13px;margin-bottom:16px;color:var(--tp-brown)}.tp-contact-form textarea{min-height:150px}.tp-faq details{border-bottom:1px solid var(--tp-border);padding:18px 0}.tp-faq summary{cursor:pointer;font-weight:700}.tp-policy{max-width:900px;margin:0 auto;padding:68px 0}.tp-policy h1{font-size:clamp(2.2rem,4vw,3.6rem)}.tp-policy h2{font-size:1.7rem;margin-top:34px}.tp-policy h3{margin-top:24px}.tp-policy p,.tp-policy li{color:#55483e}.tp-policy ul{padding-left:24px}.tp-policy .tp-policy-date{color:var(--tp-muted);font-size:.9rem}.woocommerce .woocommerce-breadcrumb{color:var(--tp-muted);font-size:.84rem}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:0 0 18px!important;background:#fff;border:1px solid var(--tp-border);text-align:left;overflow:hidden}.woocommerce ul.products li.product a img{width:100%;height:280px;object-fit:cover;margin:0 0 16px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Georgia,serif;font-size:1.12rem;padding:0 18px 6px!important;color:var(--tp-brown)}.woocommerce ul.products li.product .price{padding:0 18px;color:var(--tp-brown)!important;font-weight:700}.woocommerce ul.products li.product .button{margin:14px 18px 0!important}.woocommerce-result-count,.woocommerce-ordering{font-size:.9rem;color:var(--tp-muted)}.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:48px}.woocommerce div.product .woocommerce-product-gallery,.woocommerce div.product .summary{width:100%!important;float:none!important}.woocommerce div.product .product_title{font-size:2.5rem}.woocommerce div.product p.price{color:var(--tp-brown)!important;font-weight:700}.woocommerce div.product .woocommerce-product-gallery img{background:var(--tp-cream)}.woocommerce table.shop_table{border-color:var(--tp-border)}.woocommerce input.input-text,.woocommerce textarea,.woocommerce select{border:1px solid #d9cfc2;padding:12px}.woocommerce-message,.woocommerce-info{border-top-color:var(--tp-gold)}.woocommerce-message:before,.woocommerce-info:before{color:var(--tp-gold)}.tp-shop-intro{padding:50px 0 25px}.tp-shop-intro h1{font-size:clamp(2.2rem,4vw,3.6rem)}.tp-category-filter{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 30px}.tp-category-filter a{border:1px solid var(--tp-border);padding:9px 14px;font-size:.85rem}.tp-category-filter a:hover{background:var(--tp-brown);color:white}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.elementor-page .tp-policy{padding-top:45px}@media(max-width:1024px){.tp-grid--4,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tp-nav{gap:20px}.tp-brand img{width:180px}.tp-split{gap:36px}.tp-category-card img{height:250px}}@media(max-width:767px){.tp-container{width:min(100% - 32px,1180px)}.tp-header-inner{min-height:82px;gap:12px}.tp-brand img{width:150px;max-height:68px}.tp-nav{display:none}.tp-menu-toggle{display:inline-flex}.tp-mobile-nav.is-open{display:block}.tp-cart{gap:5px}.tp-cart-label{display:none}.tp-hero{min-height:500px}.tp-hero-content{padding:72px 0}.tp-hero:after{background:linear-gradient(90deg,rgba(38,24,16,.84),rgba(38,24,16,.5))}.tp-section{padding:60px 0}.tp-grid--3{grid-template-columns:1fr}.tp-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tp-category-card img{height:180px}.tp-category-body{padding:14px}.tp-category-body h3{font-size:1.15rem}.tp-category-body p{font-size:.84rem}.tp-split,.tp-contact-grid{grid-template-columns:1fr;gap:28px}.tp-split-image{height:330px}.tp-style-card,.tp-style-card img{min-height:300px;height:300px}.tp-values-card{padding:22px}.tp-page-hero{padding:52px 0}.tp-footer-links{gap:10px 18px}.tp-policy{padding:48px 0}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.woocommerce ul.products li.product a img{height:190px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1rem;padding:0 12px 6px!important}.woocommerce ul.products li.product .price{padding:0 12px}.woocommerce ul.products li.product .button{margin:12px!important;padding:10px;font-size:.72rem}.woocommerce div.product{grid-template-columns:1fr;gap:24px}.woocommerce div.product .product_title{font-size:2rem}.tp-contact-info,.tp-contact-form{padding:22px}}@media(max-width:390px){.tp-brand img{width:126px}.tp-menu-toggle{padding:7px 9px}.tp-grid--4{gap:10px}.tp-category-card img{height:150px}.tp-category-body{padding:11px}.woocommerce ul.products li.product a img{height:155px}}
/* Accessible three-slide hero carousel */
.tp-hero-slider{display:block;min-height:560px}.tp-hero-slider .tp-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .55s ease}.tp-hero-slider .tp-slide.is-active{position:relative;opacity:1;visibility:visible;min-height:560px}.tp-hero-slider .tp-slide .tp-hero-content{min-height:560px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.tp-hero-slider .tp-slide .tp-hero-bg{z-index:-1}.tp-hero-slider:after{z-index:0;pointer-events:none}.tp-hero-slider .tp-slide{z-index:1}.tp-hero-slider .tp-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,24,16,.82) 0%,rgba(38,24,16,.58) 45%,rgba(38,24,16,.10) 100%);z-index:-1}.tp-slide-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.65);background:rgba(36,24,17,.35);color:#fff!important;font-size:1.8rem;line-height:1}.tp-slide-prev{left:22px}.tp-slide-next{right:22px}.tp-hero-slider .tp-slider-dots{position:absolute;z-index:5;left:max(24px,calc((100% - 1180px)/2));bottom:26px;display:flex;gap:9px}.tp-hero-slider .tp-slider-dots button{width:26px;height:4px;border:0;padding:0;background:rgba(255,255,255,.55);min-width:0}.tp-hero-slider .tp-slider-dots button.is-active{background:#dfbd82}.tp-hero-slider .tp-slide .tp-hero-content{padding-bottom:75px}@media(max-width:767px){.tp-hero-slider,.tp-hero-slider .tp-slide.is-active{min-height:500px}.tp-hero-slider .tp-slide .tp-hero-content{min-height:500px}.tp-slide-prev{left:10px}.tp-slide-next{right:10px}.tp-hero-slider .tp-slider-dots{left:20px;bottom:20px}}
.tp-hero-slider:after{display:none}.tp-hero-slider .tp-slide .tp-hero-bg{z-index:0}.tp-hero-slider .tp-slide:after{z-index:1}.tp-hero-slider .tp-slide .tp-container{position:relative;z-index:2}
/* Approved Contact Us quick-answer cards */
.tp-faq-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tp-faq-card{padding:28px;background:#fff;border:1px solid var(--tp-border);box-shadow:var(--tp-shadow)}
.tp-faq-card h3{margin-bottom:10px}
.tp-faq-card p{color:var(--tp-muted);margin-bottom:0}
.tp-contact-page .tp-contact-form form{display:block}
.tp-contact-page .tp-contact-form input:focus,.tp-contact-page .tp-contact-form textarea:focus{outline:2px solid var(--tp-gold);outline-offset:1px}
@media(max-width:767px){.tp-faq-cards{grid-template-columns:1fr}}

/* Shop page spacing refinement: generous outer margins and consistent inner padding */
.woocommerce .tp-shop-intro{padding:56px 0 34px;margin-bottom:18px}
.woocommerce .woocommerce-notices-wrapper{margin:0 0 20px}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{margin:0 0 24px}
.woocommerce ul.products{margin:0 0 56px!important;padding:0!important;gap:28px!important}
.woocommerce ul.products li.product{margin:0!important;padding:0 0 22px!important;border-radius:2px;box-shadow:0 4px 18px rgba(55,37,24,.045)}
.woocommerce ul.products li.product a img{margin:0 0 18px!important;aspect-ratio:4/5;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0 20px 8px!important}
.woocommerce ul.products li.product .price{display:block;padding:0 20px!important;margin:0 0 12px}
.woocommerce ul.products li.product .button{margin:4px 20px 0!important}
.woocommerce nav.woocommerce-pagination{margin:0 0 64px;padding:10px 0 24px}
.woocommerce div.product{margin:28px 0 72px;padding:28px;background:#fff;border:1px solid var(--tp-border)}
.woocommerce .woocommerce-breadcrumb{margin:20px 0 14px!important}
@media(max-width:767px){.woocommerce .tp-shop-intro{padding:38px 0 24px}.woocommerce ul.products{gap:16px!important;margin-bottom:38px!important}.woocommerce ul.products li.product{padding-bottom:16px!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0 12px 6px!important}.woocommerce ul.products li.product .price{padding:0 12px!important}.woocommerce ul.products li.product .button{margin:4px 12px 0!important}.woocommerce div.product{margin:18px 0 42px;padding:16px}.woocommerce nav.woocommerce-pagination{margin-bottom:40px}}


/* User-requested spacing: Shop page only (20px padding, 25px margin). */
body.woocommerce-shop .tp-container, body.post-type-archive-product .tp-container { padding: 20px !important; margin: 25px auto !important; box-sizing: border-box; }
body.woocommerce-shop .woocommerce, body.post-type-archive-product .woocommerce { padding: 20px !important; margin: 25px 0 !important; box-sizing: border-box; }
