:root {
  --primary: #0077b6;
  --primary-dark: #005f94;
  --primary-light: #2196d6;
  --secondary: #023e8a;
  --secondary-light: #034a9e;
  --accent: #00b4d8;
  --accent-light: #33c6e2;
  --bg: #ffffff;
  --bg-off: #f4f7fb;
  --bg-dark: #e8eef6;
  --text: #1b1b2f;
  --text-mid: #3a4055;
  --text-light: #6b7288;
  --border: #dde4ef;
  --border-dark: #c8d2e4;
  --accent-subtle: rgba(0,180,216,0.20);
  --primary-subtle: rgba(0,119,182,0.15);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.6;overflow-x:hidden;}
::-webkit-scrollbar{width:6px;}
::-webkit-scrollbar-track{background:var(--bg-off);}
::-webkit-scrollbar-thumb{background:var(--primary);border-radius:3px;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul{list-style:none;}
.container{max-width:1200px;margin:0 auto;padding:0 24px;}

.section-label{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-light);display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.section-label::before{content:'';display:block;width:28px;height:2px;background:var(--primary);flex-shrink:0;}
.section-title{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(28px,4vw,44px);line-height:1.05;color:var(--text);text-transform:uppercase;letter-spacing:-0.01em;}
.section-label-light{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.4);display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.section-label-light::before{content:'';display:block;width:28px;height:2px;background:var(--accent);flex-shrink:0;}
.section-title-light{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(26px,3.5vw,40px);line-height:1.05;color:#fff;text-transform:uppercase;letter-spacing:-0.01em;}

.cat-badge{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.14em;text-transform:uppercase;padding:3px 8px;background:var(--primary-subtle);color:var(--primary-dark);font-weight:500;display:inline-block;transition:background 0.2s,color 0.2s;}
.cat-badge:hover{background:var(--primary);color:#fff;}
.cat-badge.accent{background:var(--accent-subtle);color:#007a99;}
.cat-badge.accent:hover{background:var(--accent);color:#fff;}

.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--primary);color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.1em;text-transform:uppercase;padding:13px 28px;border:none;cursor:pointer;transition:background 0.2s;position:relative;}
.btn-primary:hover{background:var(--primary-dark);}
.btn-primary::after{content:'';position:absolute;bottom:-3px;right:-3px;width:100%;height:100%;border:2px solid var(--primary);transform:scaleX(0);transform-origin:left;transition:transform 0.25s;}
.btn-primary:hover::after{transform:scaleX(1);}
.btn-outline{display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--text);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.1em;text-transform:uppercase;padding:12px 26px;border:2px solid var(--border-dark);cursor:pointer;transition:border-color 0.2s,color 0.2s;}
.btn-outline:hover{border-color:var(--primary);color:var(--primary);}
.btn-ghost{display:inline-flex;align-items:center;gap:8px;background:transparent;color:rgba(255,255,255,0.8);font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.1em;text-transform:uppercase;padding:12px 24px;border:1px solid rgba(255,255,255,0.3);transition:border-color 0.2s,color 0.2s,background 0.2s;}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent);}
.btn-accent{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.1em;text-transform:uppercase;padding:13px 28px;transition:background 0.2s;}
.btn-accent:hover{background:var(--accent-light);}
.btn-cta-dark{display:inline-flex;align-items:center;gap:8px;background:var(--secondary);color:#fff;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.1em;text-transform:uppercase;padding:14px 30px;white-space:nowrap;transition:background 0.2s;}
.btn-cta-dark:hover{background:rgba(2,62,138,0.8);}
.post-meta{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.08em;color:var(--text-light);display:flex;align-items:center;gap:8px;flex-wrap:wrap;}

/* TOPBAR */
.topbar{background:var(--secondary);padding:8px 0;border-bottom:2px solid var(--primary);}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;}
.topbar-links{display:flex;gap:20px;}
.topbar-links a{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.6);transition:color 0.2s;}
.topbar-links a:hover{color:var(--accent);}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:0 24px;max-width:1200px;margin:0 auto;height:68px;}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.logo-icon{width:36px;height:36px;background:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.logo-text{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:20px;text-transform:uppercase;letter-spacing:0.02em;line-height:1.1;color:var(--text);}
.logo-text span{color:var(--primary);}
.logo-sub{font-family:'DM Mono',monospace;font-size:8px;letter-spacing:0.18em;text-transform:uppercase;color:var(--text-light);display:block;}
nav ul{display:flex;gap:2px;align-items:center;}
nav ul li a{font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-mid);padding:8px 12px;display:block;transition:color 0.2s;position:relative;}
nav ul li a::after{content:'';position:absolute;bottom:0;left:12px;right:12px;height:2px;background:var(--primary);transform:scaleX(0);transition:transform 0.2s;}
nav ul li a:hover{color:var(--primary);}
nav ul li a:hover::after{transform:scaleX(1);}
nav ul li.active a{color:var(--primary);}
nav ul li.active a::after{transform:scaleX(1);}

/* TICKER */
.ticker-wrap{background:var(--secondary);overflow:hidden;padding:10px 0;border-bottom:1px solid rgba(255,255,255,0.08);}
.ticker-inner{display:flex;align-items:center;overflow:hidden;}
.ticker-track{display:flex;animation:tickerScroll 32s linear infinite;white-space:nowrap;}
.ticker-track span{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.1em;color:rgba(255,255,255,0.5);padding:0 20px;text-transform:uppercase;}
.ticker-track span.dot{color:var(--accent);padding:0 6px;font-size:16px;line-height:1;}
@keyframes tickerScroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* HERO */
.page-hero{background:var(--secondary);position:relative;overflow:hidden;min-height:520px;display:grid;grid-template-columns:1fr 1fr;border-bottom:3px solid var(--primary);}

/* HERO DYNAMIC GRID OVERLAY */
.page-hero-grid-overlay{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden;}
.page-hero-grid-overlay::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(0,180,216,0.06) 1px,transparent 1px),linear-gradient(90deg,rgba(0,180,216,0.06) 1px,transparent 1px);background-size:48px 48px;animation:gridPulse 8s ease-in-out infinite;}
.page-hero-grid-overlay::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,rgba(0,180,216,0.12) 0%,transparent 55%);animation:gridGlow 6s ease-in-out infinite alternate;}
.page-hero-accent-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--accent),var(--primary),var(--accent),transparent);z-index:3;animation:barSweep 4s ease-in-out infinite;}
.page-hero-dot-grid{position:absolute;right:0;top:0;width:50%;height:100%;pointer-events:none;z-index:1;background-image:radial-gradient(rgba(0,180,216,0.18) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse at 80% 50%,black 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 80% 50%,black 30%,transparent 75%);}
.page-hero-corner-mark{position:absolute;top:24px;right:24px;width:60px;height:60px;z-index:3;pointer-events:none;}
.page-hero-corner-mark::before,.page-hero-corner-mark::after{content:'';position:absolute;background:var(--accent);}
.page-hero-corner-mark::before{top:0;right:0;width:2px;height:100%;}
.page-hero-corner-mark::after{top:0;right:0;width:100%;height:2px;}
.hero-stat{position:relative;overflow:hidden;}
.hero-stat::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,180,216,0.08) 0%,transparent 60%);opacity:0;transition:opacity 0.3s;}
.hero-stat:hover::after{opacity:1;}
@keyframes gridPulse{0%,100%{opacity:0.7;transform:translateY(0);}50%{opacity:1;transform:translateY(-4px);}}
@keyframes gridGlow{0%{opacity:0.6;transform:scale(1);}100%{opacity:1;transform:scale(1.08);}}
@keyframes barSweep{0%,100%{opacity:0.6;}50%{opacity:1;}}
.page-hero::before{content:'RAFFLE';position:absolute;left:-10px;top:50%;transform:translateY(-50%);font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:180px;color:transparent;-webkit-text-stroke:1px rgba(0,180,216,0.08);pointer-events:none;line-height:1;white-space:nowrap;}
.page-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 80% 50%,rgba(0,180,216,0.13) 0%,transparent 70%);pointer-events:none;z-index:0;}
.page-hero-content{position:relative;z-index:2;padding:72px 56px 72px 24px;display:flex;flex-direction:column;justify-content:center;max-width:600px;margin-left:auto;animation:fadeInUp 0.7s ease both;}
.page-hero-content::before{content:'';position:absolute;top:0;left:-24px;width:3px;height:100%;background:linear-gradient(180deg,transparent,var(--accent),transparent);opacity:0.6;animation:lineSweep 4s ease-in-out infinite;}
@keyframes lineSweep{0%,100%{opacity:0.4;transform:scaleY(0.7);}50%{opacity:0.9;transform:scaleY(1);}}
.page-hero-eyebrow{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;display:flex;align-items:center;gap:10px;}
.page-hero-eyebrow::before{content:'';width:28px;height:2px;background:var(--accent);}
.page-hero-title{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(52px,6.5vw,90px);line-height:0.92;text-transform:uppercase;color:#fff;margin-bottom:20px;letter-spacing:-0.02em;}
.page-hero-title em{font-style:normal;color:var(--accent);display:block;}
.page-hero-sub{font-size:14.5px;color:rgba(255,255,255,0.68);line-height:1.7;max-width:440px;margin-bottom:32px;font-weight:300;}
.page-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:36px;}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,0.10);max-width:400px;}
.hero-stat{padding:16px 18px;background:rgba(255,255,255,0.04);position:relative;overflow:hidden;transition:background 0.25s;}
.hero-stat:hover{background:rgba(0,180,216,0.14);}
.hero-stat::before{content:'';position:absolute;top:0;left:0;width:2px;height:100%;background:var(--accent);opacity:0.5;animation:statBar 3s ease-in-out infinite;}
@keyframes statBar{0%,100%{opacity:0.4;height:40%;}50%{opacity:0.9;height:100%;}}
.hero-stat-num{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:30px;color:var(--accent);line-height:1;display:block;}
.hero-stat-label{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-top:4px;display:block;}
.hero-feature-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px;}
.hero-feature-tag{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.55);padding:5px 10px;border:1px solid rgba(255,255,255,0.15);background:rgba(255,255,255,0.04);transition:border-color 0.2s,color 0.2s,background 0.2s,transform 0.2s;}
.hero-feature-tag:nth-child(1){animation:tagFadeIn 0.5s 0.3s both;}
.hero-feature-tag:nth-child(2){animation:tagFadeIn 0.5s 0.45s both;}
.hero-feature-tag:nth-child(3){animation:tagFadeIn 0.5s 0.6s both;}
.hero-feature-tag:nth-child(4){animation:tagFadeIn 0.5s 0.75s both;}
.hero-feature-tag:nth-child(5){animation:tagFadeIn 0.5s 0.9s both;}
.hero-feature-tag:nth-child(6){animation:tagFadeIn 0.5s 1.05s both;}
@keyframes tagFadeIn{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
.hero-feature-tag:hover{border-color:var(--accent);color:var(--accent);}
.page-hero-image{position:relative;overflow:hidden;}
.page-hero-image::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--secondary) 0%,transparent 45%);z-index:1;}
.page-hero-image::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(0,180,216,0.03) 0px,rgba(0,180,216,0.03) 1px,transparent 1px,transparent 18px);z-index:2;pointer-events:none;animation:diagonalShift 12s linear infinite;}
@keyframes diagonalShift{0%{background-position:0 0;}100%{background-position:36px 36px;}}
.hero-svg-wrap{width:100%;height:100%;display:block;}
@media(max-width:1024px){.page-hero-content{padding:48px 24px;}}
@media(max-width:768px){.page-hero-content{padding:40px 16px;}.hero-feature-tags{display:none;}}

/* ABOUT SECTION */
.about-section{padding:64px 0;background:var(--bg);}
.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.about-kicker{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--primary);display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.about-kicker::before{content:'';width:24px;height:2px;background:var(--primary);}
.about-heading{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(32px,4vw,52px);text-transform:uppercase;line-height:1.0;color:var(--text);margin-bottom:20px;}
.about-heading em{font-style:normal;color:var(--primary);}
.about-body{font-size:14px;color:var(--text-mid);line-height:1.75;font-weight:300;margin-bottom:16px;}
.about-img-wrap{background:var(--bg-off);border:1px solid var(--border);padding:24px;display:flex;align-items:center;justify-content:center;}

/* HOW IT WORKS */
.how-section{padding:72px 0;background:var(--bg-off);position:relative;overflow:hidden;}
.how-section::before{content:'HOW';position:absolute;right:-10px;top:50%;transform:translateY(-50%);font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:200px;color:transparent;-webkit-text-stroke:1px rgba(0,119,182,0.08);pointer-events:none;line-height:1;white-space:nowrap;}
.how-header{text-align:center;margin-bottom:56px;}
.how-header .section-label{justify-content:center;}
.steps-list{display:flex;flex-direction:column;gap:0;}
.step-row{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--border);align-items:stretch;margin-bottom:1px;}
.step-row.reverse .step-content-col{order:2;}
.step-row.reverse .step-screenshot-col{order:1;}
.step-content-col{background:var(--bg);padding:48px 44px;display:flex;flex-direction:column;justify-content:center;position:relative;transition:background 0.2s;}
.step-content-col:hover{background:var(--secondary);}
.step-content-col:hover .step-text,.step-content-col:hover .step-label{color:rgba(255,255,255,0.7);}
.step-content-col:hover .step-heading{color:#fff;}
.step-content-col:hover .step-num{-webkit-text-stroke-color:var(--accent);}
.step-content-col::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background:var(--primary);transform:scaleY(0);transition:transform 0.25s;}
.step-content-col:hover::before{transform:scaleY(1);}
.step-screenshot-col{background:var(--secondary);overflow:hidden;min-height:300px;display:flex;align-items:center;justify-content:center;padding:32px;}
.step-screenshot-img{border:3px solid #1A8FE3 !important;box-sizing:border-box;}
.step-screenshot-col svg{width:100%;max-width:420px;height:auto;display:block;border:1px solid rgba(255,255,255,0.08);box-shadow:0 8px 40px rgba(0,0,0,0.25);}
.step-screenshot-img{width:100%;height:100%;object-fit:cover;display:block;min-height:300px;}
.step-num{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:64px;color:transparent;-webkit-text-stroke:2px var(--primary);line-height:1;margin-bottom:10px;display:block;transition:-webkit-text-stroke-color 0.2s;}
.step-label{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-light);margin-bottom:6px;display:block;transition:color 0.2s;}
.step-heading{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:24px;text-transform:uppercase;color:var(--text);margin-bottom:12px;transition:color 0.2s;letter-spacing:0.02em;}
.step-text{font-size:13px;color:var(--text-mid);line-height:1.7;font-weight:300;transition:color 0.2s;max-width:380px;}
@media(max-width:1024px){.step-row{grid-template-columns:1fr 1fr;}.step-row.reverse .step-content-col{order:0;}.step-row.reverse .step-screenshot-col{order:0;}}
@media(max-width:768px){.step-row{grid-template-columns:1fr;}.step-screenshot-col{min-height:200px;padding:20px;}.step-content-col{padding:28px 24px;}}

/* FEATURES */
.features-section{padding:64px 0;background:var(--bg);}
.features-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px;padding-bottom:16px;border-bottom:2px solid var(--primary);}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);}
.feature-card{background:var(--bg);padding:28px 24px;transition:background 0.2s;position:relative;}
.feature-card:hover{background:var(--bg-off);}
.feature-card:hover .feature-title{color:var(--primary);}
.feature-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 0.25s;}
.feature-card:hover::after{transform:scaleX(1);}
.feature-icon{width:48px;height:48px;background:var(--primary-subtle);display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:background 0.2s;}
.feature-card:hover .feature-icon{background:var(--primary);}
.feature-card:hover .feature-icon svg path,.feature-card:hover .feature-icon svg rect,.feature-card:hover .feature-icon svg circle,.feature-card:hover .feature-icon svg line{stroke:#fff;}
.feature-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:17px;text-transform:uppercase;color:var(--text);margin-bottom:8px;transition:color 0.2s;}
.feature-text{font-size:13px;color:var(--text-mid);line-height:1.6;font-weight:300;}

/* TESTIMONIALS */
.testimonials-section{padding:64px 0;background:var(--secondary);position:relative;overflow:hidden;}
.testimonials-section::before{content:'TRUST';position:absolute;right:-10px;top:50%;transform:translateY(-50%);font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:160px;color:rgba(255,255,255,0.03);pointer-events:none;line-height:1;white-space:nowrap;}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,0.06);margin-top:32px;}
.testi-card{background:var(--secondary-light);padding:28px 24px;transition:background 0.2s;position:relative;}
.testi-card:hover{background:rgba(0,180,216,0.12);}
.testi-card::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background:var(--accent);}
.testi-quote{font-size:13px;color:rgba(255,255,255,0.65);line-height:1.75;font-weight:300;margin-bottom:16px;font-style:italic;}
.testi-author{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.1em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:8px;}
.testi-author::before{content:'';width:16px;height:2px;background:var(--accent);}
.testi-video-wrap{padding:28px 24px;background:rgba(255,255,255,0.04);margin-top:1px;}
.testi-video-label{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-top:10px;display:block;}

/* PORTFOLIO */
.portfolio-section{padding:64px 0;background:var(--bg-off);}
.portfolio-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px;padding-bottom:16px;border-bottom:2px solid var(--primary);}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);}
.portfolio-item{background:var(--bg);overflow:hidden;transition:background 0.2s;position:relative;}
.portfolio-item:hover{background:var(--bg-off);}
.portfolio-item:hover .port-title{color:var(--primary);}
.port-img-area{height:200px;overflow:hidden;position:relative;}
.port-img-area svg{width:100%;height:200px;display:block;}
.port-body{padding:16px 20px;}
.port-num{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:36px;color:transparent;-webkit-text-stroke:1.5px var(--primary);line-height:1;display:block;margin-bottom:4px;}
.port-title{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:18px;text-transform:uppercase;color:var(--text);transition:color 0.2s;}
.port-tag{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.1em;color:var(--text-light);display:block;margin-top:3px;}

/* CTA BANNER */
.cta-banner{background:var(--primary);padding:60px 0;position:relative;overflow:hidden;}
.cta-banner::before{content:'';position:absolute;right:0;top:0;bottom:0;width:40%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.06));}
.cta-banner::after{content:'RR';position:absolute;right:60px;top:50%;transform:translateY(-50%);font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:200px;color:rgba(255,255,255,0.07);pointer-events:none;line-height:1;}
.cta-inner{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;position:relative;z-index:1;}
.cta-label{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.65);margin-bottom:8px;}
.cta-title{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(34px,5vw,58px);text-transform:uppercase;color:#fff;line-height:0.95;margin-bottom:10px;}
.cta-sub{font-size:13px;color:rgba(255,255,255,0.8);max-width:480px;font-weight:300;}

/* CONTACT / FOOTER */
footer{background:var(--secondary);border-top:2px solid var(--primary);}
.footer-contact{padding:56px 0 0;}
.footer-contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
.footer-contact-info{padding-bottom:40px;}
.fc-label{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.fc-label::before{content:'';width:24px;height:2px;background:var(--accent);}
.fc-heading{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(36px,5vw,60px);text-transform:uppercase;color:#fff;line-height:0.95;margin-bottom:16px;letter-spacing:-0.02em;}
.fc-heading em{font-style:normal;color:var(--accent);display:block;}
.fc-sub{font-size:14px;color:rgba(255,255,255,0.55);line-height:1.65;font-weight:300;margin-bottom:28px;max-width:380px;}
.fc-note{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.1em;color:rgba(255,255,255,0.3);margin-top:10px;font-style:italic;}

/* FORM */
.contact-form-wrapper{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);}
.form-head{background:rgba(255,255,255,0.06);padding:16px 24px;border-left:3px solid var(--accent);}
.form-head h3{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:16px;letter-spacing:0.12em;text-transform:uppercase;color:#fff;}
.form-head p{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.1em;color:rgba(255,255,255,0.4);margin-top:3px;}
.form-body{padding:28px 24px;}
.form-group{margin-bottom:18px;}
.form-group label{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.5);display:block;margin-bottom:6px;}
.form-group input,.form-group textarea{width:100%;padding:11px 14px;border:1px solid rgba(255,255,255,0.15);background:rgba(255,255,255,0.05);font-family:'DM Sans',sans-serif;font-size:14px;color:#fff;outline:none;transition:border-color 0.2s;}
.form-group input:focus,.form-group textarea:focus{border-color:var(--accent);}
.form-group input::placeholder,.form-group textarea::placeholder{color:rgba(255,255,255,0.3);}
.form-group textarea{resize:vertical;min-height:110px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}

/* FOOTER BOTTOM */
.footer-grid-bottom{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:40px;padding:40px 0 24px;border-top:1px solid rgba(255,255,255,0.08);}
.footer-tagline{font-size:13px;color:rgba(255,255,255,0.45);line-height:1.65;margin:14px 0 0;font-weight:300;max-width:280px;}
.footer-col-title{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;display:flex;align-items:center;gap:8px;}
.footer-col-title::before{content:'';width:16px;height:1px;background:var(--accent);}
.footer-links{display:flex;flex-direction:column;gap:6px;}
.footer-links a{font-size:13px;color:rgba(255,255,255,0.5);transition:color 0.2s;padding:3px 0;}
.footer-links a:hover{color:var(--accent);}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.08);padding:18px 0;}
.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.footer-copy{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.08em;color:rgba(255,255,255,0.3);}
.footer-legal{display:flex;gap:16px;}
.footer-legal a{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.08em;color:rgba(255,255,255,0.3);transition:color 0.2s;}
.footer-legal a:hover{color:var(--accent);}
.footer-tagline-label{font-family:'DM Mono',monospace;font-size:8px;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.3);display:block;margin-top:12px;}

/* PILLS STRIP */
.pills-strip{background:var(--secondary);padding:28px 0;border-top:1px solid rgba(255,255,255,0.05);}
.pills-row{display:flex;gap:1px;background:rgba(255,255,255,0.05);}
.pill-item{background:var(--secondary-light);padding:16px 14px;text-align:center;flex:1;transition:background 0.2s;}
.pill-item:hover{background:var(--primary);}
.pill-item:hover .pill-name{color:#fff;}
.pill-name{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.7);transition:color 0.2s;display:block;}

/* ANIMATIONS */
@keyframes fadeInUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes pulse-accent{0%,100%{box-shadow:0 0 0 0 rgba(0,180,216,0.3);}50%{box-shadow:0 0 0 8px rgba(0,180,216,0);}}
@keyframes countPulse{0%,100%{color:var(--accent);text-shadow:0 0 0 transparent;}50%{color:#33d6f0;text-shadow:0 0 18px rgba(0,180,216,0.55);}}
.btn-accent{animation:pulse-accent 3s 2s infinite;}

/* VIDEO CTA SECTION */
.video-cta-section{background:#ffffff;padding:72px 0;border-bottom:1px solid #e5e7eb;}
.video-cta-inner{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;}
.video-cta-label{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:#1A8FE3;display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.video-cta-label::before{content:'';display:block;width:28px;height:2px;background:#1A8FE3;flex-shrink:0;}
.video-cta-title{font-family:'Barlow Condensed',sans-serif;font-weight:900;font-size:clamp(34px,4.5vw,56px);line-height:1.0;text-transform:uppercase;color:#1f2937;margin-bottom:16px;letter-spacing:-0.01em;}
.video-cta-title em{font-style:normal;color:#1A8FE3;display:block;}
.video-cta-sub{font-size:14px;color:#6b7280;line-height:1.75;font-weight:300;margin-bottom:24px;max-width:440px;}
.video-cta-features{display:flex;flex-direction:column;gap:10px;margin-bottom:28px;}
.video-cta-feature{display:flex;align-items:center;gap:10px;font-size:13px;color:#374151;font-weight:400;}
.video-cta-feature svg{flex-shrink:0;}
.video-cta-btn{background:#F59E0B;color:#fff;}
.video-cta-btn:hover{background:#d97706;}
.video-cta-player{position:relative;}
.video-player-frame{position:relative;background:#084A8A;border:2px solid #1A8FE3;box-shadow:0 20px 60px rgba(26,143,227,0.20);overflow:hidden;cursor:pointer;}
.video-player-frame svg{display:block;width:100%;}
.video-play-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:rgba(8,74,138,0.40);transition:background 0.25s;}
.video-player-frame:hover .video-play-overlay{background:rgba(8,74,138,0.55);}
.video-play-btn{width:120px;height:120px;background:rgba(245,158,11,0.92);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 22px rgba(245,158,11,0.20);transition:transform 0.2s,box-shadow 0.2s;padding-left:8px;}
.video-player-frame:hover .video-play-btn{transform:scale(1.08);box-shadow:0 0 0 32px rgba(245,158,11,0.15);}
.video-play-label{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:20px;letter-spacing:0.12em;text-transform:uppercase;color:#fff;}
.video-player-caption{display:flex;align-items:center;gap:8px;margin-top:12px;}
.video-player-caption span{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.1em;color:#6b7280;}
@media(max-width:1024px){.video-cta-inner{grid-template-columns:1fr;gap:40px;}}
@media(max-width:768px){.video-cta-section{padding:48px 0;}.video-cta-title{font-size:clamp(30px,7vw,44px);}.video-cta-sub{max-width:100%;}}

/* FIREARMS MARKETING STRIP */
.firearms-strip{background:var(--bg-dark);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:20px 0;}
.firearms-strip-inner{display:flex;align-items:center;gap:16px;}
.firearms-badge{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:13px;letter-spacing:0.14em;text-transform:uppercase;color:var(--primary);background:var(--primary-subtle);padding:6px 14px;flex-shrink:0;}
.firearms-text{font-size:13px;color:var(--text-mid);font-weight:300;}

@media(max-width:1024px){
  .page-hero{grid-template-columns:1fr;min-height:auto;}
  .page-hero-image{min-height:280px;order:-1;}
  .page-hero-image::after{background:linear-gradient(180deg,transparent 50%,var(--secondary) 100%);}
  .page-hero-content{padding:40px 24px;max-width:100%;}
  .about-layout,.footer-contact-layout{grid-template-columns:1fr;gap:32px;}
  .steps-grid,.features-grid,.testi-grid,.portfolio-grid{grid-template-columns:1fr 1fr;}
  .footer-grid-bottom{grid-template-columns:1fr 1fr;gap:28px;}
  .cta-inner{grid-template-columns:1fr;}
  .cta-banner::after{display:none;}
}
@media(max-width:768px){
  .topbar{display:none;}
  nav ul{display:none;}
  .header-inner{padding:0 16px;}
  .steps-grid,.features-grid,.testi-grid,.portfolio-grid{grid-template-columns:1fr;}
  .footer-grid-bottom{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
  .pills-row{flex-wrap:wrap;}
  .pill-item{min-width:calc(50% - 1px);}
  .container{padding:0 16px;}
  .about-section,.how-section,.features-section,.testimonials-section,.portfolio-section,.footer-contact{padding:40px 0;}
}

/* V61-fix */ .dot { max-width:100vw !important; overflow-x:hidden !important; }
/* V61-fix-base */ html, body { overflow-x:hidden !important; } img, video, iframe { max-width:100% !important; }