/* ============================================================
   SiteSecuris — Main Stylesheet
   ============================================================ */

:root{
	--ss-dark: #0b1633;
	--ss-dark-2: #122048;
	--ss-primary: #2563eb;
	--ss-primary-dark: #1d4ed8;
	--ss-accent: #38bdf8;
	--ss-success: #16a34a;
	--ss-warn: #d97706;
	--ss-danger: #dc2626;
	--ss-text: #1f2937;
	--ss-muted: #6b7280;
	--ss-bg-light: #f9fafb;
	--ss-border: #e5e7eb;
	--ss-radius: 14px;
	--ss-max: 1160px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
	margin:0;
	font-family:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	color:var(--ss-text);
	background:#fff;
	line-height:1.6;
	font-size:16px;
}
img{max-width:100%;display:block}
a{color:var(--ss-primary);text-decoration:none}
a:hover{color:var(--ss-primary-dark)}
h1,h2,h3,h4{line-height:1.2;margin:0 0 16px;font-weight:800;letter-spacing:-0.02em}
p{margin:0 0 16px}
.ss-container{max-width:var(--ss-max);margin:0 auto;padding:0 24px}
.ss-section{padding:80px 0}
.ss-section.tight{padding:56px 0}
.ss-eyebrow{display:inline-block;color:var(--ss-primary);font-weight:700;font-size:13px;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:12px}
.ss-center{text-align:center}
.ss-lead{color:var(--ss-muted);font-size:18px;max-width:640px}
.ss-lead.center{margin-left:auto;margin-right:auto}

/* Buttons */
.ss-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:10px;font-weight:700;font-size:15px;cursor:pointer;border:2px solid transparent;transition:all .15s ease}
.ss-btn-primary{background:var(--ss-primary);color:#fff}
.ss-btn-primary:hover{background:var(--ss-primary-dark);color:#fff}
.ss-btn-outline{background:transparent;border-color:#fff;color:#fff}
.ss-btn-outline:hover{background:#fff;color:var(--ss-dark)}
.ss-btn-outline-dark{background:transparent;border-color:var(--ss-primary);color:var(--ss-primary)}
.ss-btn-outline-dark:hover{background:var(--ss-primary);color:#fff}
.ss-btn-lg{padding:16px 34px;font-size:16px}

/* Header */
.ss-header{position:sticky;top:0;z-index:100;background:rgba(15,23,42,0.96);backdrop-filter:blur(6px);border-bottom:1px solid rgba(255,255,255,0.08)}
.ss-header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.ss-logo{display:flex;align-items:center}
.ss-logo-fallback{display:flex;align-items:center;gap:10px;color:#fff;font-weight:800;font-size:20px;text-decoration:none}
.ss-logo .ss-logo-mark{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--ss-primary),var(--ss-accent));display:flex;align-items:center;justify-content:center;font-size:18px}
.ss-logo .custom-logo-link{display:flex;align-items:center}
.ss-logo img,.ss-logo .custom-logo{max-height:44px;width:auto;height:auto;display:block}
@media (max-width: 480px){.ss-logo img,.ss-logo .custom-logo{max-height:34px}}
.ss-nav{display:flex;align-items:center;gap:32px}
.ss-nav ul{list-style:none;display:flex;gap:28px;margin:0;padding:0}
.ss-nav a{color:#cbd5e1;font-weight:600;font-size:15px}
.ss-nav a:hover,.ss-nav .current-menu-item a{color:#fff}
.ss-header-cta{display:flex;align-items:center;gap:14px}
.ss-menu-toggle{display:none;background:none;border:none;color:#fff;font-size:26px;cursor:pointer}

@media (max-width: 880px){
	.ss-nav{position:fixed;inset:64px 0 0 0;background:var(--ss-dark);flex-direction:column;padding:24px;transform:translateY(-110%);transition:transform .25s ease;display:flex}
	.ss-nav.is-open{transform:translateY(0)}
	.ss-nav ul{flex-direction:column;gap:18px;width:100%}
	.ss-menu-toggle{display:block}
	.ss-header-cta .ss-btn-outline{display:none}
}

/* Hero */
.ss-hero{background:radial-gradient(1200px 600px at 80% -10%, rgba(37,99,235,0.35), transparent), linear-gradient(180deg,var(--ss-dark),var(--ss-dark-2));color:#fff;padding:100px 0 90px}
.ss-hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:56px;align-items:center}
.ss-hero h1{font-size:48px;color:#fff}
.ss-hero .ss-lead{color:#cbd5e1;font-size:19px;max-width:100%}
.ss-hero-badges{display:flex;gap:18px;margin-top:28px;flex-wrap:wrap}
.ss-hero-badge{display:flex;align-items:center;gap:8px;color:#94a3b8;font-size:14px}
.ss-hero-badge svg,.ss-hero-badge .ss-dot{width:8px;height:8px;border-radius:50%;background:var(--ss-success)}
.ss-hero-cta{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.ss-hero-panel{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:18px;padding:8px}

@media (max-width: 880px){
	.ss-hero-grid{grid-template-columns:1fr}
	.ss-hero h1{font-size:34px}
}

/* Stats bar */
.ss-stats{background:var(--ss-bg-light);border-bottom:1px solid var(--ss-border)}
.ss-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:36px 0}
.ss-stat{text-align:center}
.ss-stat .num{font-size:32px;font-weight:800;color:var(--ss-primary)}
.ss-stat .label{color:var(--ss-muted);font-size:14px}
@media (max-width: 720px){.ss-stats-grid{grid-template-columns:repeat(2,1fr)}}

/* Cards / grids */
.ss-grid{display:grid;gap:28px}
.ss-grid-3{grid-template-columns:repeat(3,1fr)}
.ss-grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width: 960px){.ss-grid-3,.ss-grid-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 620px){.ss-grid-3,.ss-grid-4{grid-template-columns:1fr}}

.ss-card{background:#fff;border:1px solid var(--ss-border);border-radius:var(--ss-radius);padding:28px;height:100%}
.ss-card .ss-icon{width:48px;height:48px;border-radius:10px;background:#eef2ff;color:var(--ss-primary);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:16px}
.ss-card h3{font-size:19px;margin-bottom:8px}
.ss-card p{color:var(--ss-muted);font-size:14.5px;margin-bottom:0}

/* Steps */
.ss-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:ssstep}
@media (max-width: 880px){.ss-steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 560px){.ss-steps{grid-template-columns:1fr}}
.ss-step{position:relative;padding:26px 20px;border-radius:var(--ss-radius);background:var(--ss-bg-light);counter-increment:ssstep}
.ss-step::before{content:counter(ssstep);display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--ss-primary);color:#fff;font-weight:700;margin-bottom:14px}
.ss-step h4{font-size:16px;margin-bottom:6px}
.ss-step p{color:var(--ss-muted);font-size:14px;margin:0}

/* Dark section */
.ss-section-dark{background:var(--ss-dark);color:#fff}
.ss-section-dark .ss-lead{color:#94a3b8}
.ss-section-dark .ss-card{background:rgba(255,255,255,0.04);border-color:rgba(255,255,255,0.1)}
.ss-section-dark .ss-card p{color:#94a3b8}
.ss-section-dark .ss-card h3{color:#fff}

/* Pricing */
.ss-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;align-items:stretch}
@media (max-width: 960px){.ss-pricing-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}
.ss-price-card{border:1px solid var(--ss-border);border-radius:var(--ss-radius);padding:32px 28px;display:flex;flex-direction:column;background:#fff}
.ss-price-card.featured{border-color:var(--ss-primary);box-shadow:0 20px 40px -20px rgba(37,99,235,0.35);position:relative}
.ss-price-card .ss-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--ss-primary);color:#fff;font-size:12px;font-weight:700;padding:4px 14px;border-radius:999px}
.ss-price-card h3{font-size:20px;margin-bottom:4px}
.ss-price-card .ss-price-sub{color:var(--ss-muted);font-size:14px;margin-bottom:18px}
.ss-price-card .ss-price{font-size:40px;font-weight:800;margin-bottom:4px}
.ss-price-card .ss-price span{font-size:15px;font-weight:600;color:var(--ss-muted)}
.ss-price-list{list-style:none;padding:0;margin:22px 0;flex:1}
.ss-price-list li{padding:9px 0;border-bottom:1px solid #f1f1f1;font-size:14.5px;display:flex;gap:10px;align-items:flex-start}
.ss-price-list li::before{content:'✓';color:var(--ss-success);font-weight:800}

/* Testimonials */
.ss-testimonial{background:var(--ss-bg-light);border-radius:var(--ss-radius);padding:26px;height:100%}
.ss-testimonial p{font-size:15px;color:var(--ss-text)}
.ss-testimonial .who{display:flex;align-items:center;gap:12px;margin-top:16px}
.ss-testimonial .avatar{width:40px;height:40px;border-radius:50%;background:var(--ss-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.ss-testimonial .who strong{display:block;font-size:14px}
.ss-testimonial .who span{color:var(--ss-muted);font-size:13px}

/* CTA band */
.ss-cta-band{background:linear-gradient(120deg,var(--ss-primary),#0b1633);color:#fff;border-radius:20px;padding:56px;text-align:center}
.ss-cta-band h2{color:#fff}
.ss-cta-band p{color:#e0e0ff}

/* Contact form */
.ss-form{display:grid;gap:16px;max-width:640px}
.ss-form label{font-weight:600;font-size:14px;display:block;margin-bottom:6px}
.ss-form input,.ss-form textarea,.ss-form select{width:100%;padding:12px 14px;border:1px solid var(--ss-border);border-radius:8px;font-size:15px;font-family:inherit}
.ss-form textarea{min-height:130px;resize:vertical}
.ss-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width: 620px){.ss-form-row{grid-template-columns:1fr}}
.ss-contact-info{display:grid;gap:18px}
.ss-contact-info .item{display:flex;gap:14px;align-items:flex-start}
.ss-contact-info .ss-icon{flex:0 0 auto;width:40px;height:40px;border-radius:10px;background:#eef2ff;color:var(--ss-primary);display:flex;align-items:center;justify-content:center}

/* Footer */
.ss-footer{background:var(--ss-dark);color:#94a3b8;padding:64px 0 28px}
.ss-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
@media (max-width: 780px){.ss-footer-grid{grid-template-columns:repeat(2,1fr)}}
.ss-footer h4{color:#fff;font-size:15px;margin-bottom:16px}
.ss-footer ul{list-style:none;margin:0;padding:0}
.ss-footer ul li{margin-bottom:10px}
.ss-footer a{color:#94a3b8;font-size:14px}
.ss-footer a:hover{color:#fff}
.ss-footer-bottom{border-top:1px solid rgba(255,255,255,0.08);margin-top:44px;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px}

/* Contact page layout */
.ss-contact-grid{grid-template-columns:1.3fr 1fr;gap:56px}
@media (max-width: 880px){.ss-contact-grid{grid-template-columns:1fr}}

/* Blog */
.ss-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media (max-width: 960px){.ss-post-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 620px){.ss-post-grid{grid-template-columns:1fr}}
.ss-post-card{border:1px solid var(--ss-border);border-radius:var(--ss-radius);overflow:hidden;display:flex;flex-direction:column;height:100%}
.ss-post-card .thumb{aspect-ratio:16/9;background:linear-gradient(135deg,var(--ss-primary),var(--ss-accent))}
.ss-post-card .body{padding:20px}
.ss-post-card .meta{color:var(--ss-muted);font-size:12.5px;margin-bottom:8px}
.ss-post-card h3{font-size:17px;margin-bottom:8px}
.ss-post-card h3 a{color:var(--ss-text)}
.ss-single-content{max-width:760px;margin:0 auto}
.ss-single-content img{border-radius:12px}

/* 404 */
.ss-404{text-align:center;padding:120px 0}
.ss-404 .code{font-size:96px;font-weight:800;color:var(--ss-primary);margin-bottom:0}

/* Cookie consent banner */
.ss-link-button{background:none;border:none;padding:0;color:#94a3b8;font-size:14px;cursor:pointer;font-family:inherit;text-align:left}
.ss-link-button:hover{color:#fff}
.ss-cookie-consent{position:fixed;left:0;right:0;bottom:-200px;z-index:9999;background:var(--ss-dark);border-top:1px solid rgba(255,255,255,0.12);box-shadow:0 -8px 30px rgba(0,0,0,0.25);transition:bottom .35s ease;padding:18px 20px}
.ss-cookie-consent.is-visible{bottom:0}
.ss-cookie-consent-inner{max-width:var(--ss-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ss-cookie-consent-inner p{color:#cbd5e1;font-size:14px;margin:0;max-width:640px}
.ss-cookie-consent-inner a{color:#fff;text-decoration:underline}
.ss-cookie-consent-actions{display:flex;gap:12px;flex-shrink:0}
.ss-cookie-consent-actions .ss-btn{padding:10px 20px;font-size:14px}
@media (max-width: 620px){.ss-cookie-consent-inner{flex-direction:column;align-items:flex-start}.ss-cookie-consent-actions{width:100%}.ss-cookie-consent-actions .ss-btn{flex:1}}

/* Utility */
/* Blog post inline CTA */
.ss-audit-cta{background:var(--ss-bg-light);border:1px solid var(--ss-border);border-radius:var(--ss-radius);padding:24px 28px;text-align:center;font-size:17px;font-weight:600;color:var(--ss-text)}
.ss-audit-cta a{display:inline-block;margin-top:12px;background:var(--ss-primary);color:#fff;padding:12px 26px;border-radius:10px;font-weight:700;text-decoration:none}
.ss-audit-cta a:hover{background:var(--ss-primary-dark)}

.mt-0{margin-top:0}
.mb-0{margin-bottom:0}
