/*
Theme Name: VPS Proxy Selling Theme
Theme URI: https://example.com
Author: Muhammad Kaleem Tunger
Description: Windows RDP & VPS reseller storefront theme built on WooCommerce. Terminal-style hero, spec-sheet product cards, Rapid Gateway / JazzCash / Easypaisa ready.
Version: 1.0
Requires Plugins: woocommerce
Text Domain: nodedesk
*/

:root{
  --bg:#0B1220; --bg-raised:#111B2E; --bg-card:#0F1A2C; --line:#1E2A40;
  --text:#EDF1F7; --text-dim:#8A97AC; --cyan:#00E5C7; --amber:#FFB627; --danger:#FF6B6B;
}
*{box-sizing:border-box;}
body{
  background:var(--bg); color:var(--text); font-family:'Inter',sans-serif; line-height:1.5;
  background-image:linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
  background-size:48px 48px; -webkit-font-smoothing:antialiased; margin:0;
}
h1,h2,h3,h4{font-family:'Space Grotesk',sans-serif; font-weight:600; letter-spacing:-0.02em; margin:0;}
.mono{font-family:'JetBrains Mono',monospace;}
a{color:inherit; text-decoration:none;}
.wrap{max-width:1180px; margin:0 auto; padding:0 28px;}
img{max-width:100%; display:block;}

/* Header */
.site-header-sticky{position:sticky !important; top:0 !important; z-index:999 !important; width:100%;}
.site-header{background:rgba(11,18,32,0.95); backdrop-filter:blur(10px); border-bottom:1px solid var(--line);}
.site-header-inner{padding:14px 28px;}
.site-header-top{display:flex; align-items:center; justify-content:space-between;}
.header-actions{display:flex; align-items:center; gap:10px;}
.whatsapp-btn{
  display:flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:50%;
  background:#25D366; color:#FFFFFF;
  transition:background 0.15s ease, transform 0.15s ease;
}
.whatsapp-btn:hover{ background:#1FBF5A; transform:scale(1.06); }
.logo{display:flex; align-items:center; gap:10px; font-family:'Space Grotesk'; font-weight:700; font-size:26px;}
.logo-dot{width:9px; height:9px; border-radius:50%; background:var(--cyan); box-shadow:0 0 12px var(--cyan); animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;} 50%{opacity:0.4;}}
.site-menu-bar{padding:12px 28px; background:rgba(11,18,32,0.98); backdrop-filter:blur(10px);}
.nav-links{display:flex; gap:26px; font-size:17px; font-weight:600; color:#22C55E; list-style:none; margin:0; padding:0;}
.nav-links a{color:#22C55E;}
.nav-links a:hover{color:var(--amber);}
.cart-btn{position:relative; border:1px solid var(--line); background:transparent; color:var(--text); padding:9px 16px; border-radius:7px; font-size:14px; font-weight:600;}
.cart-count{position:absolute; top:-7px; right:-7px; background:var(--amber); color:#1a1200; font-size:11px; font-weight:700; width:18px; height:18px; border-radius:50%; display:flex; align-items:center; justify-content:center;}
.nav-bar-inner{display:flex; align-items:center; justify-content:space-between;}
.nav-toggle{
  display:none; flex-direction:column; justify-content:center; gap:5px;
  width:34px; height:34px; background:transparent; border:none; cursor:pointer; padding:0;
}
.nav-toggle span{ display:block; width:100%; height:2px; background:#22C55E; border-radius:2px; }

@media (max-width:760px){
  .site-menu-bar{ position:relative; }
  .nav-toggle{ display:flex; }
  .nav-links{
    display:none; flex-direction:column; gap:14px;
    position:absolute; left:0; right:0; top:100%;
    background:rgba(11,18,32,0.98); backdrop-filter:blur(10px);
    padding:18px 28px; border-top:1px solid var(--line);
    z-index:998;
  }
  .nav-links.is-open{ display:flex; }
}
@media (max-width:760px){ .logo{margin-top:20px;} }

/* Contact Us page */
.contact-wrap{padding:20px 0 60px; max-width:640px; margin:0 auto;}
.contact-intro{text-align:center; margin-bottom:26px;}
.contact-intro h1{font-size:34px; margin-bottom:14px;}
.contact-intro .lead{color:var(--text-dim); font-size:15.5px; max-width:480px; margin:0 auto;}
.contact-card{background:var(--bg-card); border:1px solid var(--line); border-radius:14px; padding:32px;}
.contact-alert{padding:12px 16px; border-radius:8px; font-size:14px; margin-bottom:20px;}
.contact-alert-success{background:rgba(0,229,199,0.08); border:1px solid rgba(0,229,199,0.35); color:var(--cyan);}
.contact-alert-error{background:rgba(255,107,107,0.08); border:1px solid rgba(255,107,107,0.35); color:var(--danger);}
.contact-form .form-row{margin-bottom:18px;}
.contact-form label{display:block; font-size:13.5px; font-weight:600; color:var(--text-dim); margin-bottom:7px;}
.contact-form input,
.contact-form textarea{
  width:100%; background:var(--bg-raised); border:1px solid var(--line); color:var(--text);
  border-radius:7px; padding:12px 14px; font-family:'Inter',sans-serif; font-size:14.5px;
}
.contact-form input:focus,
.contact-form textarea:focus{ outline:none; border-color:var(--cyan); }
.contact-form textarea{resize:vertical;}
.contact-form .btn-primary{width:100%; text-align:center; cursor:pointer;}
@media (max-width:640px){ .contact-card{padding:22px;} .contact-intro h1{font-size:28px;} }

/* Hero */
.hero{padding:36px 0 20px;}
.hero-grid{display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px; align-items:center;}
@media (max-width:900px){ .hero-grid{grid-template-columns:1fr;} }
.eyebrow{display:inline-flex; align-items:center; gap:8px; font-family:'JetBrains Mono'; font-size:12.5px; color:var(--cyan); border:1px solid rgba(0,229,199,0.3); background:rgba(0,229,199,0.06); padding:6px 12px; border-radius:20px; margin-bottom:22px;}
.hero h1{font-size:38px; line-height:1.15; margin-bottom:18px;}
.hero h1 span{color:var(--cyan);}
.hero p.lead{font-size:16.5px; color:var(--text-dim); max-width:480px; margin-bottom:28px;}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:24px;}
.btn-primary{background:var(--amber); color:#1a1200; padding:14px 26px; border-radius:7px; font-weight:600; font-size:15px; display:inline-block; border:none;}
.btn-ghost{border:1px solid var(--line); color:var(--text); padding:14px 26px; border-radius:7px; font-weight:600; font-size:15px; display:inline-block;}
.btn-ghost:hover{border-color:var(--cyan); color:var(--cyan);}
.hero-image{border-radius:14px; overflow:hidden; border:1px solid var(--line);}
.hero-image img{width:100%; height:auto; display:block;}

/* Section */
.section{padding:64px 0;}
#proxies{padding-top:24px;}
#plans{padding-top:16px;}
.section-head{max-width:600px; margin-bottom:36px;}
.section-head .kicker{font-family:'JetBrains Mono'; font-size:12.5px; color:var(--amber); margin-bottom:10px; display:block;}
.section-head h2{font-size:30px; margin-bottom:10px;}
.section-head p{color:var(--text-dim); font-size:15px;}
#plans .section-head .kicker{font-size:30px; font-weight:800; letter-spacing:0; text-transform:none; font-family:'Space Grotesk', sans-serif;}
#plans .section-head h2{font-size:30px; font-weight:800;}
#proxies .section-head .kicker{font-size:30px; font-weight:800; letter-spacing:0; text-transform:none; font-family:'Space Grotesk', sans-serif;}
#proxies .section-head h2{font-size:30px; font-weight:800;}

/* WooCommerce product grid -> white "Hot Sale" style cards (CSS grid — forces equal columns, no overflow) */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products,
.woocommerce ul.products.columns-1,
.woocommerce ul.products.columns-2,
.woocommerce ul.products.columns-3,
.woocommerce ul.products.columns-4,
.woocommerce ul.products.columns-5,
.woocommerce ul.products.columns-6{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:20px !important;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  align-items:stretch !important;
}
/* WooCommerce adds a ::before/::after clearfix on ul.products (display:table). In CSS Grid,
   those pseudo-elements become real grid items and eat the first/last cells — which pushed
   the first row down to 2 products. Remove them completely. */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after,
ul.products::before,
ul.products::after{
  content:none !important;
  display:none !important;
}
@media (max-width:1000px){
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products,
  .woocommerce ul.products.columns-1,
  .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-5,
  .woocommerce ul.products.columns-6{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product,
.woocommerce ul.products.columns-1 li.product,
.woocommerce ul.products.columns-2 li.product,
.woocommerce ul.products.columns-3 li.product,
.woocommerce ul.products.columns-4 li.product,
.woocommerce ul.products.columns-5 li.product,
.woocommerce ul.products.columns-6 li.product{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
@media (max-width:640px){
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products,
  .woocommerce ul.products.columns-1,
  .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-5,
  .woocommerce ul.products.columns-6{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width:420px){
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products,
  .woocommerce ul.products.columns-1,
  .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3,
  .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-5,
  .woocommerce ul.products.columns-6{
    grid-template-columns:repeat(1, minmax(0, 1fr)) !important;
  }
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
ul.products li.product,
.woocommerce ul.products.columns-1 li.product,
.woocommerce ul.products.columns-2 li.product,
.woocommerce ul.products.columns-3 li.product,
.woocommerce ul.products.columns-4 li.product,
.woocommerce ul.products.columns-5 li.product,
.woocommerce ul.products.columns-6 li.product{
  background:#FFFFFF !important;
  border:1px solid #EEE0D4 !important;
  border-radius:14px !important;
  padding:26px 22px 22px !important;
  position:relative !important;
  list-style:none !important;
  float:none !important;
  margin:0 !important;
  text-align:left !important;
  color:#1A2233 !important;
  box-shadow:0 2px 10px rgba(10,20,40,0.06) !important;
  clear:none !important;
  break-before:auto !important;
  break-after:auto !important;
  break-inside:auto !important;
  page-break-before:auto !important;
  page-break-after:auto !important;
}
.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last,
ul.products li.product.first,
ul.products li.product.last{
  clear:none !important;
  margin:0 !important;
}
.woocommerce ul.products li.product.featured,
ul.products li.product.featured{
  border:1.5px solid var(--danger) !important;
}
.woocommerce ul.products li.product.featured::before,
ul.products li.product.featured::before{
  content:"Hot Sale";
  position:absolute; top:-13px; left:50%; transform:translateX(-50%);
  background:linear-gradient(135deg, #FFB627, #FF8A3D); color:#3a1f00;
  font-size:11.5px; font-weight:700; letter-spacing:0.02em;
  padding:5px 18px; border-radius:999px;
  font-family:'Inter', sans-serif;
  box-shadow:0 3px 8px rgba(255,138,61,0.35);
}

/* HOT badge — blue box, yellow text, hangs at the top-center of the card */
.plan-hot-badge{
  position:absolute; top:-13px; left:50%; transform:translateX(-50%);
  background:#0B5FFF; color:#FFD400;
  font-size:11.5px; font-weight:800; letter-spacing:0.04em;
  padding:5px 16px; border-radius:999px;
  font-family:'Inter', sans-serif;
  z-index:2;
  animation:plan-hot-pulse 1.6s ease-in-out infinite;
}
@keyframes plan-hot-pulse{
  0%, 100% { transform:translateX(-50%) scale(1); box-shadow:0 3px 8px rgba(11,95,255,0.35), 0 0 0 0 rgba(11,95,255,0.5); }
  50% { transform:translateX(-50%) scale(1.06); box-shadow:0 3px 10px rgba(11,95,255,0.45), 0 0 0 8px rgba(11,95,255,0); }
}

/* VPS country — small green badge, centered at the top of the card */
.plan-country{
  display:table; margin:0 auto 12px auto;
  background:#16A34A; color:#FFFFFF;
  font-size:13px; font-weight:700; letter-spacing:0.02em;
  padding:4px 12px; border-radius:999px;
  font-family:'Inter', sans-serif;
}

/* Hide product photo + sale badge entirely */
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale,
ul.products li.product img,
ul.products li.product .onsale{
  display:none !important;
}

/* Product card should not open the single product page on click —
   only the Add to Cart button (outside this link) should be clickable. */
.woocommerce ul.products li.product a.woocommerce-loop-product__link,
ul.products li.product a.woocommerce-loop-product__link{
  pointer-events:none !important;
  cursor:default !important;
}
/* Duration pills render INSIDE that same link (WooCommerce hook order), so they'd be
   blocked too — re-enable clicks just for them and the disk pills. */
.woocommerce ul.products li.product a.woocommerce-loop-product__link .plan-duration,
ul.products li.product a.woocommerce-loop-product__link .plan-duration,
.woocommerce ul.products li.product a.woocommerce-loop-product__link .plan-duration button,
ul.products li.product a.woocommerce-loop-product__link .plan-duration button{
  pointer-events:auto !important;
}

.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2,
ul.products li.product .woocommerce-loop-product__title{
  font-family:'Space Grotesk' !important; font-size:21px !important; font-weight:800 !important;
  margin:0 0 12px 0 !important; padding:0 !important; color:#1A2233 !important;
}

/* Price block: $4.05 /mo + save % (Was $x) */
.woocommerce ul.products li.product .price,
ul.products li.product .price{
  font-family:'Inter', sans-serif !important;
  margin:0 0 6px 0 !important; display:block !important;
  font-size:30px !important; font-weight:800 !important; color:#1A2233 !important;
}
.woocommerce ul.products li.product .price del,
ul.products li.product .price del{ display:none !important; }
.woocommerce ul.products li.product .price ins{ text-decoration:none !important; }
.plan-permo{
  font-family:'Inter', sans-serif !important; font-size:13.5px !important; font-weight:500 !important;
  color:#8A97AC !important; margin-left:2px !important;
}
.plan-save{
  font-size:13px !important; font-weight:700 !important; color:var(--danger) !important; margin-bottom:16px !important;
}
.plan-save .was{ color:#9AA5B8 !important; font-weight:400 !important; margin-left:4px !important; }

/* Duration pills (visual selector) */
.plan-duration{ display:flex; gap:6px; margin-bottom:18px; flex-wrap:wrap; }
.plan-duration button{
  border:1px solid #E4E8F0; background:#F6F7FA; color:#4B5568;
  font-size:12px; font-weight:600; padding:6px 10px; border-radius:6px; cursor:pointer;
  font-family:'Inter', sans-serif;
}
.plan-duration button.active{ background:#EAF1FF; border-color:#0B5FFF; color:#0B5FFF; }

/* CTA button */
.woocommerce ul.products li.product .button,
ul.products li.product .button{
  display:block !important; text-align:center !important; padding:13px !important;
  border-radius:8px !important; font-weight:700 !important; font-size:14.5px !important;
  border:none !important; color:#FFFFFF !important; background:var(--danger) !important;
  margin:0 0 20px 0 !important; width:100% !important;
}
.woocommerce ul.products li.product .button:hover{ background:#E85555 !important; color:#fff !important; }

/* "View cart" link — shown as a green confirmation box between the button and specs */
.woocommerce ul.products li.product a.added_to_cart,
.woocommerce ul.products li.product a.added_to_cart.wc-forward{
  display:block !important;
  text-align:center !important;
  background:#16A34A !important;
  color:#FFFFFF !important;
  font-weight:700 !important;
  font-size:13.5px !important;
  padding:11px !important;
  border-radius:8px !important;
  margin:-8px 0 18px 0 !important;
  text-decoration:none !important;
}
.woocommerce ul.products li.product a.added_to_cart:hover{
  background:#128A3E !important;
}

/* Spec list: plain lines, no borders, matches reference */
.woocommerce ul.products li.product .plan-specs,
ul.products li.product .plan-specs{
  list-style:none !important; margin:0 !important; padding:0 !important;
}
.woocommerce ul.products li.product .plan-specs li,
ul.products li.product .plan-specs li{
  display:block !important;
  font-family:'Inter', sans-serif !important; font-size:13.5px !important; font-weight:500 !important;
  padding:5px 0 !important; border:none !important;
  color:#3A4356 !important;
}
.woocommerce ul.products li.product .plan-specs li span,
ul.products li.product .plan-specs li span{ display:none !important; }
.woocommerce ul.products li.product .plan-specs li b,
ul.products li.product .plan-specs li b{ color:#3A4356 !important; font-weight:500 !important; }

/* Disk SSD/NVMe customer toggle */
.woocommerce ul.products li.product .plan-specs li.plan-disk-row,
ul.products li.product .plan-specs li.plan-disk-row{
  display:flex !important; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:6px;
}
.woocommerce ul.products li.product .plan-specs .disk-toggle,
ul.products li.product .plan-specs .disk-toggle{ display:flex !important; gap:4px; }
.woocommerce ul.products li.product .plan-specs .disk-pill,
ul.products li.product .plan-specs .disk-pill{
  display:inline-block !important;
  border:1px solid #E4E8F0; background:#F6F7FA; color:#4B5568;
  font-size:11px; font-weight:700; padding:5px 10px; border-radius:6px; cursor:pointer;
  font-family:'Inter', sans-serif; white-space:nowrap;
}
.woocommerce ul.products li.product .plan-specs .disk-pill.active,
ul.products li.product .plan-specs .disk-pill.active{ background:#EAF1FF; border-color:#0B5FFF; color:#0B5FFF; }

.plan-pkr{
  font-family:'Inter', sans-serif !important; font-size:12px !important;
  color:#9AA5B8 !important; margin:0 0 14px 0 !important;
}

/* Bottom badge (e.g. No Setup Fee) */
.woocommerce ul.products li.product .plan-badge,
ul.products li.product .plan-badge{
  display:inline-block !important; background:#F6F7FA !important; color:#4B5568 !important;
  font-size:11.5px !important; font-weight:600 !important; padding:5px 12px !important;
  border:1px solid #E4E8F0 !important; border-radius:999px !important; margin-top:12px !important;
}

/* Cart page / checkout: dark theme overrides */
.woocommerce table.shop_table, .woocommerce-checkout table.shop_table{background:var(--bg-card); border:1px solid var(--line); color:var(--text);}
.woocommerce table.shop_table th{color:var(--text-dim); font-family:'JetBrains Mono'; font-size:12px;}
.woocommerce table.shop_table td{border-top:1px solid var(--line) !important;}
.woocommerce table.shop_table td.product-thumbnail{display:none !important;}
.woocommerce table.shop_table img.attachment-shop_thumbnail,
.woocommerce table.shop_table a img{display:none !important;}
.woocommerce ul#shipping_method, .woocommerce-checkout #payment{background:var(--bg-card); border:1px solid var(--line); border-radius:10px;}
.woocommerce #payment div.payment_box{background:var(--bg-raised) !important; color:var(--text-dim);}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row select{background:var(--bg); border:1px solid var(--line); color:var(--text); border-radius:6px;}
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button{background:var(--amber) !important; color:#1a1200 !important; border:none !important; border-radius:7px !important; font-weight:700 !important;}
.woocommerce a, .woocommerce h1, .woocommerce h2, .woocommerce h3{color:var(--text);}

/* WooCommerce BLOCKS (Cart/Checkout blocks — different markup than classic shortcodes) */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout{ color:var(--text); }
.wp-block-woocommerce-cart h1, .wp-block-woocommerce-cart h2, .wp-block-woocommerce-cart h3,
.wp-block-woocommerce-checkout h1, .wp-block-woocommerce-checkout h2, .wp-block-woocommerce-checkout h3,
.wc-block-components-checkout-step__title,
.wc-block-components-title{ color:var(--text) !important; }
.wc-block-components-checkout-step__description,
.wc-block-components-order-summary-item__quantity,
.wc-block-components-totals-item__description{ color:var(--text-dim) !important; }

/* Text inputs & dropdowns — force dark bg + light text so typed text is visible */
.wc-block-components-text-input input,
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-address-form input,
.wc-blocks-components-select select,
.wc-block-components-country-input input,
.wc-block-components-state-input input{
  background:var(--bg) !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
  border-radius:6px !important;
}
.wc-block-components-text-input label,
.wc-blocks-components-select__label{
  color:var(--text-dim) !important;
  background:transparent !important;
}
/* The floating label WooCommerce blocks use sits on top of a background chip — match it to the field bg */
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input label::after{
  background:var(--bg) !important;
}
.wc-blocks-components-select__container{
  background:var(--bg) !important; border:1px solid var(--line) !important; border-radius:6px !important;
}
.wc-blocks-components-select__container select,
.wc-blocks-components-select__container .wc-blocks-components-select__label{
  color:var(--text) !important;
}

/* Hide product thumbnail images in Cart / Checkout order summary (blocks) */
.wc-block-cart-item__image,
.wc-block-components-order-summary-item__image,
.wc-block-components-product-image{
  display:none !important;
}

/* Payment method boxes */
.wc-block-components-radio-control__option,
.wc-block-components-payment-method-label{
  color:var(--text) !important;
}
.wc-block-components-radio-control{
  background:var(--bg-card) !important; border:1px solid var(--line) !important; border-radius:8px !important;
}

/* Totals / order summary panel */
.wc-block-components-totals-wrapper,
.wc-block-components-totals-item{
  color:var(--text) !important;
}
.wc-block-components-totals-item__value{ color:var(--text) !important; }

/* Place order / checkout buttons */
.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button,
.wc-block-components-button{
  background:var(--amber) !important; color:#1a1200 !important; border:none !important; border-radius:7px !important; font-weight:700 !important;
}

/* Why Choose Us grid */
.why-grid{
  display:grid; grid-template-columns:repeat(2, 1fr); gap:36px 48px;
}
@media (max-width:760px){ .why-grid{grid-template-columns:1fr;} }
.why-item{ display:flex; gap:16px; align-items:flex-start; }
.why-icon{
  flex-shrink:0; width:46px; height:46px; border-radius:12px;
  background:var(--bg-raised); border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center; font-size:20px;
}
.why-choose .section-head .kicker{font-size:30px; font-weight:800; letter-spacing:0; text-transform:none; font-family:'Space Grotesk', sans-serif;}
.why-choose .section-head h2{font-size:36px;}
.usecase-section .section-head .kicker{font-size:30px; font-weight:800; letter-spacing:0; text-transform:none; font-family:'Space Grotesk', sans-serif;}
.usecase-section .section-head h2{font-size:36px;}
.why-item h4{ font-size:19px; margin-bottom:6px; color:var(--text); }
.why-item p{ font-size:15.5px; }
.why-item p{ font-size:14px; color:var(--text-dim); }

/* Recommended VPS use-case cards */
.usecase-grid{
  display:grid; grid-template-columns:repeat(4, 1fr); gap:18px;
}
@media (max-width:1000px){ .usecase-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:600px){ .usecase-grid{grid-template-columns:1fr;} }
.usecase-card{
  background:var(--bg-card);
  border:1px solid var(--line);
  border-radius:14px; padding:24px; color:var(--text);
  border-top:3px solid var(--cyan);
}
.usecase-card h4{ font-size:19px; margin-bottom:10px; color:var(--text); }
.usecase-card p{ font-size:15px; color:var(--text-dim); line-height:1.5; }

/* Footer */
.site-footer{border-top:1px solid var(--line); padding:28px 0; margin-top:40px;}
.footer-simple{display:flex; flex-direction:column; align-items:flex-start; gap:8px; text-align:left;}
.footer-copy{color:var(--text-dim); font-size:13.5px;}

/* Footer description (editable via Customizer -> Footer) */
.footer-desc{color:var(--text-dim); font-size:14.5px; max-width:520px; margin:0; line-height:1.6;}

/* ------------------------------------------------------------------
   Mobile fixes: Cart & Checkout text getting clipped at the sides
   ------------------------------------------------------------------ */
@media (max-width:640px){
  /* Tighter page gutters on small screens so content has more room */
  .wrap{ padding:0 14px; }

  /* Stop anything on cart/checkout from pushing the page wider than the screen */
  .woocommerce-cart body, .woocommerce-checkout body{ overflow-x:hidden; }
  .woocommerce-cart .wrap, .woocommerce-checkout .wrap,
  .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout{
    max-width:100%; overflow-x:hidden;
  }

  /* Blocks cart/checkout: force single-column, full-width layout */
  .wc-block-components-sidebar-layout{ flex-wrap:wrap !important; }
  .wc-block-components-main, .wc-block-components-sidebar{
    width:100% !important; max-width:100% !important;
    padding-left:0 !important; padding-right:0 !important;
  }

  /* Long product names, emails, and meta (e.g. Disk: 75 GB NVMe) wrap instead of clipping */
  .wp-block-woocommerce-cart td, .wp-block-woocommerce-cart th,
  .wp-block-woocommerce-checkout td, .wp-block-woocommerce-checkout th,
  .wc-block-components-order-summary-item__description,
  .wc-block-components-product-name,
  .wc-block-components-product-details,
  .wc-block-components-totals-item__label,
  .wc-block-components-totals-item__description,
  .wc-block-cart-item__wrap{
    word-break:break-word; overflow-wrap:anywhere; white-space:normal !important;
  }

  /* Classic (shortcode) cart/checkout tables: wrap text, no fixed min-width */
  .woocommerce table.shop_table{
    width:100% !important; table-layout:fixed;
  }
  .woocommerce table.shop_table td, .woocommerce table.shop_table th{
    word-break:break-word; overflow-wrap:anywhere; white-space:normal !important;
    padding:8px 6px;
  }

  /* Inputs, selects, notices, payment boxes never exceed the screen */
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row select,
  .wc-block-components-text-input input,
  .wc-block-components-address-form input,
  .wc-blocks-components-select__container,
  .wc-block-components-radio-control,
  .wc-block-components-notice-banner{
    max-width:100% !important; box-sizing:border-box !important;
  }
}
