/*
Theme Name: Toughline Commerce
Theme URI: https://laptopstough.com/
Author: Laptops Tough
Description: A clean, modern, responsive WooCommerce storefront designed for rugged laptops, Toughbooks, and refurbished computers. No page builder required.
Version: 1.0.3
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: toughline-commerce
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: e-commerce, custom-menu, featured-images, translation-ready, full-width-template, theme-options
*/
:root{--ink:#12232b;--muted:#607078;--line:#dfe4e4;--bg:#f7f8f6;--paper:#fff;--steel:#eef2f1;--accent:#df5b37;--accent-deep:#bb4323;--dark:#101f26;--lime:#c5e79a;--radius:14px;--shadow:0 18px 55px rgba(18,35,43,.08);--max:1250px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,h4,h5,p{overflow-wrap:break-word}h1,h2,h3,h4{line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,5.5vw,5.5rem)}h2{font-size:clamp(2rem,3.2vw,3.2rem)}h3{font-size:1.3rem}p{margin:0 0 1.2rem}.wrap{width:min(var(--max),calc(100% - 44px));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-100px;z-index:9999;padding:12px;background:white;color:var(--ink)}.skip-link:focus{top:10px}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}::selection{background:#f7bd9e;color:#132128}
/* Header */
.site-topline{background:var(--dark);color:#d8e2e1;font-size:.72rem;font-weight:700;letter-spacing:.115em;text-transform:uppercase}.site-topline .wrap{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:16px}.site-topline span:last-child{color:var(--lime)}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:40}.header-core{min-height:89px;display:flex;align-items:center;gap:28px;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:11px;white-space:nowrap;flex-shrink:0;color:var(--ink)!important}.brand-symbol{width:37px;height:37px;border-radius:10px;background:var(--ink);display:grid;place-content:center;position:relative;overflow:hidden}.brand-symbol::before,.brand-symbol::after{content:'';display:block;width:20px;height:5px;background:var(--lime);transform:skew(-26deg);border-radius:1px}.brand-symbol::after{width:14px;margin-top:4px;background:var(--accent)}.brand-name{font-size:1.45rem;font-weight:850;letter-spacing:-.055em;line-height:1}.brand-name strong{color:var(--accent)}.primary-nav{margin-left:auto}.primary-nav ul{list-style:none;display:flex;align-items:center;gap:clamp(14px,2vw,30px);margin:0;padding:0}.primary-nav a{display:block;color:var(--ink);font-size:.89rem;font-weight:750;transition:color .18s}.primary-nav a:hover,.primary-nav .current-menu-item>a{color:var(--accent)}.header-tools{display:flex;align-items:center;gap:12px}.header-search{display:flex;align-items:center;background:#f5f7f6;border:1px solid var(--line);border-radius:9px;min-width:210px;max-width:230px;padding:0 10px}.header-search input{background:none;border:0;outline:0;padding:10px 7px;min-width:0;width:100%;font-size:.85rem;color:var(--ink)}.header-search button{border:0;background:none;display:grid;place-content:center;padding:2px;color:var(--muted)}.header-search svg{width:17px;height:17px}.cart-button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:9px 12px;border-radius:9px;font-size:.86rem;font-weight:800;white-space:nowrap;color:var(--ink)}.cart-button:hover{background:var(--steel);color:var(--ink)}.cart-count{background:var(--accent);color:#fff;border-radius:99px;font-size:.7rem;min-width:21px;height:21px;display:grid;place-items:center;padding:0 4px}.mobile-menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:10px;width:40px;height:40px;align-items:center;justify-content:center;color:var(--ink)}.mobile-menu-toggle svg{width:20px;height:20px}
.nav-mobile-search{display:none}
/* Utilities */
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.74rem;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.eyebrow::before{content:'';display:block;width:19px;height:3px;background:var(--accent);border-radius:2px}.section{padding-block:75px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-heading h2{margin:.6rem 0 0}.section-intro{max-width:600px;color:var(--muted);margin:12px 0 0}.text-link{font-weight:850;font-size:.91rem;display:inline-flex;gap:8px;align-items:center}.text-link:hover{gap:13px}.btn,.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:9px;min-height:47px;padding:12px 20px;font-weight:800;font-size:.91rem;line-height:1.2;box-shadow:none;transition:background .2s,transform .2s,border-color .2s}.btn:hover,.wp-block-button__link:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:white;transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--ink);border:1px solid #aab7b6}.btn-outline:hover{color:#fff;background:var(--ink);border-color:var(--ink)}.btn-light{background:#fff;color:var(--ink);border-color:#fff}.btn-light:hover{background:var(--lime);border-color:var(--lime);color:var(--ink)}.muted{color:var(--muted)}
/* Home hero */
.hero{background:var(--dark);color:#fff;overflow:hidden;position:relative}.hero::before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(196,231,154,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(196,231,154,.035) 1px,transparent 1px);background-size:42px 42px}.hero::after{content:'';position:absolute;right:-150px;top:-245px;width:650px;height:650px;border:1px solid rgba(197,231,154,.14);border-radius:50%;box-shadow:0 0 0 90px rgba(197,231,154,.025),0 0 0 180px rgba(197,231,154,.018);pointer-events:none}.hero-grid{position:relative;z-index:1;min-height:580px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(30px,5vw,85px);padding-block:76px 72px}.hero .eyebrow{color:var(--lime)}.hero .eyebrow::before{background:var(--lime)}.hero h1{margin:22px 0 22px;max-width:680px;font-size:clamp(3.1rem,5.7vw,5.9rem);line-height:1.035;font-weight:850}.hero h1 em{color:var(--lime);font-style:normal}.hero p{color:#bfcfd0;font-size:1.09rem;max-width:535px;margin-bottom:29px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}.hero-secondary{color:#fff;border-color:#5a6a6b}.hero-secondary:hover{background:white;color:var(--dark)}.hero-footer{margin-top:35px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);display:flex;flex-wrap:wrap;gap:13px 25px;color:#b9caca;font-size:.76rem;font-weight:700}.hero-footer span::before{content:'◆';font-size:.45rem;color:var(--lime);margin-right:8px;vertical-align:middle}.hero-feature{position:relative;max-width:490px;width:100%;justify-self:end}.feature-frame{background:linear-gradient(145deg,#36444a,#1b3137);border:1px solid #536268;border-radius:18px;padding:28px;box-shadow:0 28px 80px rgba(0,0,0,.35);position:relative}.feature-image{height:300px;background:radial-gradient(circle at center,#52666a 0%,#20323a 70%);border:1px solid rgba(255,255,255,.09);border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.feature-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 20px 12px rgba(0,0,0,.4))}.feature-noimage{font-size:5rem;color:rgba(255,255,255,.35)}.feature-caption{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:18px}.feature-caption small{display:block;color:var(--lime);font-size:.68rem;letter-spacing:.14em;font-weight:800;margin-bottom:5px}.feature-caption strong{display:block;font-size:.99rem;line-height:1.3}.feature-caption a{flex-shrink:0;width:39px;height:39px;display:grid;place-items:center;border:1px solid #718083;border-radius:50%;color:#fff;font-weight:800}.feature-caption a:hover{background:var(--accent);border-color:var(--accent)}.hero-feature::before{content:'FIELD / 001';position:absolute;right:-20px;top:-24px;z-index:2;background:var(--lime);padding:7px 14px;color:var(--dark);font-size:.68rem;letter-spacing:.12em;font-weight:900;transform:rotate(5deg)}
/* Info strip and categories */
.proof-item strong{display:block;font-size:.88rem;line-height:1.3}.proof-item span{display:block;font-size:.76rem;color:var(--muted);line-height:1.45;margin-top:3px}.category-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:16px}.category-tile{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:228px;border:1px solid var(--line);background:#fff;border-radius:13px;padding:25px;overflow:hidden;transition:transform .2s,border-color .2s,box-shadow .2s}.category-tile:hover{transform:translateY(-3px);border-color:#b8c6c6;box-shadow:var(--shadow);color:var(--ink)}.category-tile.primary{background:#e3ebe7;border-color:#dce7e1}.category-tile:after{content:'';position:absolute;width:165px;height:165px;border:1px solid rgba(18,35,43,.13);right:-64px;top:-42px;border-radius:50%;box-shadow:0 0 0 30px rgba(18,35,43,.02);pointer-events:none}.category-icon{display:grid;place-items:center;background:var(--ink);color:#fff;width:45px;height:45px;border-radius:11px;font-size:1.2rem;position:relative;z-index:1}.category-tile h3{font-size:1.32rem;margin:0 0 7px}.category-tile p{font-size:.83rem;color:var(--muted);margin:0}.tile-arrow{position:absolute;right:24px;bottom:25px;font-size:1.3rem;color:var(--accent)}
/* Cards and shopping */
.inventory-section{background:#eef2f0}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.product-card{background:#fff;border:1px solid #e0e6e3;border-radius:13px;overflow:hidden;transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-media{height:235px;background:#f5f7f6;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:16px}.product-media img{height:100%;width:100%;object-fit:contain;transition:transform .3s}.product-card:hover img{transform:scale(1.045)}.card-label{position:absolute;top:15px;left:15px;padding:5px 10px;border-radius:5px;background:white;color:var(--ink);font-size:.63rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;box-shadow:0 2px 8px rgba(0,0,0,.04)}.card-info{padding:19px 21px 21px}.card-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-deep);font-weight:850;margin:0 0 10px}.card-info h3{font-size:1.08rem;line-height:1.4;letter-spacing:-.015em;margin:0 0 13px;min-height:3.05em}.card-info h3 a:hover{color:var(--accent)}.card-bottom{border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;align-items:center;gap:10px}.card-price{font-size:1.3rem;font-weight:900;letter-spacing:-.035em}.card-price ins{text-decoration:none}.card-price del{font-size:.8rem;color:var(--muted);font-weight:500}.card-view{font-size:.77rem;font-weight:850;color:var(--accent-deep)}.empty-stock{padding:45px;background:white;border:1px dashed var(--line);border-radius:12px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.how-item{padding:25px 20px 25px 0;border-top:2px solid var(--ink)}.how-number{color:var(--accent);font-size:.76rem;font-weight:850;letter-spacing:.15em}.how-item h3{font-size:1.2rem;margin:16px 0 8px}.how-item p{color:var(--muted);font-size:.91rem;margin:0}.closing-cta{background:var(--dark);color:white;padding:48px 0}.closing-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.closing-grid h2{font-size:clamp(1.7rem,2.8vw,2.9rem);margin:0 0 7px}.closing-grid p{margin:0;color:#b3c1c4}.closing-cta .btn{flex-shrink:0}
/* Generic pages */
.page-area{padding-block:50px 85px;min-height:55vh}.page-paper{background:#fff;border:1px solid var(--line);border-radius:14px;padding:clamp(22px,5vw,58px)}.page-title{font-size:clamp(2.35rem,4vw,3.9rem);margin:.25rem 0 28px}.entry-content>*:last-child{margin-bottom:0}.entry-content a:not(.btn){color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px}.entry-content img{border-radius:10px}.entry-content h2{margin:1.4em 0 .55em}.entry-content h3{margin:1.3em 0 .5em}.entry-content ul,.entry-content ol{padding-left:24px}.entry-content blockquote{border-left:4px solid var(--accent);padding:12px 23px;background:var(--steel);margin:25px 0}.wp-block-image{max-width:100%}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.post-tile{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px}.post-tile h2{font-size:1.3rem}.post-tile .date{color:var(--muted);font-size:.75rem}.pagination,.nav-links{margin-top:28px}.pagination .page-numbers,.nav-links .page-numbers{display:inline-block;margin:0 2px 5px;padding:8px 14px;border:1px solid var(--line);background:#fff;border-radius:7px}.pagination .current,.nav-links .current{background:var(--ink);color:white}
/* WooCommerce catalog */
.woo-shell{padding:39px 0 87px;min-height:60vh}.woocommerce .woocommerce-breadcrumb{color:var(--muted);font-size:.82rem;margin:0 0 23px}.woocommerce .woocommerce-breadcrumb a{color:var(--ink)}.woocommerce .woocommerce-result-count{font-size:.87rem;color:var(--muted);margin:6px 0 26px}.woocommerce .woocommerce-ordering{margin:0 0 20px}.woocommerce .woocommerce-ordering select{background:white;border:1px solid var(--line);border-radius:8px;padding:10px 12px;color:var(--ink)}.woocommerce-products-header{padding:13px 0 18px}.woocommerce-products-header__title.page-title{margin:0 0 10px;font-size:clamp(2.2rem,4vw,3.7rem)}.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;clear:both;margin:20px 0 0;padding:0}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto;float:none;clear:none;margin:0;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#fff;transition:box-shadow .2s,transform .2s;display:flex;flex-direction:column;min-width:0}.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.woocommerce ul.products li.product a img{width:100%;height:250px;object-fit:contain;background:#f5f7f6;padding:16px;margin:0 0 14px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.04rem;line-height:1.4;font-weight:800;min-height:74px;padding:0 20px;margin:0 0 8px;letter-spacing:-.015em;color:var(--ink)}.woocommerce ul.products li.product .price{padding:0 20px;font-size:1.2rem;font-weight:850;color:var(--ink);margin:auto 0 15px}.woocommerce ul.products li.product a.button{margin:0 20px 20px;min-height:42px;align-self:start;font-size:.82rem}.woocommerce ul.products li.product .onsale{top:12px;right:12px;left:auto;min-height:auto;min-width:auto;line-height:1;padding:8px 10px;border-radius:5px;background:var(--accent);margin:0;font-size:.68rem}.woocommerce nav.woocommerce-pagination ul{border:0}.woocommerce nav.woocommerce-pagination ul li{border:0}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{margin:3px;background:white;border:1px solid var(--line);border-radius:7px;padding:10px 14px}.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);color:white}.woocommerce .star-rating{color:var(--accent)}
/* WooCommerce single product */
.woocommerce div.product{background:transparent}.woocommerce div.product div.images,.woocommerce div.product div.summary{margin-bottom:3.3em}.woocommerce div.product div.images{width:48%;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.woocommerce div.product div.images img{object-fit:contain;max-height:560px}.woocommerce div.product div.images .flex-control-thumbs{margin-top:14px;display:flex;gap:9px}.woocommerce div.product div.images .flex-control-thumbs li{border:1px solid var(--line);border-radius:7px;overflow:hidden}.woocommerce div.product div.summary{width:47%;padding-top:8px}.woocommerce div.product .product_title{font-size:clamp(2.1rem,3.3vw,3.45rem);line-height:1.12;margin:0 0 18px}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-size:2rem;font-weight:900;line-height:1.3;margin-bottom:22px}.woocommerce div.product .woocommerce-product-details__short-description{color:#53646d;font-size:1rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin-bottom:24px}.woocommerce div.product .woocommerce-product-details__short-description p:last-child{margin-bottom:0}.woocommerce div.product form.cart{margin:0 0 24px}.woocommerce div.product form.cart .variations{width:100%;border-collapse:collapse;margin:0 0 20px}.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{padding:8px 0;vertical-align:middle;text-align:left}.woocommerce div.product form.cart .variations label{font-weight:850;font-size:.87rem}.woocommerce div.product form.cart .variations select{border:1px solid #cbd4d2;background:white;padding:12px 14px;border-radius:8px;max-width:100%;min-height:46px;color:var(--ink)}.woocommerce div.product form.cart .reset_variations{font-size:.8rem;color:var(--accent-deep)}.woocommerce div.product form.cart .single_variation_wrap .woocommerce-variation-price .price{font-size:1.55rem}.woocommerce .quantity .qty{min-height:47px;max-width:75px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink)}.woocommerce div.product form.cart .button,.woocommerce div.product form.cart button.single_add_to_cart_button{min-height:49px;padding:13px 26px}.woocommerce div.product .product_meta{font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;line-height:2}.woocommerce div.product .product_meta a{color:var(--ink)}.woocommerce div.product .woocommerce-tabs{clear:both;margin:20px 0 64px;background:white;border:1px solid var(--line);border-radius:14px;padding:25px clamp(20px,4vw,47px) 35px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;display:flex;gap:25px;border-bottom:1px solid var(--line);margin:0 0 25px}.woocommerce div.product .woocommerce-tabs ul.tabs:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs li{padding:0;border:0;background:transparent;border-radius:0;margin:0}.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:14px 0;font-size:.88rem;color:var(--muted);font-weight:850}.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom:3px solid var(--accent)}.woocommerce div.product .woocommerce-tabs .panel{margin:0}.woocommerce div.product .woocommerce-tabs .panel h2{font-size:1.55rem}.woocommerce div.product .woocommerce-tabs .panel h3{font-size:1.2rem}.woocommerce div.product .woocommerce-tabs table.shop_attributes{border:1px solid var(--line);border-radius:8px;overflow:hidden;border-collapse:separate;border-spacing:0}.woocommerce div.product .woocommerce-tabs table.shop_attributes th,.woocommerce div.product .woocommerce-tabs table.shop_attributes td{border:0;border-bottom:1px solid var(--line);padding:10px 15px;font-style:normal}.woocommerce div.product .woocommerce-tabs table.shop_attributes tr:nth-child(even){background:var(--bg)}.woocommerce .related.products>h2,.woocommerce .up-sells>h2{font-size:2rem;margin:38px 0 24px}.woocommerce span.onsale{background:var(--accent);font-weight:850;padding:4px 13px;border-radius:7px;min-width:0;min-height:0;line-height:1.8;top:15px;left:15px}.woocommerce .stock{font-weight:850;color:#247a4a}.woocommerce div.product .stock{color:#247a4a}.woocommerce div.product .out-of-stock{color:#a43728}
/* Cart, checkout, notices and blocks */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:8px;background:#fff;border-top-color:var(--accent);padding:16px 22px 16px 50px}.woocommerce-message::before,.woocommerce-info::before{color:var(--accent)}.woocommerce .woocommerce-cart-form,.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout-review-order,.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{background:#fff;border:1px solid var(--line);padding:20px;border-radius:12px}.woocommerce table.shop_table{border-collapse:collapse;border:1px solid var(--line);background:white;border-radius:9px}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:15px;border-color:var(--line)}.woocommerce .cart-collaterals .cart_totals{width:100%}.woocommerce .cart-collaterals .cart_totals h2{font-size:1.6rem}.woocommerce-cart .cart-collaterals .cart_totals table{border:0}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce-page form .form-row input.input-text,.woocommerce .select2-container .select2-selection--single{border:1px solid #cbd6d3;border-radius:8px;padding:11px 13px;background:#fff;color:var(--ink);min-height:45px}.woocommerce .select2-container .select2-selection--single .select2-selection__rendered{padding:0}.woocommerce-checkout #payment{background:#f2f5f3;border-radius:10px}.woocommerce-checkout #payment div.payment_box{background:#fff}.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#fff}.woocommerce .woocommerce-checkout h3{font-size:1.5rem}.wc-block-cart,.wc-block-checkout{font-family:inherit}.wc-block-components-button,.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{border-radius:8px!important}.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{background:var(--accent)!important;color:white!important;font-weight:800!important}.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-block-components-form .wc-block-components-text-input input{border-radius:8px!important}.wc-block-components-sidebar,.wc-block-cart-items{border-color:var(--line)}.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{max-width:1120px;margin:auto}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;background:#fff;border:1px solid var(--line);padding:10px 15px}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{border-left:4px solid var(--accent);font-weight:800}
/* Footer */
.site-footer{background:#14232a;color:#d7e3e2;margin-top:0}.footer-grid{padding:66px 0 49px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:clamp(24px,6vw,95px)}.footer-brand .brand{color:white!important}.footer-brand .brand-name{color:white}.footer-brand p{color:#9db1b4;max-width:360px;margin-top:22px;font-size:.88rem}.site-footer h3{font-size:.83rem;letter-spacing:.12em;text-transform:uppercase;margin:2px 0 20px;color:white}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin-bottom:12px}.site-footer li a{color:#bccdce;font-size:.88rem}.site-footer li a:hover{color:var(--lime)}.footer-bottom{border-top:1px solid #30424a;padding:20px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#9db1b4;font-size:.78rem}
/* Responsive */
@media(max-width:1150px){.header-core{gap:15px}.header-search{min-width:170px}.primary-nav ul{gap:15px}.hero h1{font-size:4.4rem}}
@media(max-width:920px){.header-search{display:none}.primary-nav ul{gap:14px}.hero-grid{min-height:0}.hero h1{font-size:clamp(2.9rem,5.2vw,4.4rem)}.product-grid,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.category-grid{grid-template-columns:1fr 1fr}.category-tile.primary{grid-column:span 2;min-height:175px}}
@media(max-width:720px){.wrap{width:min(var(--max),calc(100% - 30px))}.site-topline .wrap{min-height:30px}.site-topline span:last-child{display:none}.header-core{min-height:72px}.brand-name{font-size:1.29rem}.brand-symbol{width:33px;height:33px}.mobile-menu-toggle{display:flex}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);box-shadow:0 12px 20px rgba(0,0,0,.1);padding:15px}.primary-nav.is-open{display:block}.primary-nav ul{display:flex;flex-direction:column;align-items:stretch;gap:0}.primary-nav li{border-bottom:1px solid var(--line)}.primary-nav li:last-child{border:0}.primary-nav a{padding:13px}.nav-mobile-search{display:block;margin-top:16px}.nav-mobile-search .header-search{display:flex;width:100%;min-width:0;max-width:none}.header-tools{margin-left:auto}.cart-button{padding:8px 10px;font-size:.78rem}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:35px;padding-block:61px}.hero h1{font-size:clamp(2.7rem,10vw,4.1rem)}.hero-feature{justify-self:auto;max-width:540px}.feature-image{height:240px}.hero-feature::before{right:-8px}.section{padding-block:53px}.section-heading{align-items:start;flex-direction:column;gap:12px}.category-grid{grid-template-columns:1fr}.category-tile.primary{grid-column:span 1}.category-tile{min-height:170px}.how-grid{grid-template-columns:1fr;gap:16px}.how-item{padding-block:13px}.closing-grid{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:28px;padding:50px 0}.footer-grid .footer-brand{grid-column:span 2}.blog-grid{grid-template-columns:1fr}.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%}.woocommerce div.product .product_title{font-size:2.15rem}.woocommerce div.product div.images{margin-bottom:26px}.woocommerce div.product .woocommerce-tabs{padding:16px}.woocommerce div.product .woocommerce-tabs ul.tabs{gap:15px;flex-wrap:wrap}.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:.81rem}}
@media(max-width:520px){.hero-actions .btn{width:100%}.hero h1{font-size:2.65rem}.feature-frame{padding:17px}.feature-image{height:205px}.product-grid,.woocommerce ul.products{grid-template-columns:1fr}.woocommerce ul.products li.product a img{height:235px}.product-media{height:245px}.page-area,.woo-shell{padding-top:28px}.footer-grid{grid-template-columns:1fr 1fr}.woocommerce table.shop_table{font-size:.83rem}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:8px}.woocommerce ul.products li.product .woocommerce-loop-product__title{min-height:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* Version 1.0.2 — Shop cards: override WooCommerce's column float widths.
 * WooCommerce .columns-3 li.product has width:30.75%; keeping that width inside
 * a CSS grid creates the narrow, unreadable cards seen on the Shop page.
 */
.woo-shell ul.products,
.woo-shell ul.products[class*="columns-"] {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px;
    align-items: stretch;
    width: 100%;
    clear: both;
    margin: 24px 0 0 !important;
    padding: 0 !important;
    list-style: none;
}
.woo-shell ul.products li.product,
.woo-shell ul.products[class*="columns-"] li.product,
.woocommerce .woo-shell ul.products li.product,
.woocommerce-page .woo-shell ul.products li.product {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 0;
    justify-self: stretch;
    box-sizing: border-box;
}
.woo-shell ul.products li.product > a.woocommerce-LoopProduct-link,
.woo-shell ul.products li.product > a.woocommerce-loop-product__link {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    width: 100%;
    min-width: 0;
}
.woo-shell ul.products li.product a img {
    display: block;
    width: 100%;
    height: 240px;
    padding: 20px;
    object-fit: contain;
    background: #f5f7f6;
}
.woo-shell ul.products li.product .woocommerce-loop-product__title {
    font-size: 1rem;
    line-height: 1.43;
    min-height: calc(1.43em * 4);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    overflow-wrap: break-word;
    word-break: normal;
    text-overflow: ellipsis;
}
.woo-shell ul.products li.product .price {margin-top: auto;}
.woo-shell ul.products li.product > a.button,
.woo-shell ul.products li.product > a.add_to_cart_button {
    align-self: stretch;
    text-align: center;
    margin: 0 20px 20px;
}
@media (max-width: 950px) {
    .woo-shell ul.products,
    .woo-shell ul.products[class*="columns-"] {grid-template-columns: repeat(2, minmax(0, 1fr)) !important;}
}
@media (max-width: 600px) {
    .woo-shell ul.products,
    .woo-shell ul.products[class*="columns-"] {grid-template-columns: minmax(0, 1fr) !important; gap: 18px;}
    .woo-shell ul.products li.product a img {height: 235px;}
    .woo-shell ul.products li.product .woocommerce-loop-product__title {min-height: 0;}
}

/* v1.0.3: featured laptop carousel, independent of WooCommerce shop cards */
.feature-slide[hidden]{display:none!important}
.feature-slide.is-active{animation:toughline-feature-enter .35s ease both}
@keyframes toughline-feature-enter{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.feature-slide .feature-image{display:flex;color:inherit}
.feature-slide .feature-image:hover{border-color:rgba(197,231,154,.35)}
.feature-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}
.feature-control{border:1px solid #6b7c81;background:rgba(255,255,255,.04);color:white;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-size:25px;line-height:1;transition:background .2s,border-color .2s;padding:0}
.feature-control:hover,.feature-control:focus-visible{background:#324d53;border-color:var(--lime)}
.feature-dots{display:flex;justify-content:center;align-items:center;gap:9px;flex:1}
.feature-dot{display:grid;place-items:center;background:transparent;border:0;padding:8px 2px;min-width:25px;height:35px}
.feature-dot span{width:18px;height:5px;border-radius:10px;background:#72888c;transition:width .22s,background .22s}
.feature-dot.is-active span,.feature-dot[aria-current="true"] span{width:32px;background:var(--lime)}
.feature-dot:hover span{background:#d6e6d2}
@media(prefers-reduced-motion:reduce){.feature-slide.is-active{animation:none}.feature-dot span,.feature-control{transition:none}}

/* Update the field counter with the currently displayed laptop. */
.toughline-feature-carousel::before{content:attr(data-slide-label)}
