/*
Theme Name: Tikelo Digital Solutions
Theme URI: https://tikelo.co.za/
Author: Tikelo Holdings
Author URI: https://tikelo.co.za/
Description: A modern, responsive WordPress theme for Tikelo Holdings, focused on professional websites, custom systems, business email, digital solutions, portfolio work and lead generation.
Version: 1.5.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: tikelo
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-logo, custom-menu, featured-images, portfolio, business, responsive-layout
*/

:root{
  --tikelo-primary:#111827;
  --tikelo-secondary:#2563eb;
  --tikelo-accent:#f59e0b;
  --tikelo-bg:#ffffff;
  --tikelo-surface:#f8fafc;
  --tikelo-text:#0f172a;
  --tikelo-muted:#64748b;
  --tikelo-border:#e2e8f0;
  --tikelo-radius:20px;
  --tikelo-shadow:0 20px 55px rgba(15,23,42,.10);
  --tikelo-container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--tikelo-text);background:var(--tikelo-bg);line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--tikelo-secondary);text-decoration:none}a:hover{text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(calc(100% - 32px),var(--tikelo-container));margin-inline:auto}
.section{padding:88px 0}.section-sm{padding:56px 0}.surface{background:var(--tikelo-surface)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--tikelo-secondary);margin-bottom:14px}
.eyebrow:before{content:"";width:28px;height:2px;background:var(--tikelo-accent);border-radius:999px}
h1,h2,h3,h4{line-height:1.12;margin-top:0;color:var(--tikelo-primary)}h1{font-size:clamp(2.7rem,6vw,5.7rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.04em}h3{font-size:1.3rem}.lead{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--tikelo-muted);max-width:760px}.muted{color:var(--tikelo-muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:13px 21px;border-radius:12px;font-weight:800;border:1px solid transparent;transition:.2s ease;cursor:pointer;font:inherit}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--tikelo-secondary);color:#fff;box-shadow:0 12px 28px color-mix(in srgb,var(--tikelo-secondary) 25%,transparent)}.btn-dark{background:var(--tikelo-primary);color:#fff}.btn-outline{border-color:var(--tikelo-border);color:var(--tikelo-primary);background:#fff}.btn-accent{background:var(--tikelo-accent);color:#111827}.actions{display:flex;flex-wrap:wrap;gap:12px}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(226,232,240,.85)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px}.brand{display:flex;align-items:center;gap:12px;color:var(--tikelo-primary);font-size:1.18rem;font-weight:900}.brand img,.custom-logo{max-height:58px;width:auto}.default-site-logo{display:block;max-width:250px}.footer-brand img{max-width:220px;height:auto;margin-bottom:14px}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,var(--tikelo-secondary),var(--tikelo-accent));color:#fff;font-weight:900}.main-nav ul{list-style:none;display:flex;gap:26px;align-items:center;margin:0;padding:0}.main-nav a{color:var(--tikelo-primary);font-weight:700;font-size:.96rem}.main-nav a:hover,.main-nav .current-menu-item>a{color:var(--tikelo-secondary)}.nav-cta{white-space:nowrap}.menu-toggle{display:none;background:none;border:0;font-size:1.5rem;padding:8px;cursor:pointer;color:var(--tikelo-primary)}
.hero{position:relative;overflow:hidden;padding:104px 0 80px;background:radial-gradient(circle at 85% 15%,color-mix(in srgb,var(--tikelo-secondary) 14%,transparent),transparent 30%),linear-gradient(180deg,#fff,var(--tikelo-surface))}.hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:color-mix(in srgb,var(--tikelo-accent) 15%,transparent);filter:blur(20px);right:-150px;bottom:-180px}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .85fr;gap:54px;align-items:center}.hero h1 span{color:var(--tikelo-secondary)}.hero-card{background:#fff;border:1px solid var(--tikelo-border);border-radius:28px;padding:26px;box-shadow:var(--tikelo-shadow)}.hero-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.status{display:inline-flex;align-items:center;gap:7px;font-size:.82rem;font-weight:800;color:#166534;background:#dcfce7;padding:7px 10px;border-radius:999px}.status:before{content:"";width:7px;height:7px;background:#22c55e;border-radius:50%}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mini-card{border:1px solid var(--tikelo-border);border-radius:16px;padding:18px;background:var(--tikelo-surface)}.mini-card strong{display:block;font-size:1.04rem;color:var(--tikelo-primary)}.hero-price{padding:18px;border-radius:18px;background:var(--tikelo-primary);color:#fff;margin-top:14px}.hero-price span{color:#cbd5e1}.hero-price strong{display:block;font-size:2rem;color:#fff}
.trust-strip{border-block:1px solid var(--tikelo-border);background:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.trust-item{padding:22px;border-right:1px solid var(--tikelo-border);font-weight:800;color:var(--tikelo-primary)}.trust-item:last-child{border-right:0}.trust-item small{display:block;font-weight:600;color:var(--tikelo-muted)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:38px}.section-head>*{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--tikelo-border);border-radius:var(--tikelo-radius);padding:26px;transition:.2s ease}.card:hover{transform:translateY(-5px);box-shadow:var(--tikelo-shadow);border-color:transparent}.icon{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--tikelo-secondary) 10%,white);color:var(--tikelo-secondary);font-size:1.35rem;margin-bottom:20px}.card p{color:var(--tikelo-muted);margin-bottom:0}.service-link{display:inline-block;margin-top:16px;font-weight:800}
.dark-section{background:var(--tikelo-primary);color:#cbd5e1}.dark-section h2,.dark-section h3{color:#fff}.dark-section .eyebrow{color:#93c5fd}.dark-section .card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}.dark-section .card p{color:#cbd5e1}.dark-section .icon{background:rgba(255,255,255,.1);color:#fff}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.project{background:#fff;border:1px solid var(--tikelo-border);border-radius:24px;overflow:hidden;box-shadow:0 10px 35px rgba(15,23,42,.06)}.project-media{aspect-ratio:16/9;background:linear-gradient(135deg,color-mix(in srgb,var(--tikelo-secondary) 18%,white),color-mix(in srgb,var(--tikelo-accent) 16%,white));display:grid;place-items:center;color:var(--tikelo-primary);font-size:1.4rem;font-weight:900;padding:30px;text-align:center}.project-media img{width:100%;height:100%;object-fit:cover}.project-body{padding:24px}.project-meta{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--tikelo-secondary);font-weight:800;margin-bottom:8px}.project-body p{color:var(--tikelo-muted)}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:step}.process-item{counter-increment:step;position:relative;padding:26px 22px;border:1px solid var(--tikelo-border);border-radius:20px;background:#fff}.process-item:before{content:"0" counter(step);display:block;font-weight:900;color:var(--tikelo-secondary);font-size:.9rem;margin-bottom:24px}.process-item p{color:var(--tikelo-muted);margin-bottom:0}
.cta{border-radius:30px;padding:50px;background:linear-gradient(135deg,var(--tikelo-secondary),color-mix(in srgb,var(--tikelo-primary) 85%,var(--tikelo-secondary)));color:#fff;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;overflow:hidden;position:relative}.cta h2{color:#fff;margin-bottom:12px}.cta p{color:#dbeafe;margin-bottom:0;max-width:700px}.cta .btn{background:#fff;color:var(--tikelo-primary)}
.page-hero{padding:78px 0 52px;background:var(--tikelo-surface);border-bottom:1px solid var(--tikelo-border)}.content-wrap{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:42px}.entry-content>*:first-child{margin-top:0}.entry-content img{border-radius:18px}.sidebar-card{border:1px solid var(--tikelo-border);border-radius:20px;padding:22px;background:#fff;position:sticky;top:110px}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px}.contact-panel{background:var(--tikelo-primary);color:#cbd5e1;border-radius:24px;padding:32px}.contact-panel h2,.contact-panel h3{color:#fff}.contact-list{display:grid;gap:16px;margin:26px 0}.contact-list a{color:#fff;font-weight:700}.social-links{display:flex;gap:10px;flex-wrap:wrap}.social-links a{display:inline-flex;padding:9px 12px;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font-weight:700}.form-card{background:#fff;border:1px solid var(--tikelo-border);border-radius:24px;padding:30px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:16px}.field label{display:block;font-weight:800;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;padding:13px 14px;border:1px solid var(--tikelo-border);border-radius:11px;font:inherit;background:#fff;color:var(--tikelo-text)}.field textarea{min-height:150px;resize:vertical}.notice{padding:12px 14px;border-radius:10px;margin-bottom:18px}.notice-success{background:#dcfce7;color:#166534}.notice-error{background:#fee2e2;color:#991b1b}
.site-footer{background:#0b1220;color:#94a3b8;padding:64px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:36px}.site-footer h3,.site-footer h4{color:#fff}.site-footer a{color:#cbd5e1}.footer-links{list-style:none;margin:0;padding:0;display:grid;gap:9px}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:999;display:flex;align-items:center;gap:9px;background:#25D366;color:#fff;padding:13px 17px;border-radius:999px;box-shadow:0 16px 35px rgba(37,211,102,.3);font-weight:900}.whatsapp-float:hover{transform:translateY(-2px);color:#fff}.wa-dot{font-size:1.25rem}
.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post-card{border:1px solid var(--tikelo-border);border-radius:20px;overflow:hidden;background:#fff}.post-card .post-body{padding:22px}.post-card .post-meta{font-size:.85rem;color:var(--tikelo-muted)}
@media(max-width:980px){.hero-grid,.contact-grid,.content-wrap{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;border-bottom:1px solid var(--tikelo-border);padding:20px}.main-nav.is-open{display:block}.main-nav ul{flex-direction:column;align-items:flex-start}.menu-toggle{display:block}.nav-cta{display:none}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid var(--tikelo-border)}}
@media(max-width:680px){.section{padding:68px 0}.hero{padding-top:72px}.cards,.portfolio-grid,.archive-grid,.process,.footer-grid,.form-row,.mini-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.cta{grid-template-columns:1fr;padding:34px 26px}.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--tikelo-border)}.trust-item:last-child{border-bottom:0}.whatsapp-float{right:14px;bottom:14px;padding:13px;width:52px;height:52px;justify-content:center}.whatsapp-float .wa-label{display:none}.hero-card{padding:20px}}
