/*
Theme Name: Sikaba Systems
Theme URI: https://sikabasystems.com
Author: Ahonya Systems
Author URI: https://ahonyasystems.com
Description: The official marketing, sales and digital-download storefront theme for Sikaba Systems — smart, affordable software for African businesses, NGOs, schools, churches and farms. Ships with a systems showcase, a Request-a-Demo pipeline, and full WooCommerce support for selling self-deploy digital downloads or Sikaba-managed deployments, with Paystack ready to go.
Version: 1.0.1
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sikaba-systems
Tags: e-commerce, one-column, two-columns, right-sidebar, custom-colors, custom-logo, custom-menu, featured-images, full-width-template, translation-ready, block-styles, wide-blocks

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Sikaba Systems and the Sikaba Systems logo are trademarks of Sikaba Systems.
Theme engineering by Ahonya Systems (https://ahonyasystems.com).
*/

/* -------------------------------------------------------------
   Design tokens
   Edit these in Appearance → Customize → Brand Colours, or here.
------------------------------------------------------------- */
:root{
  --sk-navy:        #0F2A4A;
  --sk-navy-dark:   #081826;
  --sk-navy-50:     #EAF0F7;
  --sk-gold:        #E7A94C;
  --sk-gold-dark:   #C98A2C;
  --sk-green:       #1C7C54;
  --sk-green-dark:  #12563A;
  --sk-cream:       #F7F5F1;
  --sk-white:       #FFFFFF;
  --sk-ink:         #16213A;
  --sk-ink-soft:    #4A5468;
  --sk-border:      #E4E0D6;
  --sk-danger:      #C1443D;

  --sk-font-display: "Sora", "Segoe UI", Arial, sans-serif;
  --sk-font-body: "Inter", "Segoe UI", Arial, sans-serif;

  --sk-radius: 14px;
  --sk-notch: 18px;
  --sk-shadow: 0 20px 45px -20px rgba(8, 24, 38, 0.35);
  --sk-container: 1200px;
}

/* -------------------------------------------------------------
   Reset & base
------------------------------------------------------------- */
*, *::before, *::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  font-family: var(--sk-font-body);
  color: var(--sk-ink);
  background: var(--sk-cream);
  line-height: 1.65;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}
img{ max-width:100%; height:auto; display:block; }
a{ color: var(--sk-navy); text-decoration: none; }
a:hover{ color: var(--sk-gold-dark); }
ul{ margin:0; padding:0; list-style:none; }
h1,h2,h3,h4,h5,h6{
  font-family: var(--sk-font-display);
  color: var(--sk-navy);
  line-height:1.15;
  margin: 0 0 .5em;
  font-weight:700;
}
h1{ font-size: clamp(2.1rem, 1.4rem + 3vw, 3.4rem); font-weight:800; letter-spacing:-.01em; }
h2{ font-size: clamp(1.7rem, 1.3rem + 1.6vw, 2.4rem); font-weight:800; }
h3{ font-size: 1.3rem; }
p{ margin: 0 0 1em; color: var(--sk-ink-soft); }
.container{ max-width: var(--sk-container); margin-inline:auto; padding-inline: 24px; }
.sk-eyebrow{
  display:inline-flex; align-items:center; gap:8px;
  font-family: var(--sk-font-display); font-weight:700; font-size:.78rem;
  letter-spacing:.14em; text-transform:uppercase; color: var(--sk-green-dark);
  background: rgba(28,124,84,.09); padding:6px 14px; border-radius:999px; margin-bottom:16px;
}
.sk-eyebrow::before{ content:""; width:6px; height:6px; border-radius:50%; background: var(--sk-gold); }
.screen-reader-text{ position:absolute !important; clip:rect(1px,1px,1px,1px); overflow:hidden; height:1px; width:1px; word-wrap:normal !important; }
:focus-visible{ outline: 3px solid var(--sk-gold); outline-offset: 2px; }
.skip-link{ position:absolute; left:-9999px; top:0; background:var(--sk-navy); color:#fff; padding:12px 20px; z-index:10000; border-radius: 0 0 8px 0; }
.skip-link:focus{ left:0; }

/* -------------------------------------------------------------
   Notched "system card" signature shape
   (a single chamfered corner, echoed across cards, buttons, tiles)
------------------------------------------------------------- */
.sk-notch{
  clip-path: polygon(0 0, calc(100% - var(--sk-notch)) 0, 100% var(--sk-notch), 100% 100%, 0 100%);
}

/* -------------------------------------------------------------
   Buttons
------------------------------------------------------------- */
.sk-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  font-family: var(--sk-font-display); font-weight:700; font-size:.95rem;
  padding: 14px 26px; border-radius: 10px; border:2px solid transparent;
  cursor:pointer; transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease, color .15s ease;
  line-height:1;
}
.sk-btn:hover{ transform: translateY(-2px); }
.sk-btn-primary{ background: var(--sk-gold); color: var(--sk-navy-dark); box-shadow: var(--sk-shadow); }
.sk-btn-primary:hover{ background: var(--sk-gold-dark); color: var(--sk-navy-dark); }
.sk-btn-outline{ background: transparent; border-color: rgba(255,255,255,.5); color: inherit; }
.sk-btn-outline:hover{ border-color: var(--sk-gold); color: var(--sk-gold); }
.sk-btn-navy{ background: var(--sk-navy); color:#fff; }
.sk-btn-navy:hover{ background: var(--sk-navy-dark); color:#fff; }
.sk-btn-block{ width:100%; }
.sk-btn[disabled], .sk-btn.disabled{ opacity:.55; cursor:not-allowed; transform:none; }

/* -------------------------------------------------------------
   Site header
------------------------------------------------------------- */
.sk-header{ position: sticky; top:0; z-index: 999; background: rgba(247,245,241,.92); backdrop-filter: blur(10px); border-bottom:1px solid var(--sk-border); }
.sk-header-inner{ display:flex; align-items:center; justify-content:space-between; gap:24px; padding: 14px 24px; }
.sk-logo img{ height: 34px; width:auto; }
.sk-primary-nav ul{ display:flex; align-items:center; gap: 6px; }
.sk-primary-nav a{
  display:block; padding: 10px 14px; border-radius: 8px; font-weight:600; font-size:.95rem; color: var(--sk-ink);
}
.sk-primary-nav a:hover, .sk-primary-nav .current-menu-item > a{ background: var(--sk-navy-50); color: var(--sk-navy); }
.sk-primary-nav .menu-item-has-children{ position:relative; }
.sk-primary-nav .sub-menu{
  position:absolute; top: 100%; left:0; background:#fff; min-width: 240px; border-radius: 12px;
  box-shadow: var(--sk-shadow); padding: 8px; opacity:0; visibility:hidden; transform: translateY(6px);
  transition: all .18s ease; border:1px solid var(--sk-border);
}
.sk-primary-nav .menu-item-has-children:hover > .sub-menu,
.sk-primary-nav .menu-item-has-children:focus-within > .sub-menu{ opacity:1; visibility:visible; transform:translateY(0); }
.sk-primary-nav .sub-menu a{ padding:10px 12px; border-radius:8px; }
.sk-header-actions{ display:flex; align-items:center; gap:10px; }
.sk-cart-link{ position:relative; display:inline-flex; padding:10px; border-radius:8px; }
.sk-cart-count{
  position:absolute; top:2px; right:2px; background: var(--sk-gold); color: var(--sk-navy-dark);
  font-size:.65rem; font-weight:800; border-radius:999px; min-width:16px; height:16px; display:flex; align-items:center; justify-content:center; padding:0 3px;
}
.sk-menu-toggle{ display:none; position:relative; z-index:1103; align-items:center; justify-content:center; flex:0 0 48px; width:48px; height:48px; background:var(--sk-navy); border:0; border-radius:12px; padding:0; cursor:pointer; box-shadow:0 8px 18px rgba(15,42,74,.24); transition:background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.sk-menu-toggle:hover,.sk-menu-toggle:focus-visible{ background:var(--sk-green-dark); transform:translateY(-1px); box-shadow:0 10px 22px rgba(15,42,74,.3); }
.sk-menu-toggle span{ display:block; width:22px; height:2px; background:#fff; border-radius:2px; margin:3px 0; transition:transform .2s ease, opacity .2s ease; }
.sk-menu-toggle[aria-expanded="true"] span:nth-child(1){ transform:translateY(6px) rotate(45deg); }
.sk-menu-toggle[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.sk-menu-toggle[aria-expanded="true"] span:nth-child(3){ transform:translateY(-6px) rotate(-45deg); }

@media (max-width: 900px){
  .sk-menu-toggle{ display:flex; }
  .sk-primary-nav{
    position:fixed; inset: 0 0 0 30%; background:#fff; padding: 90px 24px 24px; transform: translateX(100%);
    transition: transform .25s ease; overflow-y:auto; z-index:1101; visibility:hidden;
  }
  .sk-primary-nav.is-open{ transform: translateX(0); visibility:visible; }
  .sk-primary-nav a{ min-height:44px; display:flex; align-items:center; padding:10px 12px; }
  .sk-header-actions .sk-btn{ display:none; }
  .sk-primary-nav ul{ flex-direction:column; align-items:stretch; gap:2px; }
  .sk-primary-nav .sub-menu{ position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; border:none; display:none; padding-left:12px; }
  .sk-primary-nav .menu-item-has-children.is-expanded .sub-menu{ display:block; }
  body.sk-nav-open{ overflow:hidden; }
  .sk-nav-backdrop{ position:fixed; inset:0; background: rgba(8,24,38,.5); z-index:1100; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .2s ease, visibility .2s ease; }
  .sk-nav-backdrop.is-open{ opacity:1; visibility:visible; pointer-events:auto; }
}

@media (max-width: 560px){
  .sk-primary-nav{ inset: 0 0 0 12%; padding-inline:18px; }
  .sk-header-inner{ gap:10px; padding-inline:16px; }
  .sk-logo img{ height:30px; }
}

@media (min-width: 901px){
  .sk-primary-nav{ visibility:visible; }
}

/* -------------------------------------------------------------
   Hero
------------------------------------------------------------- */
.sk-hero{ background: linear-gradient(160deg, var(--sk-navy) 0%, var(--sk-navy-dark) 100%); color:#fff; padding: 72px 0 100px; overflow:hidden; position:relative; }
.sk-hero::after{
  content:""; position:absolute; inset:auto -10% -30% auto; width:520px; height:520px; border-radius:50%;
  background: radial-gradient(circle, rgba(231,169,76,.18), transparent 70%); pointer-events:none;
}
.sk-hero-grid{ display:grid; grid-template-columns: 1.1fr .9fr; gap: 56px; align-items:center; position:relative; z-index:1; }
.sk-hero p.sk-lede{ color: rgba(247,245,241,.82); font-size: 1.15rem; max-width:46ch; }
.sk-hero-actions{ display:flex; flex-wrap:wrap; gap:14px; margin-top: 28px; }
.sk-hero-meta{ display:flex; flex-wrap:wrap; gap: 28px; margin-top: 40px; }
.sk-hero-meta div{ font-family: var(--sk-font-display); }
.sk-hero-meta strong{ display:block; font-size:1.3rem; color: var(--sk-gold); }
.sk-hero-meta span{ font-size:.8rem; color: rgba(247,245,241,.65); }
.sk-hero-visual{ display:flex; justify-content:center; }
.sk-hero-visual svg{ width:100%; max-width:380px; height:auto; filter: drop-shadow(0 30px 40px rgba(0,0,0,.35)); }

@media (max-width: 900px){
  .sk-hero-grid{ grid-template-columns:1fr; }
  .sk-hero-visual{ order:-1; max-width:260px; margin-inline:auto; }
}

/* -------------------------------------------------------------
   Sections & cards
------------------------------------------------------------- */
.sk-section{ padding: 84px 0; }
.sk-section-alt{ background: var(--sk-white); }
.sk-section-navy{ background: var(--sk-navy); color:#fff; }
.sk-section-navy h2, .sk-section-navy p{ color:#fff; }
.sk-section-head{ max-width: 640px; margin-bottom: 48px; }
.sk-section-head.center{ margin-inline:auto; text-align:center; }

.sk-grid{ display:grid; gap: 26px; }
.sk-grid-3{ grid-template-columns: repeat(3, 1fr); }
.sk-grid-4{ grid-template-columns: repeat(4, 1fr); }
.sk-grid-2{ grid-template-columns: repeat(2, 1fr); }
@media (max-width: 980px){ .sk-grid-3, .sk-grid-4{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 620px){ .sk-grid-3, .sk-grid-4, .sk-grid-2{ grid-template-columns: 1fr; } }

.sk-card{
  background:#fff; border:1px solid var(--sk-border); border-radius: var(--sk-radius);
  padding: 28px; transition: transform .18s ease, box-shadow .18s ease;
}
.sk-card:hover{ transform: translateY(-4px); box-shadow: var(--sk-shadow); }
.sk-card-icon{ width:48px; height:48px; border-radius:12px; background: var(--sk-navy-50); display:flex; align-items:center; justify-content:center; margin-bottom:18px; color: var(--sk-navy); }

/* System showcase card */
.sk-system-card{ background:#fff; border:1px solid var(--sk-border); overflow:hidden; display:flex; flex-direction:column; transition: transform .18s ease, box-shadow .18s ease; }
.sk-system-card:hover{ transform: translateY(-6px); box-shadow: var(--sk-shadow); }
.sk-system-card figure{ margin:0; aspect-ratio: 4/3; overflow:hidden; background: var(--sk-navy); }
.sk-system-card figure img{ width:100%; height:100%; object-fit:cover; transition: transform .35s ease; }
.sk-system-card:hover figure img{ transform: scale(1.06); }
.sk-system-card .body{ padding: 22px 24px 26px; flex:1; display:flex; flex-direction:column; }
.sk-system-card .body h3{ margin-bottom:6px; }
.sk-system-card .body p{ flex:1; font-size:.95rem; }
.sk-system-card .tags{ display:flex; flex-wrap:wrap; gap:6px; margin: 10px 0 16px; }
.sk-system-card .tags span{ font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; background: var(--sk-navy-50); color:var(--sk-navy); padding:4px 10px; border-radius:999px; }
.sk-system-card .cta{ display:flex; align-items:center; justify-content:space-between; font-family: var(--sk-font-display); font-weight:700; color: var(--sk-navy); }

/* Stats strip */
.sk-stats{ display:grid; grid-template-columns: repeat(4,1fr); gap:24px; margin-top:-56px; position:relative; z-index:2; }
.sk-stat{ background:#fff; border-radius: var(--sk-radius); padding: 24px; box-shadow: var(--sk-shadow); text-align:center; border:1px solid var(--sk-border); }
.sk-stat strong{ display:block; font-family: var(--sk-font-display); font-size:1.8rem; color: var(--sk-navy); }
.sk-stat span{ font-size:.8rem; color: var(--sk-ink-soft); }
@media (max-width: 900px){ .sk-stats{ grid-template-columns: repeat(2,1fr); margin-top:24px; } }

/* Feature row w/ notch icon */
.sk-feature{ display:flex; gap:16px; }
.sk-feature .mark{ flex:0 0 auto; width:44px; height:44px; background: var(--sk-gold); color:var(--sk-navy-dark); display:flex; align-items:center; justify-content:center; font-family:var(--sk-font-display); font-weight:800; }
.sk-feature h3{ font-size:1.05rem; margin-bottom:4px; }
.sk-feature p{ font-size:.92rem; margin:0; }

/* Testimonials */
.sk-quote{ background:#fff; border:1px solid var(--sk-border); border-radius: var(--sk-radius); padding:28px; }
.sk-quote p{ color: var(--sk-ink); font-size:1.02rem; }
.sk-quote footer{ display:flex; align-items:center; gap:10px; margin-top:16px; font-family: var(--sk-font-display); font-weight:700; color: var(--sk-navy); font-size:.9rem; }
.sk-quote footer span{ display:block; font-weight:500; color: var(--sk-ink-soft); font-size:.8rem; }

/* CTA band */
.sk-cta-band{ background: linear-gradient(120deg, var(--sk-green-dark), var(--sk-navy)); color:#fff; border-radius: 24px; padding: 56px; text-align:center; }
.sk-cta-band h2{ color:#fff; }
.sk-cta-band p{ color: rgba(255,255,255,.82); max-width:52ch; margin-inline:auto; }
.sk-cta-band .sk-hero-actions{ justify-content:center; }

/* -------------------------------------------------------------
   Footer
------------------------------------------------------------- */
.sk-footer{ background: var(--sk-navy-dark); color: rgba(247,245,241,.75); padding: 64px 0 0; }
.sk-footer a{ color: rgba(247,245,241,.75); }
.sk-footer a:hover{ color: var(--sk-gold); }
.sk-footer-grid{ display:grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 32px; padding-bottom: 48px; border-bottom: 1px solid rgba(247,245,241,.12); }
.sk-footer-grid h4{ color:#fff; font-size:.85rem; letter-spacing:.06em; text-transform:uppercase; margin-bottom:16px; }
.sk-footer-grid li{ margin-bottom:10px; font-size:.92rem; }
.sk-footer-brand img{ height:32px; margin-bottom:14px; }
.sk-footer-brand p{ color: rgba(247,245,241,.6); font-size:.9rem; max-width:34ch; }
.sk-social{ display:flex; gap:10px; margin-top:16px; }
.sk-social a{ width:34px; height:34px; border-radius:8px; background: rgba(247,245,241,.08); display:flex; align-items:center; justify-content:center; }
.sk-social a:hover{ background: var(--sk-gold); color: var(--sk-navy-dark); }
.sk-footer-bottom{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding: 22px 0; font-size:.82rem; color: rgba(247,245,241,.55); }
.sk-footer-credit a{ color: rgba(247,245,241,.75); font-weight:600; }
.sk-payment-badges{ display:flex; gap:8px; align-items:center; font-size:.78rem; }
.sk-payment-badges span{ background: rgba(247,245,241,.08); padding:4px 10px; border-radius:6px; }
@media (max-width: 900px){ .sk-footer-grid{ grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px){ .sk-footer-grid{ grid-template-columns: 1fr; } }

/* -------------------------------------------------------------
   Forms (Request Demo, Contact, comment form)
------------------------------------------------------------- */
.sk-form{ background:#fff; border:1px solid var(--sk-border); border-radius: var(--sk-radius); padding: 32px; box-shadow: var(--sk-shadow); }
.sk-form-row{ margin-bottom:18px; }
.sk-form-row label{ display:block; font-weight:700; font-size:.88rem; margin-bottom:6px; color: var(--sk-navy); }
.sk-form-row .req{ color: var(--sk-danger); }
.sk-form-row input[type=text],
.sk-form-row input[type=email],
.sk-form-row input[type=tel],
.sk-form-row select,
.sk-form-row textarea{
  width:100%; padding: 12px 14px; border-radius:10px; border:1.5px solid var(--sk-border);
  font-family: var(--sk-font-body); font-size:.95rem; background: var(--sk-cream);
}
.sk-form-row input:focus, .sk-form-row select:focus, .sk-form-row textarea:focus{ outline:none; border-color: var(--sk-gold); background:#fff; }
.sk-form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:0 18px; }
@media (max-width:620px){ .sk-form-grid{ grid-template-columns:1fr; } }
.sk-form-note{ font-size:.8rem; color: var(--sk-ink-soft); margin-top:14px; }
.sk-form-success{ background: rgba(28,124,84,.1); border:1.5px solid var(--sk-green); color: var(--sk-green-dark); padding:16px 18px; border-radius:10px; font-weight:600; }
.sk-form-error{ background: rgba(193,68,61,.08); border:1.5px solid var(--sk-danger); color: var(--sk-danger); padding:16px 18px; border-radius:10px; font-weight:600; }
/* honeypot */
.sk-hp{ position:absolute !important; left:-9999px !important; top:-9999px !important; }

/* Generic content (pages, blog posts) */
.sk-content-wrap{ padding: 64px 0; }
.sk-content-wrap .container{ max-width: 860px; }
.sk-content-wrap article img{ border-radius: var(--sk-radius); }
.sk-content-wrap .entry-title{ margin-bottom: .3em; }
.sk-post-meta{ font-size:.85rem; color: var(--sk-ink-soft); margin-bottom: 28px; }
.sk-pagination{ display:flex; gap:8px; margin-top: 40px; flex-wrap:wrap; }
.sk-pagination a, .sk-pagination span{ padding:8px 14px; border-radius:8px; border:1px solid var(--sk-border); font-weight:600; font-size:.85rem; }
.sk-pagination .current{ background: var(--sk-navy); color:#fff; border-color:var(--sk-navy); }

/* -------------------------------------------------------------
   WooCommerce
------------------------------------------------------------- */
.woocommerce ul.products{ display:grid; grid-template-columns: repeat(3,1fr); gap:26px; list-style:none; }
@media (max-width: 980px){ .woocommerce ul.products{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 620px){ .woocommerce ul.products{ grid-template-columns: 1fr; } }
.woocommerce ul.products li.product{
  background:#fff; border:1px solid var(--sk-border); border-radius: var(--sk-radius); padding:18px; transition: transform .18s ease, box-shadow .18s ease;
}
.woocommerce ul.products li.product:hover{ transform: translateY(-4px); box-shadow: var(--sk-shadow); }
.woocommerce ul.products li.product img{ border-radius: 10px; aspect-ratio:4/3; object-fit:cover; margin-bottom:14px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title{ font-family: var(--sk-font-display); font-weight:700; font-size:1.02rem; color: var(--sk-navy); margin: 0 0 6px; }
.woocommerce ul.products li.product .price{ font-family: var(--sk-font-display); font-weight:800; color: var(--sk-green-dark); font-size:1.05rem; }
.woocommerce ul.products li.product .button{
  display:inline-flex; margin-top:12px; background: var(--sk-navy); color:#fff !important; border-radius:8px; padding:10px 16px;
  font-weight:700; font-size:.85rem; font-family: var(--sk-font-display);
}
.woocommerce ul.products li.product .button:hover{ background: var(--sk-gold); color: var(--sk-navy-dark) !important; }
.woocommerce span.onsale{ background: var(--sk-gold); color: var(--sk-navy-dark); font-family: var(--sk-font-display); font-weight:800; }

.woocommerce div.product div.summary{ padding-left: 8px; }
.woocommerce div.product p.price, .woocommerce div.product span.price{ color: var(--sk-green-dark); font-family: var(--sk-font-display); font-size:1.5rem; font-weight:800; }
.woocommerce div.product .woocommerce-product-details__short-description{ color: var(--sk-ink-soft); }
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button{
  background: var(--sk-navy); color:#fff; border-radius:10px; font-family: var(--sk-font-display); font-weight:700; padding:14px 26px; border:none;
}
.woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover{ background: var(--sk-gold); color: var(--sk-navy-dark); }
.woocommerce nav.woocommerce-pagination ul{ border:none; display:flex; gap:8px; }
.woocommerce nav.woocommerce-pagination ul li{ border:none; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span{ border:1px solid var(--sk-border); border-radius:8px; padding:8px 14px; }

/* Deployment option chooser on single product page */
.sk-deploy-options{ margin: 20px 0 24px; border:1.5px solid var(--sk-border); border-radius: var(--sk-radius); overflow:hidden; }
.sk-deploy-options legend{ font-family: var(--sk-font-display); font-weight:700; padding: 14px 18px; background: var(--sk-navy-50); width:100%; color: var(--sk-navy); font-size:.85rem; text-transform:uppercase; letter-spacing:.04em; }
.sk-deploy-option{ display:flex; gap:14px; padding: 16px 18px; border-top:1px solid var(--sk-border); cursor:pointer; align-items:flex-start; }
.sk-deploy-option:first-of-type{ border-top:none; }
.sk-deploy-option input{ margin-top:5px; accent-color: var(--sk-green); }
.sk-deploy-option .label{ font-weight:700; color: var(--sk-navy); font-family: var(--sk-font-display); display:flex; justify-content:space-between; gap:10px; }
.sk-deploy-option .desc{ font-size:.85rem; color: var(--sk-ink-soft); margin-top:2px; }
.sk-deploy-option .fee{ font-weight:800; color: var(--sk-green-dark); white-space:nowrap; }
.sk-deploy-option.is-selected{ background: rgba(231,169,76,.08); }

/* Cart / checkout */
.woocommerce table.shop_table{ border-radius: var(--sk-radius); overflow:hidden; border:1px solid var(--sk-border); }
.woocommerce table.shop_table th{ background: var(--sk-navy-50); font-family: var(--sk-font-display); }
.woocommerce-checkout #payment{ background:#fff !important; border-radius: var(--sk-radius); border:1px solid var(--sk-border); }
.woocommerce-checkout #payment ul.payment_methods{ border-bottom:1px solid var(--sk-border) !important; }
.sk-deploy-cart-note{ display:inline-block; margin-top:6px; font-size:.78rem; font-weight:700; color: var(--sk-green-dark); background: rgba(28,124,84,.1); padding:3px 10px; border-radius:999px; }

/* Digital download / self-deploy badges on product cards */
.sk-product-badges{ display:flex; gap:6px; flex-wrap:wrap; margin: 6px 0 4px; }
.sk-product-badges span{ font-size:.68rem; font-weight:800; letter-spacing:.03em; text-transform:uppercase; padding:3px 9px; border-radius:999px; }
.sk-badge-download{ background: var(--sk-navy-50); color: var(--sk-navy); }
.sk-badge-managed{ background: rgba(231,169,76,.18); color: var(--sk-gold-dark); }

/* Admin notices */
.sk-admin-notice ul{ list-style: disc; margin-left: 20px; }

/* Mobile submenu toggle button (added by Sikaba_Nav_Walker) */
.sk-submenu-toggle{ display:none; }
@media (max-width: 900px){
  .sk-primary-nav li{ position:relative; }
  .sk-submenu-toggle{
    display:block; position:absolute; right:0; top:2px; width:38px; height:38px; background:none; border:none;
    font-size:1.4rem; line-height:1; color: var(--sk-navy); cursor:pointer;
  }
  .menu-item-has-children.is-expanded > .sk-submenu-toggle span{ transform: rotate(45deg); display:inline-block; }
}

/* Request-demo two-column layout collapses on smaller screens */
@media (max-width: 900px){
  .sk-section .sk-grid[style*="1fr 1.2fr"]{ grid-template-columns: 1fr !important; }
}


/* Full-screen mobile/tablet navigation overlay. */
@media (max-width: 900px) {
  .sk-header {
    z-index: 1200;
  }

  .sk-primary-nav {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100dvh;
    max-height: 100dvh;
    padding: 92px 24px 32px;
    background: var(--sk-cream);
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    transform: translateY(-105%);
    visibility: hidden;
    opacity: 0;
    z-index: 1190;
    transition: transform .25s ease, opacity .2s ease, visibility .2s ease;
  }

  .sk-primary-nav.is-open {
    transform: translateY(0);
    visibility: visible;
    opacity: 1;
  }

  .sk-primary-nav ul {
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    padding-bottom: 24px;
  }

  .sk-primary-nav li,
  .sk-primary-nav a {
    width: 100%;
  }

  .sk-primary-nav a {
    min-height: 52px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--sk-border);
    font-size: 1rem;
  }

  .sk-nav-backdrop {
    z-index: 1180;
  }

  .sk-menu-toggle {
    position: relative;
    z-index: 1210;
  }
}

@media (max-width: 560px) {
  .sk-primary-nav {
    padding: 84px 16px 24px;
  }
}