﻿/* ============================================================
 Shumaila Asghar - Premium SEO Portfolio
 Pure CSS3 | No Frameworks
 ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400;1,600;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&display=swap');

/* ---------- CSS Custom Properties ---------- */
:root {
 --bg-primary: #0B1220;
 --bg-secondary: #111827;
 --bg-card: #1A2234;
 --accent-primary: #00D4FF;
 --accent-secondary: #7C3AED;
 --text-primary: #FFFFFF;
 --text-secondary: #B8C1D1;
 --border: rgba(255, 255, 255, 0.08);
 --border-hover: rgba(0, 212, 255, 0.3);
 --glow-primary: rgba(0, 212, 255, 0.25);
 --glow-secondary: rgba(124, 58, 237, 0.25);
 --glass-bg: rgba(17, 24, 39, 0.75);
 --glass-border: rgba(255, 255, 255, 0.1);
 --radius-sm: 8px;
 --radius-md: 12px;
 --radius-lg: 20px;
 --radius-xl: 24px;
 --shadow-card: 0 4px 24px rgba(0, 0, 0, 0.3);
 --shadow-glow: 0 0 40px var(--glow-primary);
 --transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
 --font: 'Poppins', -apple-system, BlinkMacSystemFont, sans-serif;
 --container: 1200px;
 --nav-height: 80px;
 --nav-top-gap: 14px;
 --nav-stack: calc(var(--nav-height) + var(--nav-top-gap));
 --anim-duration: 0.65s;
 --anim-easing: cubic-bezier(0.4, 0, 0.2, 1);
 --body-weight: 300;
 --heading-weight: 700;
 --display-weight: 800;
}

h1, h2, h3, h4, h5, h6 {
 color: var(--text-primary);
 font-weight: var(--heading-weight);
}

.form-group--honeypot {
 display: none !important;
}

.btn:focus-visible,
.navbar__link:focus-visible,
.navbar__toggle:focus-visible,
.connect-card:focus-visible,
.consultation-modal__option:focus-visible,
.faq__question:focus-visible,
.modal__close:focus-visible {
 outline: 2px solid var(--accent-primary);
 outline-offset: 2px;
}

/* ---------- Reset & Base ---------- */
*,
*::before,
*::after {
 margin: 0;
 padding: 0;
 box-sizing: border-box;
}

html {
 scroll-behavior: smooth;
 scroll-padding-top: var(--nav-stack);
}

body {
 font-family: var(--font);
 font-weight: var(--body-weight);
 font-size: 16px;
 line-height: 1.7;
 color: var(--text-primary);
 background-color: var(--bg-primary);
 overflow-x: hidden;
 -webkit-font-smoothing: antialiased;
}

p,
.section__desc,
.hero__subheading,
.pain-card__text,
.solution-card__text,
.case-study__block-text,
.why-choose__text,
.process-step__desc,
.cta-banner__text,
.footer__tagline {
 font-weight: var(--body-weight);
}

img {
 max-width: 100%;
 height: auto;
 display: block;
}

a {
 color: inherit;
 text-decoration: none;
 transition: color var(--transition);
}

ul {
 list-style: none;
}

button {
 font-family: inherit;
 cursor: pointer;
 border: none;
 background: none;
}

input,
select,
textarea {
 font-family: inherit;
 font-size: inherit;
}

/* ---------- Utility Classes ---------- */
.container {
 width: 100%;
 max-width: var(--container);
 margin: 0 auto;
 padding: 0 24px;
}

.text-gradient {
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 -webkit-background-clip: text;
 -webkit-text-fill-color: transparent;
 background-clip: text;
}

.section {
 padding: 84px 0;
}

.section__label {
 display: inline-block;
 font-size: 0.8125rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 color: var(--accent-primary);
 margin-bottom: 12px;
}

.section__heading {
 font-size: clamp(1.75rem, 4vw, 2.5rem);
 font-weight: var(--display-weight);
 line-height: 1.2;
 margin-bottom: 16px;
}

.section__desc {
 color: var(--text-secondary);
 max-width: 560px;
 margin: 0 auto;
}

.section__header {
 text-align: center;
 margin-bottom: 60px;
}

/* ---------- Buttons ---------- */
.btn {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 padding: 12px 28px;
 font-size: 0.9375rem;
 font-weight: 600;
 border-radius: var(--radius-sm);
 transition: all var(--transition);
 white-space: nowrap;
}

.btn--primary {
 background: linear-gradient(135deg, #33ddff, var(--accent-primary), #00a8cc);
 color: var(--bg-primary);
 font-weight: 700;
 border: 1px solid rgba(255, 255, 255, 0.18);
 box-shadow: 0 6px 28px rgba(0, 212, 255, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.btn--primary:hover {
 transform: translateY(-2px);
 box-shadow: 0 12px 40px rgba(0, 212, 255, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.btn--outline {
 background: transparent;
 color: var(--text-primary);
 border: 1px solid var(--border);
}

.btn--outline:hover {
 border-color: var(--accent-primary);
 color: var(--accent-primary);
 box-shadow: 0 0 20px var(--glow-primary);
}

.btn--lg {
 padding: 16px 36px;
 font-size: 1rem;
}

.btn--sm {
 padding: 8px 20px;
 font-size: 0.875rem;
}

.btn--full {
 width: 100%;
}

/* ---------- Scroll Animations ---------- */
.fade-up,
.fade-left,
.fade-right {
 opacity: 0;
 transition: opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing);
}

.fade-up {
 transform: translateY(40px);
}

.fade-left {
 transform: translateX(-40px);
}

.fade-right {
 transform: translateX(40px);
}

.fade-up.visible,
.fade-left.visible,
.fade-right.visible {
 opacity: 1;
 transform: translate(0);
}

/* ---------- Navbar ---------- */
.navbar {
 position: fixed;
 top: var(--nav-top-gap);
 left: 0;
 right: 0;
 z-index: 1000;
 height: var(--nav-height);
 transition: background var(--transition), backdrop-filter var(--transition), box-shadow var(--transition);
}

.navbar--scrolled {
 background: var(--glass-bg);
 backdrop-filter: blur(20px);
 -webkit-backdrop-filter: blur(20px);
 border-bottom: 1px solid var(--glass-border);
 box-shadow: 0 4px 30px rgba(0, 0, 0, 0.2);
}

.navbar__inner {
 display: flex;
 align-items: center;
 justify-content: space-between;
 height: 100%;
}

.navbar__logo {
 display: inline-flex;
 align-items: center;
 z-index: 1001;
}

.site-logo {
 display: inline-flex;
 align-items: center;
 gap: 12px;
 text-decoration: none;
}

.site-logo__emblem {
 position: relative;
 width: 46px;
 height: 46px;
 flex-shrink: 0;
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: flex-end;
 padding-bottom: 6px;
 border-radius: 14px;
 background: linear-gradient(145deg, rgba(26, 34, 52, 0.98), rgba(11, 18, 32, 1));
 border: 1px solid rgba(0, 212, 255, 0.35);
 box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35), 0 0 18px rgba(0, 212, 255, 0.12);
 overflow: hidden;
}

.site-logo__emblem::before {
 content: '';
 position: absolute;
 inset: 0;
 background:
  linear-gradient(135deg, rgba(0, 212, 255, 0.12), transparent 45%),
  radial-gradient(circle at 50% 0%, rgba(124, 58, 237, 0.25), transparent 55%);
 pointer-events: none;
}

.site-logo__eagle {
 position: absolute;
 top: -2px;
 left: 50%;
 width: 38px;
 height: 22px;
 transform: translateX(-50%);
 opacity: 0.9;
 pointer-events: none;
}

.site-logo__sa {
 position: relative;
 z-index: 1;
 font-size: 1.08rem;
 font-weight: 800;
 letter-spacing: -0.06em;
 line-height: 1;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 -webkit-background-clip: text;
 background-clip: text;
 color: transparent;
}

.site-logo__wordmark {
 display: flex;
 flex-direction: column;
 gap: 2px;
 line-height: 1.15;
}

.site-logo__name {
 font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
 font-size: 1.0625rem;
 font-weight: 700;
 color: var(--text-primary);
 letter-spacing: 0.01em;
 white-space: nowrap;
}

.site-logo__tagline {
 font-size: 0.625rem;
 font-weight: 600;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--accent-primary);
 white-space: nowrap;
}

.site-logo:hover .site-logo__emblem,
.footer__logo.site-logo:hover .site-logo__emblem {
 transform: translateY(-1px);
 box-shadow: 0 10px 28px rgba(0, 0, 0, 0.4), 0 0 22px rgba(0, 212, 255, 0.2);
}

.site-logo__emblem {
 transition: transform var(--transition), box-shadow var(--transition);
}

.site-logo__mark {
 display: block;
 width: auto;
 height: 44px;
 max-width: 240px;
 min-width: 160px;
 flex-shrink: 0;
 transition: transform var(--transition), filter var(--transition);
}

.site-logo__mark--footer {
 height: 72px;
 max-width: 300px;
}

.site-logo:hover .site-logo__mark,
.footer__logo.site-logo:hover .site-logo__mark {
 transform: translateY(-1px);
 filter: drop-shadow(0 0 14px rgba(0, 212, 255, 0.35));
}

.footer__logo.site-logo {
 display: inline-flex;
 align-items: center;
 margin-bottom: 0.75rem;
}

@media (max-width: 768px) {
 .hero__highlight {
 white-space: normal;
 display: inline;
 }

 .hero__squiggle {
 display: none;
 }

 .hero__trust {
 width: 100%;
 border-radius: var(--radius-md);
 }
}

@media (max-width: 480px) {
 .site-logo__mark {
  height: 42px;
  max-width: 180px;
  min-width: 130px;
 }
}

.navbar__logo-accent {
 color: var(--accent-primary);
}

.navbar__toggle {
 display: none;
 flex-direction: column;
 gap: 5px;
 padding: 8px;
 z-index: 1001;
}

.navbar__toggle-bar {
 display: block;
 width: 24px;
 height: 2px;
 background: var(--text-primary);
 border-radius: 2px;
 transition: all var(--transition);
}

.navbar__toggle.active .navbar__toggle-bar:nth-child(1) {
 transform: rotate(45deg) translate(5px, 5px);
}

.navbar__toggle.active .navbar__toggle-bar:nth-child(2) {
 opacity: 0;
}

.navbar__toggle.active .navbar__toggle-bar:nth-child(3) {
 transform: rotate(-45deg) translate(5px, -5px);
}

.navbar__nav {
 display: flex;
 align-items: center;
 gap: 8px;
}

.navbar__list {
 display: flex;
 align-items: center;
 gap: 4px;
}

.navbar__link {
 padding: 8px 16px;
 font-size: 0.875rem;
 font-weight: 500;
 color: #ffffff;
 border-radius: var(--radius-sm);
 transition: color 0.2s ease, background 0.2s ease;
}

.navbar__link:hover {
 color: rgba(255, 255, 255, 0.72);
 background: rgba(255, 255, 255, 0.06);
}

.navbar__cta {
 margin-left: 16px;
}

/* ---------- Mega Menu ---------- */
.navbar__item {
 position: relative;
}

.navbar__item--mega {
 position: relative;
}

.navbar__item--mega.navbar__item--mega-wide {
 position: static;
}

.mega-menu--compact {
 left: 50%;
 right: auto;
 transform: translateX(-50%) translateY(8px);
 min-width: 260px;
 width: max-content;
}

.mega-menu--compact .mega-menu__simple {
 list-style: none;
 margin: 0;
 padding: 8px 0;
 background: var(--glass-bg);
 backdrop-filter: blur(20px);
 -webkit-backdrop-filter: blur(20px);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3);
 min-width: 260px;
}

.mega-menu__simple li {
 margin: 0;
}

.mega-menu__simple a {
 display: block;
 padding: 10px 20px;
 font-size: 0.875rem;
 font-weight: 500;
 color: var(--text-secondary);
 transition: color var(--transition), background var(--transition);
}

.mega-menu__simple a:hover {
 color: var(--text-primary);
 background: rgba(255, 255, 255, 0.05);
}

.service-preview__title a {
 color: inherit;
 text-decoration: none;
}

.service-preview__title a:hover {
 color: var(--accent-primary);
}

.navbar__link--mega {
 display: inline-flex;
 align-items: center;
 gap: 4px;
 background: none;
 border: none;
 cursor: pointer;
 font-family: inherit;
}

.navbar__chevron {
 width: 16px;
 height: 16px;
 transition: transform var(--transition);
}

.navbar__item--mega.is-open .navbar__chevron {
 transform: rotate(180deg);
}

.mega-menu {
 position: absolute;
 top: calc(100% + 8px);
 left: 0;
 right: 0;
 opacity: 0;
 visibility: hidden;
 transform: translateY(8px);
 transition: opacity var(--transition), transform var(--transition), visibility var(--transition);
 pointer-events: none;
 z-index: 999;
}

.navbar__item--mega.is-open .mega-menu:not(.mega-menu--compact),
.navbar__item--mega:hover .mega-menu:not(.mega-menu--compact) {
 opacity: 1;
 visibility: visible;
 transform: translateY(0);
 pointer-events: auto;
}

.navbar__item--mega.is-open .mega-menu--compact,
.navbar__item--mega:hover .mega-menu--compact {
 opacity: 1;
 visibility: visible;
 transform: translateX(-50%) translateY(0);
 pointer-events: auto;
}

.navbar__item--mega-portfolio .mega-menu--compact {
 left: 50%;
 transform: translateX(-50%) translateY(8px);
}

.navbar__item--mega-portfolio.is-open .mega-menu--compact,
.navbar__item--mega-portfolio:hover .mega-menu--compact {
 opacity: 1;
 visibility: visible;
 transform: translateX(-50%) translateY(0);
 pointer-events: auto;
}

.mega-menu__simple a.active {
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.08);
}

.mega-menu__inner {
 display: grid;
 grid-template-columns: repeat(5, 1fr);
 gap: 24px;
 padding: 28px 32px;
 background: var(--glass-bg);
 backdrop-filter: blur(20px);
 -webkit-backdrop-filter: blur(20px);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 box-shadow: 0 16px 48px rgba(0, 0, 0, 0.35);
}

.mega-menu__heading {
 display: block;
 font-size: 0.8125rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: var(--accent-primary);
 margin-bottom: 12px;
 padding-bottom: 8px;
 border-bottom: 1px solid var(--border);
}

.mega-menu__heading:hover {
 color: var(--text-primary);
}

.mega-menu__list {
 list-style: none;
 margin: 0;
 padding: 0;
}

.mega-menu__list li {
 margin: 0;
}

.mega-menu__list a {
 display: block;
 padding: 6px 0;
 font-size: 0.8125rem;
 color: var(--text-secondary);
 line-height: 1.4;
 transition: color var(--transition);
}

.mega-menu__list a:hover {
 color: var(--text-primary);
}

/* ---------- Process Timeline ---------- */
.process-section {
 position: relative;
}

.process-timeline {
 display: flex;
 flex-direction: column;
 gap: 0;
 max-width: 720px;
 margin: 0 auto;
 position: relative;
}

.process-timeline::before {
 content: '';
 position: absolute;
 left: 23px;
 top: 12px;
 bottom: 12px;
 width: 2px;
 background: linear-gradient(180deg, var(--accent-primary), rgba(139, 92, 246, 0.2));
 border-radius: 2px;
}

.process-step {
 display: flex;
 gap: 24px;
 padding: 20px 0;
 position: relative;
}

.process-step__num {
 flex-shrink: 0;
 width: 48px;
 height: 48px;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 0.875rem;
 font-weight: 700;
 color: var(--accent-primary);
 background: rgba(139, 92, 246, 0.12);
 border: 1px solid rgba(139, 92, 246, 0.25);
 border-radius: 50%;
 z-index: 1;
}

.process-step__title {
 font-size: 1.0625rem;
 font-weight: 700;
 color: var(--text-primary);
 margin-bottom: 6px;
}

.process-step__desc {
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.6;
 margin: 0;
}

/* ---------- Service Detail ---------- */
.service-detail__intro {
 max-width: 760px;
}

.service-detail__list-card {
 max-width: 640px;
 margin: 0 auto;
 padding: 32px 36px;
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(12px);
}

.service-card__list--large li {
 font-size: 0.9375rem;
 padding: 8px 0;
}

.services__grid--hub {
 grid-template-columns: repeat(3, 1fr);
}

/* ---------- Quality Grid ---------- */
.quality-grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 20px;
}

.quality-card {
 padding: 24px 20px;
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(12px);
 transition: all var(--transition);
 text-align: center;
}

.quality-card:hover {
 transform: translateY(-4px);
 border-color: var(--border-hover);
 box-shadow: var(--shadow-card);
}

.quality-card__icon {
 font-size: 1.5rem;
 margin-bottom: 12px;
}

.quality-card__title {
 font-size: 0.875rem;
 font-weight: 600;
 color: var(--text-primary);
 line-height: 1.4;
}

/* ---------- Trust Grid ---------- */
.trust-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 24px;
}

.trust-card {
 padding: 28px 24px;
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(12px);
 transition: all var(--transition);
}

.trust-card:hover {
 transform: translateY(-4px);
 border-color: rgba(139, 92, 246, 0.25);
}

.trust-card__title {
 font-size: 1rem;
 font-weight: 700;
 color: var(--text-primary);
 margin-bottom: 10px;
}

.trust-card__desc {
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.6;
 margin: 0;
}

@media (max-width: 1200px) {
 .mega-menu__inner {
 grid-template-columns: repeat(3, 1fr);
 }

 .services__grid--hub {
 grid-template-columns: repeat(2, 1fr);
 }

 .quality-grid {
 grid-template-columns: repeat(2, 1fr);
 }
}

@media (max-width: 992px) {
 .mega-menu__inner {
 grid-template-columns: repeat(2, 1fr);
 }

 .trust-grid {
 grid-template-columns: repeat(2, 1fr);
 }
}

@media (max-width: 768px) {
 .navbar__item--mega {
 position: relative;
 width: 100%;
 }

 .navbar__link--mega {
 width: 100%;
 justify-content: space-between;
 padding: 12px 16px;
 }

 .mega-menu {
 position: static;
 opacity: 1;
 visibility: visible;
 transform: none;
 pointer-events: auto;
 display: none;
 margin-top: 4px;
 }

 .navbar__item--mega.is-open .mega-menu {
 display: block;
 }

 .navbar__item--mega:hover .mega-menu {
 display: none;
 }

 .navbar__item--mega.is-open:hover .mega-menu {
 display: block;
 }

 .mega-menu--compact {
 left: 0;
 transform: none;
 width: 100%;
 }

 .navbar__item--mega.is-open .mega-menu--compact,
 .navbar__item--mega:hover .mega-menu--compact {
 transform: none;
 }

 .mega-menu--compact .mega-menu__simple {
 width: 100%;
 box-shadow: none;
 }

 .mega-menu__inner {
 grid-template-columns: 1fr;
 padding: 16px;
 gap: 20px;
 box-shadow: none;
 background: rgba(255, 255, 255, 0.02);
 }

 .services__grid--hub {
 grid-template-columns: 1fr;
 }

 .quality-grid,
 .trust-grid {
 grid-template-columns: 1fr;
 }
}

.hero {
 position: relative;
 min-height: 100vh;
 display: flex;
 align-items: center;
 padding: calc(var(--nav-stack) + 40px) 0 80px;
 overflow: hidden;
}

.hero--studio {
 background: radial-gradient(circle at 20% 20%, rgba(0, 212, 255, 0.06), transparent 40%),
  radial-gradient(circle at 80% 70%, rgba(124, 58, 237, 0.08), transparent 45%);
 min-height: auto;
 padding: calc(var(--nav-stack) + 48px) 0 64px;
 align-items: flex-start;
}

.hero__dots {
 position: absolute;
 inset: 0;
 background-image: radial-gradient(rgba(255, 255, 255, 0.11) 1px, transparent 1px);
 background-size: 24px 24px;
 opacity: 0.22;
 pointer-events: none;
 mask-image: linear-gradient(to bottom, #000 0%, #000 75%, transparent 100%);
}

.hero__eyebrow {
 font-size: 0.6875rem;
 font-weight: 600;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--accent-primary);
 margin-bottom: 16px;
}

.hero__heading {
 font-size: clamp(1.75rem, 3.2vw, 2.5rem);
 font-weight: var(--display-weight);
 line-height: 1.2;
 margin-bottom: 18px;
 letter-spacing: -0.02em;
 max-width: 520px;
}

.hero__heading em,
.hero__emphasis {
 font-style: italic;
 font-weight: 600;
 color: var(--text-primary);
}

.hero__highlight {
 position: relative;
 display: inline;
 white-space: normal;
}

.hero__squiggle {
 position: absolute;
 left: 0;
 bottom: -4px;
 width: 100%;
 height: 10px;
 overflow: visible;
}

.hero__subheading {
 font-size: 1rem;
 line-height: 1.65;
 color: var(--text-secondary);
 margin-bottom: 20px;
 max-width: 480px;
}

.hero__trust {
 display: flex;
 align-items: center;
 flex-wrap: wrap;
 gap: 10px 14px;
 margin-bottom: 24px;
 padding: 10px 14px;
 width: fit-content;
 border-radius: 999px;
 background: rgba(255, 255, 255, 0.04);
 border: 1px solid var(--border);
}

.hero__trust-stars {
 color: #fbbf24;
 font-size: 0.875rem;
 letter-spacing: 2px;
}

.hero__trust-text {
 font-size: 0.875rem;
 color: var(--text-secondary);
}

.hero__trust-text strong {
 color: var(--text-primary);
}

.btn--pill {
 border-radius: 999px;
 padding: 16px 32px;
 font-weight: 700;
 position: relative;
 overflow: visible;
}

.btn--pill.btn--primary {
 box-shadow: 0 8px 32px rgba(0, 212, 255, 0.35);
}

.btn__spark {
 position: absolute;
 right: -18px;
 top: 50%;
 width: 28px;
 height: 28px;
 transform: translateY(-50%);
 pointer-events: none;
}

.btn__spark::before,
.btn__spark::after {
 content: '';
 position: absolute;
 background: #fbbf24;
 border-radius: 2px;
}

.btn__spark::before {
 width: 14px;
 height: 2px;
 right: 0;
 top: 8px;
 transform: rotate(-12deg);
 box-shadow: -8px 6px 0 #fbbf24, -14px -4px 0 #fbbf24;
}

.btn__spark::after {
 width: 2px;
 height: 10px;
 right: 6px;
 top: 2px;
 transform: rotate(8deg);
 box-shadow: 6px 10px 0 #fbbf24;
}

.hero__blobs {
 position: absolute;
 inset: 0;
 overflow: hidden;
 pointer-events: none;
}

.hero__blob {
 position: absolute;
 border-radius: 50%;
 filter: blur(80px);
 opacity: 0.4;
 animation: blobFloat 12s ease-in-out infinite;
}

.hero__blob--1 {
 width: 500px;
 height: 500px;
 background: var(--accent-primary);
 top: -10%;
 right: -5%;
 animation-delay: 0s;
}

.hero__blob--2 {
 width: 400px;
 height: 400px;
 background: var(--accent-secondary);
 bottom: -10%;
 left: -10%;
 animation-delay: -4s;
}

.hero__blob--3 {
 width: 300px;
 height: 300px;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 top: 40%;
 left: 30%;
 animation-delay: -8s;
 opacity: 0.25;
}

@keyframes blobFloat {
 0%, 100% { transform: translate(0, 0) scale(1); }
 33% { transform: translate(30px, -30px) scale(1.05); }
 66% { transform: translate(-20px, 20px) scale(0.95); }
}

.hero__grid {
 display: grid;
 grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
 gap: 40px;
 align-items: center;
 position: relative;
 z-index: 1;
}

.hero__content {
 max-width: 540px;
}

.hero__visual {
 position: relative;
 display: flex;
 align-items: center;
 justify-content: center;
 min-height: 420px;
}

.hero__tagline {
 font-size: 0.8125rem;
 font-weight: 500;
 color: var(--accent-primary);
 letter-spacing: 0.04em;
 margin-bottom: 20px;
 line-height: 1.6;
}

.hero__actions {
 display: flex;
 flex-wrap: wrap;
 gap: 16px;
}

/* ---------- SEO Illustration (CSS Only) ---------- */
.seo-illustration {
 position: relative;
 width: 100%;
 max-width: 360px;
 aspect-ratio: 1;
 margin: 0 auto;
}

.seo-illustration__ring {
 position: absolute;
 border-radius: 50%;
 border: 2px solid var(--border);
}

.seo-illustration__ring--outer {
 inset: 5%;
 border-color: rgba(0, 212, 255, 0.15);
 animation: ringPulse 4s ease-in-out infinite;
}

.seo-illustration__ring--inner {
 inset: 20%;
 border-color: rgba(124, 58, 237, 0.2);
 animation: ringPulse 4s ease-in-out infinite reverse;
}

@keyframes ringPulse {
 0%, 100% { transform: scale(1); opacity: 1; }
 50% { transform: scale(1.03); opacity: 0.7; }
}

.seo-illustration__core {
 position: absolute;
 inset: 32%;
 border-radius: 50%;
 background: linear-gradient(135deg, var(--bg-card), var(--bg-secondary));
 border: 2px solid var(--border-hover);
 display: flex;
 align-items: center;
 justify-content: center;
 box-shadow: var(--shadow-glow), inset 0 0 30px rgba(0, 212, 255, 0.05);
}

.seo-illustration__label {
 font-size: 1.5rem;
 font-weight: 700;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 -webkit-background-clip: text;
 -webkit-text-fill-color: transparent;
 background-clip: text;
}

.seo-illustration__orbit {
 position: absolute;
 inset: 10%;
 animation: orbitSpin 20s linear infinite;
}

.seo-illustration__orbit--2 {
 inset: 15%;
 animation-duration: 15s;
 animation-direction: reverse;
}

.seo-illustration__orbit--3 {
 inset: 22%;
 animation-duration: 25s;
}

@keyframes orbitSpin {
 from { transform: rotate(0deg); }
 to { transform: rotate(360deg); }
}

.seo-illustration__node {
 position: absolute;
 top: 0;
 left: 50%;
 transform: translateX(-50%);
 width: 14px;
 height: 14px;
 border-radius: 50%;
 background: var(--accent-primary);
 box-shadow: 0 0 15px var(--glow-primary);
}

.seo-illustration__orbit--2 .seo-illustration__node {
 background: var(--accent-secondary);
 box-shadow: 0 0 15px var(--glow-secondary);
 width: 10px;
 height: 10px;
}

.seo-illustration__orbit--3 .seo-illustration__node {
 width: 8px;
 height: 8px;
}

.seo-illustration__bar {
 position: absolute;
 bottom: 18%;
 width: 12%;
 border-radius: 4px 4px 0 0;
 background: linear-gradient(to top, var(--accent-primary), transparent);
 opacity: 0.7;
 animation: barGrow 3s ease-in-out infinite;
}

.seo-illustration__bar--1 { left: 22%; height: 35%; animation-delay: 0s; }
.seo-illustration__bar--2 { left: 36%; height: 55%; animation-delay: 0.3s; background: linear-gradient(to top, var(--accent-secondary), transparent); }
.seo-illustration__bar--3 { left: 50%; height: 75%; animation-delay: 0.6s; }
.seo-illustration__bar--4 { left: 64%; height: 45%; animation-delay: 0.9s; background: linear-gradient(to top, var(--accent-secondary), transparent); }

@keyframes barGrow {
 0%, 100% { transform: scaleY(1); }
 50% { transform: scaleY(1.15); }
}

/* Social icons orbiting SEO core */
.seo-illustration__social-orbit {
 position: absolute;
 inset: 6%;
 animation: orbitSpin 22s linear infinite;
 pointer-events: none;
 z-index: 5;
}

.seo-illustration__sat {
 position: absolute;
 inset: 0;
}

.seo-illustration__sat--2 {
 transform: rotate(120deg);
}

.seo-illustration__sat--3 {
 transform: rotate(240deg);
}

.seo-illustration__social-orbit .seo-illustration__social {
 pointer-events: auto;
}

.seo-illustration__social {
 position: absolute;
 top: -24px;
 left: calc(50% - 24px);
 width: 48px;
 height: 48px;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(255, 255, 255, 0.06);
 backdrop-filter: blur(12px);
 -webkit-backdrop-filter: blur(12px);
 border: 1px solid rgba(0, 212, 255, 0.25);
 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35), 0 0 20px rgba(0, 212, 255, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.08);
 transition: transform 0.35s ease, box-shadow 0.35s ease;
 text-decoration: none;
 cursor: pointer;
}

.seo-illustration__social svg,
.seo-illustration__social img {
 width: 24px;
 height: 24px;
 display: block;
}

.seo-illustration__social--fiverr {
 background: rgba(29, 191, 115, 0.12);
 border-color: rgba(29, 191, 115, 0.35);
 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35), 0 0 18px rgba(29, 191, 115, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.seo-illustration__social--whatsapp {
 background: rgba(37, 211, 102, 0.12);
 border-color: rgba(37, 211, 102, 0.35);
 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35), 0 0 18px rgba(37, 211, 102, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.seo-illustration__social--email {
 background: rgba(0, 212, 255, 0.1);
 border-color: rgba(0, 212, 255, 0.4);
 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35), 0 0 18px rgba(0, 212, 255, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.seo-illustration__social--email svg {
 color: var(--accent-primary);
}

.seo-illustration__social:hover {
 transform: scale(1.15) rotate(7deg);
 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4), 0 0 28px rgba(0, 212, 255, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.12);
 z-index: 10;
}

@keyframes shapeFloat {
 0%, 100% { transform: translateY(0); }
 50% { transform: translateY(-12px); }
}

/* ---------- Statistics ---------- */
.stats {
 padding: 60px 0;
 background: var(--bg-secondary);
 border-top: 1px solid var(--border);
 border-bottom: 1px solid var(--border);
}

.stats__grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 32px;
}

.stats__item {
 text-align: center;
 padding: 24px;
}

.stats__number {
 display: block;
 font-size: clamp(2rem, 4vw, 3rem);
 font-weight: 700;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 -webkit-background-clip: text;
 -webkit-text-fill-color: transparent;
 background-clip: text;
 line-height: 1.2;
 margin-bottom: 8px;
}

.stats__label {
 font-size: 0.9375rem;
 color: var(--text-secondary);
 font-weight: 500;
}

/* ---------- About ---------- */
.about__grid {
 display: grid;
 grid-template-columns: 1fr 1.1fr;
 gap: 60px;
 align-items: center;
}

.about__image-placeholder {
 position: relative;
 aspect-ratio: 4/5;
 max-width: 400px;
 border-radius: var(--radius-xl);
 background: var(--bg-card);
 border: 1px solid var(--border);
 overflow: hidden;
}

.about__image-inner {
 position: absolute;
 inset: 0;
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 16px;
 color: var(--text-secondary);
}

.about__image-inner svg {
 width: 64px;
 height: 64px;
 opacity: 0.4;
}

.about__image-inner span {
 font-size: 0.875rem;
 font-weight: 500;
}

.about__image-glow {
 position: absolute;
 bottom: -20%;
 left: 50%;
 transform: translateX(-50%);
 width: 80%;
 height: 40%;
 background: radial-gradient(ellipse, var(--glow-primary), transparent 70%);
 pointer-events: none;
}

.about__text {
 color: var(--text-secondary);
 margin-bottom: 16px;
}

.about__skills {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 margin-top: 28px;
}

.skill-tag {
 padding: 8px 18px;
 font-size: 0.8125rem;
 font-weight: 500;
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid rgba(0, 212, 255, 0.2);
 border-radius: 50px;
 transition: all var(--transition);
}

.skill-tag:hover {
 background: rgba(0, 212, 255, 0.15);
 box-shadow: 0 0 20px var(--glow-primary);
}

/* ---------- Services ---------- */
.services {
 background: var(--bg-secondary);
}

.services__grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 28px;
}

.service-card {
 position: relative;
 padding: 36px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 transition: all var(--transition);
 overflow: hidden;
}

.service-card::before {
 content: '';
 position: absolute;
 inset: 0;
 border-radius: var(--radius-lg);
 padding: 1px;
 background: linear-gradient(135deg, transparent, transparent);
 -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
 mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
 -webkit-mask-composite: xor;
 mask-composite: exclude;
 transition: background var(--transition);
}

.service-card:hover {
 transform: translateY(-8px);
 box-shadow: var(--shadow-card), 0 0 40px var(--glow-primary);
}

.service-card:hover::before {
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
}

.service-card__icon {
 width: 56px;
 height: 56px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(0, 212, 255, 0.1);
 border-radius: var(--radius-md);
 margin-bottom: 24px;
 transition: all var(--transition);
}

.service-card__icon svg {
 width: 28px;
 height: 28px;
 stroke: var(--accent-primary);
}

.service-card:hover .service-card__icon {
 background: rgba(0, 212, 255, 0.2);
 box-shadow: 0 0 20px var(--glow-primary);
}

.service-card__title {
 font-size: 1.25rem;
 font-weight: 700;
 margin-bottom: 12px;
}

.service-card__desc {
 color: var(--text-secondary);
 font-size: 0.9375rem;
 margin-bottom: 20px;
}

.service-card__link {
 font-size: 0.875rem;
 font-weight: 600;
 color: var(--accent-primary);
 transition: gap var(--transition);
}

.service-card__link:hover {
 text-shadow: 0 0 20px var(--glow-primary);
}

/* ---------- Features (Why Choose Me) ---------- */
.features__grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 24px;
}

.feature-card {
 padding: 32px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 transition: all var(--transition);
}

.feature-card:hover {
 transform: translateY(-4px);
 border-color: var(--border-hover);
 box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3), 0 0 30px var(--glow-primary);
}

.feature-card__icon {
 width: 48px;
 height: 48px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(124, 58, 237, 0.1);
 border-radius: var(--radius-md);
 margin-bottom: 20px;
}

.feature-card__icon svg {
 width: 24px;
 height: 24px;
 stroke: var(--accent-secondary);
}

.feature-card__title {
 font-size: 1.0625rem;
 font-weight: 700;
 margin-bottom: 8px;
}

.feature-card__desc {
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.6;
}

/* ---------- Portfolio ---------- */
.portfolio {
 background: var(--bg-secondary);
}

.portfolio__grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 28px;
}

.portfolio-card {
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 overflow: hidden;
 transition: all var(--transition);
}

.portfolio-card:hover {
 transform: translateY(-6px);
 box-shadow: var(--shadow-card);
}

.portfolio-card__image {
 position: relative;
 aspect-ratio: 16/10;
 overflow: hidden;
}

.portfolio-card__image img {
 width: 100%;
 height: 100%;
 object-fit: cover;
 transition: transform var(--transition);
}

.portfolio-card__placeholder {
 width: 100%;
 height: 100%;
 display: flex;
 align-items: center;
 justify-content: center;
 transition: transform var(--transition);
}

.portfolio-card__placeholder svg {
 width: 48px;
 height: 48px;
 opacity: 0.3;
}

.portfolio-card__placeholder--1 { background: linear-gradient(135deg, #0d2137, #1a3a5c); }
.portfolio-card__placeholder--2 { background: linear-gradient(135deg, #1a1040, #2d1b69); }
.portfolio-card__placeholder--3 { background: linear-gradient(135deg, #0a2e2e, #134e4e); }
.portfolio-card__placeholder--4 { background: linear-gradient(135deg, #2e1a0a, #4e3413); }

.portfolio-card:hover .portfolio-card__placeholder {
 transform: scale(1.05);
}

.portfolio-card__overlay {
 position: absolute;
 inset: 0;
 background: rgba(11, 18, 32, 0.75);
 backdrop-filter: blur(4px);
 display: flex;
 align-items: center;
 justify-content: center;
 opacity: 0;
 transition: opacity var(--transition);
}

.portfolio-card__overlay-actions {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 justify-content: center;
 padding: 16px;
}

.portfolio-card__actions {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 margin-top: 16px;
}

.browser-mockup {
 width: 100%;
 height: 100%;
 display: flex;
 flex-direction: column;
 background: var(--bg-card);
}

.browser-mockup__bar {
 display: flex;
 align-items: center;
 gap: 6px;
 padding: 10px 14px;
 background: rgba(255, 255, 255, 0.04);
 border-bottom: 1px solid var(--border);
}

.browser-mockup__dot {
 width: 8px;
 height: 8px;
 border-radius: 50%;
 background: rgba(255, 255, 255, 0.15);
}

.browser-mockup__dot:nth-child(1) { background: #ff5f57; }
.browser-mockup__dot:nth-child(2) { background: #febc2e; }
.browser-mockup__dot:nth-child(3) { background: #28c840; }

.browser-mockup__url {
 flex: 1;
 margin-left: 8px;
 padding: 4px 12px;
 font-size: 0.6875rem;
 color: var(--text-secondary);
 background: rgba(0, 0, 0, 0.25);
 border-radius: 6px;
 white-space: nowrap;
 overflow: hidden;
 text-overflow: ellipsis;
}

.browser-mockup__screen {
 flex: 1;
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 8px;
 padding: 24px;
 background: linear-gradient(135deg, #0d2137 0%, #1a1040 50%, #134e4e 100%);
}

.browser-mockup__brand {
 font-size: 1.5rem;
 font-weight: 700;
 background: var(--gradient-text);
 -webkit-background-clip: text;
 -webkit-text-fill-color: transparent;
 background-clip: text;
}

.browser-mockup__tagline {
 font-size: 0.8125rem;
 color: var(--text-secondary);
 text-align: center;
}

.portfolio-card:hover .portfolio-card__overlay {
 opacity: 1;
}

.portfolio-card__info {
 padding: 24px;
}

.portfolio-card__tag {
 display: inline-block;
 font-size: 0.75rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--accent-primary);
 margin-bottom: 8px;
}

.portfolio-card__title {
 font-size: 1.125rem;
 font-weight: 700;
 margin-bottom: 8px;
}

.portfolio-card__desc {
 font-size: 0.875rem;
 color: var(--text-secondary);
}

/* ---------- Testimonials ---------- */
.testimonials__slider {
 max-width: 720px;
 margin: 0 auto;
 overflow: hidden;
}

.testimonials__track {
 display: flex;
 transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.testimonial-card {
 flex: 0 0 100%;
 padding: 40px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 text-align: center;
}

.testimonial-card__stars {
 color: #fbbf24;
 font-size: 1.125rem;
 letter-spacing: 4px;
 margin-bottom: 24px;
}

.testimonial-card__quote {
 font-size: 1.0625rem;
 line-height: 1.8;
 color: var(--text-secondary);
 font-style: italic;
 margin-bottom: 32px;
}

.testimonial-card__author {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 16px;
}

.testimonial-card__avatar {
 width: 48px;
 height: 48px;
 border-radius: 50%;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 0.875rem;
 font-weight: 700;
 color: var(--bg-primary);
}

.testimonial-card__name {
 display: block;
 font-size: 0.9375rem;
 font-weight: 600;
 font-style: normal;
}

.testimonial-card__role {
 font-size: 0.8125rem;
 color: var(--text-secondary);
}

.testimonials__controls {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 20px;
 margin-top: 32px;
}

.testimonials__arrow {
 width: 44px;
 height: 44px;
 display: flex;
 align-items: center;
 justify-content: center;
 border: 1px solid var(--border);
 border-radius: 50%;
 color: var(--text-secondary);
 transition: all var(--transition);
}

.testimonials__arrow svg {
 width: 20px;
 height: 20px;
}

.testimonials__arrow:hover {
 border-color: var(--accent-primary);
 color: var(--accent-primary);
 box-shadow: 0 0 20px var(--glow-primary);
}

.testimonials__dots {
 display: flex;
 gap: 8px;
}

.testimonials__dot {
 width: 10px;
 height: 10px;
 border-radius: 50%;
 background: var(--border);
 border: none;
 padding: 0;
 transition: all var(--transition);
 cursor: pointer;
}

.testimonials__dot.active {
 background: var(--accent-primary);
 box-shadow: 0 0 10px var(--glow-primary);
 transform: scale(1.2);
}

/* ---------- FAQ ---------- */
.faq {
 background: var(--bg-secondary);
}

.faq__wrapper {
 max-width: 760px;
}

.faq__list {
 display: flex;
 flex-direction: column;
 gap: 12px;
}

.faq__item {
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-md);
 overflow: hidden;
 transition: border-color var(--transition);
}

.faq__item.active {
 border-color: var(--border-hover);
 box-shadow: 0 0 30px var(--glow-primary);
}

.faq__question {
 width: 100%;
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 16px;
 padding: 22px 24px;
 font-size: 1rem;
 font-weight: 600;
 color: var(--text-primary);
 text-align: left;
 transition: color var(--transition);
}

.faq__question:hover {
 color: var(--accent-primary);
}

.faq__icon {
 width: 20px;
 height: 20px;
 flex-shrink: 0;
 stroke: var(--text-secondary);
 transition: transform var(--transition);
}

.faq__item.active .faq__icon {
 transform: rotate(180deg);
 stroke: var(--accent-primary);
}

.faq__answer {
 max-height: 0;
 overflow: hidden;
 transition: max-height 0.4s ease, padding 0.4s ease;
}

.faq__item.active .faq__answer {
 max-height: 300px;
}

.faq__answer p {
 padding: 0 24px 22px;
 color: var(--text-secondary);
 font-size: 0.9375rem;
 line-height: 1.7;
}

/* ---------- CTA Banner ---------- */
.cta-banner {
 padding: 100px 0;
 position: relative;
 overflow: hidden;
}

.cta-banner__inner {
 position: relative;
 text-align: center;
 padding: 72px 40px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-xl);
 overflow: hidden;
}

.cta-banner__glow {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 width: 60%;
 height: 80%;
 background: radial-gradient(ellipse, var(--glow-primary), transparent 70%);
 pointer-events: none;
}

.cta-banner__heading {
 position: relative;
 font-size: clamp(1.75rem, 4vw, 2.5rem);
 font-weight: 700;
 margin-bottom: 16px;
}

.cta-banner__text {
 position: relative;
 color: var(--text-secondary);
 margin-bottom: 32px;
 max-width: 480px;
 margin-left: auto;
 margin-right: auto;
}

/* ---------- Contact ---------- */
.contact__grid {
 display: grid;
 grid-template-columns: 1fr 1.2fr;
 gap: 60px;
 align-items: start;
}

.contact__text {
 color: var(--text-secondary);
 margin-bottom: 32px;
}

.contact__details {
 display: flex;
 flex-direction: column;
 gap: 24px;
 margin-bottom: 32px;
}

.contact__detail {
 display: flex;
 align-items: center;
 gap: 16px;
}

.contact__detail-icon {
 width: 48px;
 height: 48px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid var(--border);
 border-radius: var(--radius-md);
 flex-shrink: 0;
}

.contact__detail-icon svg {
 width: 22px;
 height: 22px;
 stroke: var(--accent-primary);
}

.contact__detail-label {
 display: block;
 font-size: 0.75rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--text-secondary);
 margin-bottom: 2px;
}

.contact__detail-value {
 font-size: 0.9375rem;
 font-weight: 500;
 transition: color var(--transition);
}

a.contact__detail-value:hover {
 color: var(--accent-primary);
}

.contact__social {
 display: flex;
 gap: 12px;
}

.contact__social-link {
 width: 44px;
 height: 44px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-sm);
 color: var(--text-secondary);
 transition: all var(--transition);
}

.contact__social-link svg {
 width: 20px;
 height: 20px;
}

.contact__social-link:hover {
 color: var(--accent-primary);
 border-color: var(--border-hover);
 box-shadow: 0 0 20px var(--glow-primary);
 transform: translateY(-2px);
}

/* ---------- Social Icons (Footer & Connect) ---------- */
.social-icons {
 display: flex;
 flex-wrap: wrap;
 gap: 12px;
}

.social-icon {
 width: 44px;
 height: 44px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(255, 255, 255, 0.05);
 border: 1px solid rgba(0, 212, 255, 0.2);
 border-radius: 50%;
 transition: transform var(--anim-duration) var(--anim-easing), box-shadow var(--anim-duration) var(--anim-easing), border-color var(--anim-duration) var(--anim-easing), background var(--anim-duration) var(--anim-easing);
 backdrop-filter: blur(12px);
 -webkit-backdrop-filter: blur(12px);
 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.social-icon:hover {
 transform: translateY(-4px) scale(1.1);
}

.social-icon svg {
 width: 20px;
 height: 20px;
}

.social-icon--email {
 color: var(--accent-primary);
}

.social-icon--whatsapp {
 color: #25D366;
}

.social-icon--facebook {
 color: #1877F2;
}

.social-icon--fiverr {
 color: #1DBF73;
}

.social-icon--fiverr svg,
.social-icon--fiverr .fiverr-logo {
 width: 22px;
 height: 22px;
}

.fiverr-logo {
 display: block;
 object-fit: contain;
}

.social-icon:hover {
 transform: translateY(-4px) scale(1.1);
}

.social-icon--email:hover {
 border-color: rgba(0, 212, 255, 0.55);
 background: rgba(0, 212, 255, 0.12);
 box-shadow: 0 0 32px rgba(0, 212, 255, 0.35);
}

.social-icon--whatsapp:hover {
 border-color: rgba(37, 211, 102, 0.45);
 background: rgba(37, 211, 102, 0.1);
 box-shadow: 0 0 32px rgba(37, 211, 102, 0.4);
}

.social-icon--facebook:hover {
 border-color: rgba(24, 119, 242, 0.45);
 background: rgba(24, 119, 242, 0.1);
 box-shadow: 0 0 32px rgba(24, 119, 242, 0.35);
}

.social-icon--fiverr:hover {
 border-color: rgba(29, 191, 115, 0.45);
 background: rgba(29, 191, 115, 0.1);
 box-shadow: 0 0 32px rgba(29, 191, 115, 0.35);
}

.footer__social {
 margin-top: 24px;
}

.footer__social-label {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--text-primary);
 margin-bottom: 14px;
}

/* ---------- Connect Cards (Contact Page) ---------- */
.connect-cards {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 20px;
}

.connect-card {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 12px;
 padding: 28px 24px;
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(12px);
 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
 transition: all var(--transition);
 text-decoration: none;
 color: inherit;
}

.connect-card:hover {
 transform: translateY(-4px);
 border-color: rgba(0, 212, 255, 0.35);
 box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35), 0 0 24px rgba(0, 212, 255, 0.1);
}

.connect-card__icon {
 width: 48px;
 height: 48px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: 50%;
 background: rgba(255, 255, 255, 0.05);
 border: 1px solid rgba(0, 212, 255, 0.2);
 transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
 backdrop-filter: blur(12px);
 -webkit-backdrop-filter: blur(12px);
 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.connect-card__icon svg {
 width: 22px;
 height: 22px;
}

.connect-card--email .connect-card__icon {
 color: var(--accent-primary);
}

.connect-card--whatsapp .connect-card__icon {
 color: #25D366;
}

.connect-card--facebook .connect-card__icon {
 color: #1877F2;
}

.connect-card--fiverr .connect-card__icon {
 color: #1DBF73;
}

.connect-card--website .connect-card__icon {
 color: var(--accent-primary);
}

.connect-card--fiverr .connect-card__icon svg,
.connect-card--fiverr .connect-card__icon .fiverr-logo {
 width: 24px;
 height: 24px;
}

.connect-card:hover .connect-card__icon {
 transform: scale(1.08);
}

.connect-card--email:hover .connect-card__icon,
.connect-card--website:hover .connect-card__icon {
 border-color: rgba(0, 212, 255, 0.45);
 box-shadow: 0 0 28px rgba(0, 212, 255, 0.25);
}

.connect-card--whatsapp:hover .connect-card__icon {
 border-color: rgba(37, 211, 102, 0.35);
 box-shadow: 0 0 28px rgba(37, 211, 102, 0.3);
}

.connect-card--facebook:hover .connect-card__icon {
 border-color: rgba(24, 119, 242, 0.35);
 box-shadow: 0 0 28px rgba(24, 119, 242, 0.3);
}

.connect-card--fiverr:hover .connect-card__icon {
 border-color: rgba(29, 191, 115, 0.35);
 box-shadow: 0 0 28px rgba(29, 191, 115, 0.3);
}

.connect-card__label {
 font-size: 0.6875rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--text-muted);
}

.connect-card__value {
 font-size: 0.9375rem;
 font-weight: 600;
 color: var(--text-primary);
 line-height: 1.4;
 word-break: break-word;
}

.connect-card__desc {
 font-size: 0.8125rem;
 color: var(--text-secondary);
 line-height: 1.5;
 margin: 0;
}

/* ---------- Fiverr Services ---------- */
.fiverr-grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 24px;
}

.fiverr-card {
 display: flex;
 flex-direction: column;
 gap: 14px;
 padding: 32px 28px;
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(12px);
 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
 transition: all var(--transition);
}

.fiverr-card:hover {
 transform: translateY(-4px);
 border-color: rgba(29, 191, 115, 0.35);
 box-shadow: 0 8px 32px rgba(29, 191, 115, 0.1);
}

.fiverr-card__icon {
 width: 44px;
 height: 44px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: var(--radius-sm);
 background: rgba(255, 255, 255, 0.04);
 border: 1px solid var(--border);
 color: #1DBF73;
 backdrop-filter: blur(8px);
 transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.fiverr-card__icon svg,
.fiverr-card__icon .fiverr-logo {
 width: 24px;
 height: 24px;
}

.fiverr-card:hover .fiverr-card__icon {
 transform: scale(1.08);
 border-color: rgba(29, 191, 115, 0.35);
 box-shadow: 0 0 28px rgba(29, 191, 115, 0.3);
}

.fiverr-card__title {
 font-size: 1.125rem;
 font-weight: 700;
 color: var(--text-primary);
}

.fiverr-card__desc {
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.6;
 flex: 1;
}

.fiverr-card .btn {
 align-self: flex-start;
 margin-top: 4px;
}

/* ---------- Form ---------- */
.contact__form {
 padding: 40px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
}

.form-group {
 margin-bottom: 20px;
}

.form-label {
 display: block;
 font-size: 0.875rem;
 font-weight: 500;
 margin-bottom: 8px;
 color: var(--text-secondary);
}

.form-input {
 width: 100%;
 padding: 14px 18px;
 background: var(--bg-secondary);
 border: 1px solid var(--border);
 border-radius: var(--radius-sm);
 color: var(--text-primary);
 transition: all var(--transition);
}

.form-input::placeholder {
 color: rgba(184, 193, 209, 0.5);
}

.form-input:focus {
 outline: none;
 border-color: var(--accent-primary);
 box-shadow: 0 0 0 3px var(--glow-primary);
}

.form-select {
 appearance: none;
 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23B8C1D1' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
 background-repeat: no-repeat;
 background-position: right 16px center;
 padding-right: 40px;
 cursor: pointer;
}

.form-select option {
 background: var(--bg-secondary);
 color: var(--text-primary);
}

.form-textarea {
 resize: vertical;
 min-height: 120px;
}

.form-success {
 margin-top: 16px;
 padding: 12px;
 text-align: center;
 font-size: 0.875rem;
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.08);
 border-radius: var(--radius-sm);
}

/* ---------- Footer ---------- */
.footer {
 background: var(--bg-secondary);
 border-top: 1px solid var(--border);
 padding-top: 60px;
}

.footer__grid {
 display: grid;
 grid-template-columns: 1.5fr 1fr 1fr;
 gap: 40px;
 padding-bottom: 40px;
}

.footer__logo {
 font-size: 1.125rem;
 font-weight: 700;
 display: inline-block;
 margin-bottom: 12px;
}

.footer__tagline {
 font-size: 0.875rem;
 color: var(--text-secondary);
 max-width: 280px;
 line-height: 1.6;
}

.footer__heading {
 font-size: 0.875rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 margin-bottom: 20px;
 color: var(--text-primary);
}

.footer__list {
 display: flex;
 flex-direction: column;
 gap: 10px;
}

.footer__list a {
 font-size: 0.875rem;
 color: var(--text-secondary);
 transition: color var(--transition);
}

.footer__list a:hover {
 color: var(--accent-primary);
}

.footer__bottom {
 border-top: 1px solid var(--border);
 padding: 24px 0;
}

.footer__bottom-inner {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: 8px;
 text-align: center;
 font-size: 0.8125rem;
 color: var(--text-secondary);
}

.footer__bottom-meta {
 display: flex;
 align-items: center;
 justify-content: space-between;
 width: 100%;
 gap: 16px;
 flex-wrap: wrap;
}

.footer__credit {
 font-size: 0.75rem;
 color: var(--text-secondary);
 opacity: 0.85;
 letter-spacing: 0.02em;
}

.footer__credit span {
 color: var(--accent-primary);
}

.footer__domain {
 color: var(--accent-primary);
 font-weight: 500;
}

/* ---------- Modal ---------- */
.modal {
 position: fixed;
 inset: 0;
 z-index: 2000;
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 24px;
}

.modal[hidden] {
 display: none;
}

.modal__backdrop {
 position: absolute;
 inset: 0;
 background: rgba(11, 18, 32, 0.85);
 backdrop-filter: blur(8px);
}

.modal__content {
 position: relative;
 max-width: 680px;
 width: 100%;
 max-height: 85vh;
 overflow-y: auto;
 padding: 40px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 box-shadow: var(--shadow-card);
 animation: modalIn 0.3s ease;
}

.modal__content--report {
 max-width: 920px;
 padding: 32px;
}

@keyframes modalIn {
 from { opacity: 0; transform: scale(0.95); }
 to { opacity: 1; transform: scale(1); }
}

.modal__close {
 position: absolute;
 top: 16px;
 right: 16px;
 width: 36px;
 height: 36px;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 1.5rem;
 color: var(--text-secondary);
 border-radius: var(--radius-sm);
 transition: all var(--transition);
}

.modal__close:hover {
 color: var(--text-primary);
 background: rgba(255, 255, 255, 0.05);
}

.modal__title {
 font-size: 1.375rem;
 font-weight: 700;
 margin-bottom: 16px;
}

.modal__desc {
 color: var(--text-secondary);
 line-height: 1.7;
}

.modal__desc h4 {
 font-size: 0.8125rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--accent-primary);
 margin: 20px 0 8px;
}

.modal__desc h4:first-child {
 margin-top: 0;
}

.modal__desc p {
 margin-bottom: 12px;
 font-size: 0.9375rem;
}

.modal__desc p:last-child {
 margin-bottom: 0;
}

/* ---------- Consultation Modal ---------- */
.consultation-modal__content {
 max-width: 560px;
 padding: 36px 32px 32px;
 text-align: center;
}

.consultation-modal__title {
 font-size: 1.375rem;
 font-weight: 700;
 margin-bottom: 8px;
}

.consultation-modal__subtitle {
 font-size: 0.9375rem;
 color: var(--text-secondary);
 line-height: 1.6;
 margin-bottom: 28px;
}

.consultation-modal__options {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 16px;
}

.consultation-modal__option {
 display: flex;
 flex-direction: column;
 align-items: center;
 gap: 12px;
 padding: 32px 24px;
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(12px);
 -webkit-backdrop-filter: blur(12px);
 box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
 transition: all var(--transition);
 text-decoration: none;
 color: inherit;
}

.consultation-modal__option:hover {
 transform: translateY(-4px);
 border-color: rgba(0, 212, 255, 0.35);
 box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35), 0 0 24px rgba(0, 212, 255, 0.1);
}

.consultation-modal__option--whatsapp:hover {
 border-color: rgba(37, 211, 102, 0.4);
 box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35), 0 0 24px rgba(37, 211, 102, 0.12);
}

.consultation-modal__option-icon {
 width: 56px;
 height: 56px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: 50%;
 background: rgba(255, 255, 255, 0.05);
 border: 1px solid rgba(0, 212, 255, 0.2);
 transition: transform var(--anim-duration) var(--anim-easing), box-shadow var(--anim-duration) var(--anim-easing);
}

.consultation-modal__option-icon svg {
 width: 26px;
 height: 26px;
}

.consultation-modal__option--email .consultation-modal__option-icon {
 color: var(--accent-primary);
}

.consultation-modal__option--whatsapp .consultation-modal__option-icon {
 color: #25D366;
 border-color: rgba(37, 211, 102, 0.25);
}

.consultation-modal__option:hover .consultation-modal__option-icon {
 transform: scale(1.06);
}

.consultation-modal__option-label {
 font-size: 1.0625rem;
 font-weight: 600;
 color: var(--text-primary);
}

.consultation-modal__option-hint {
 font-size: 0.8125rem;
 color: var(--text-muted);
 line-height: 1.5;
}

@media (max-width: 640px) {
 .consultation-modal__options {
 grid-template-columns: 1fr;
 }

 .consultation-modal__content {
 padding: 32px 20px 24px;
 }
}

/* ---------- Case Study Report (Modal) ---------- */
.case-report__hero {
 position: relative;
 border-radius: var(--radius-md);
 overflow: hidden;
 margin-bottom: 20px;
 border: 1px solid var(--border);
}

.case-report__hero-img {
 width: 100%;
 aspect-ratio: 16/7;
 object-fit: cover;
 display: block;
}

.case-report__hero-meta {
 position: absolute;
 bottom: 0;
 left: 0;
 right: 0;
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 10px;
 padding: 16px 20px;
 background: linear-gradient(to top, rgba(11, 18, 32, 0.92), transparent);
}

.case-report__industry {
 font-size: 0.6875rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--accent-primary);
 padding: 4px 10px;
 background: rgba(0, 212, 255, 0.1);
 border: 1px solid rgba(0, 212, 255, 0.25);
 border-radius: 999px;
}

.case-report__link {
 font-size: 0.8125rem;
 color: var(--text-primary);
 opacity: 0.9;
}

.case-report__link:hover {
 color: var(--accent-primary);
}

.case-report__tags {
 display: flex;
 flex-wrap: wrap;
 gap: 8px;
 margin-bottom: 24px;
}

.case-report__tag {
 font-size: 0.6875rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 padding: 5px 12px;
 border-radius: 999px;
 color: var(--text-secondary);
 background: rgba(255, 255, 255, 0.04);
 border: 1px solid var(--border);
}

.case-report__section {
 margin-bottom: 24px;
 padding-bottom: 24px;
 border-bottom: 1px solid var(--border);
}

.case-report__section:last-child {
 margin-bottom: 0;
 padding-bottom: 0;
 border-bottom: none;
}

.case-report__section-head {
 display: flex;
 align-items: center;
 gap: 10px;
 margin-bottom: 12px;
}

.case-report__icon {
 width: 32px;
 height: 32px;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 0.875rem;
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid rgba(0, 212, 255, 0.2);
 border-radius: var(--radius-sm);
 flex-shrink: 0;
}

.case-report__section-title {
 font-size: 0.875rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--accent-primary);
}

.case-report__section-body p {
 font-size: 0.9375rem;
 color: var(--text-secondary);
 line-height: 1.75;
 margin-bottom: 0;
}

/* Personal quote - used across pages */
.personal-quote {
 max-width: 640px;
 margin: 0 auto;
 padding: 20px 28px;
 font-size: 1.0625rem;
 font-style: italic;
 font-weight: 500;
 line-height: 1.6;
 color: var(--text-secondary);
 text-align: center;
 border-left: 3px solid var(--accent-primary);
 background: rgba(0, 212, 255, 0.04);
 border-radius: 0 var(--radius-md) var(--radius-md) 0;
}

.personal-quote--center {
 border-left: none;
 border-top: 2px solid var(--accent-primary);
 border-radius: var(--radius-md);
}

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
 .hero__grid {
 grid-template-columns: 1fr;
 text-align: center;
 }

 .hero__subheading {
 margin-left: auto;
 margin-right: auto;
 }

 .hero__actions {
 justify-content: center;
 }

 .hero__heading {
  margin-left: auto;
  margin-right: auto;
 }

 .hero__trust {
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
 }

 .hero__visual {
 order: -1;
 }

 .seo-illustration {
 max-width: 320px;
 }

 .about__grid {
 grid-template-columns: 1fr;
 text-align: center;
 }

 .about__image-wrap {
 display: flex;
 justify-content: center;
 }

 .about__skills {
 justify-content: center;
 }

 .features__grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .contact__grid {
 grid-template-columns: 1fr;
 }

 .footer__grid {
 grid-template-columns: 1fr 1fr;
 }
}

@media (max-width: 768px) {
 :root {
 --nav-height: 70px;
 --nav-top-gap: 10px;
 }

 .section {
 padding: 72px 0;
 }

 .navbar__toggle {
 display: flex;
 }

 .navbar__nav {
 position: fixed;
 top: 0;
 right: -100%;
 width: min(320px, 85vw);
 height: 100vh;
 flex-direction: column;
 align-items: flex-start;
 padding: calc(var(--nav-stack) + 24px) 24px 24px;
 background: var(--glass-bg);
 backdrop-filter: blur(20px);
 -webkit-backdrop-filter: blur(20px);
 border-left: 1px solid var(--glass-border);
 transition: right var(--transition);
 gap: 24px;
 }

 .navbar__nav.open {
 right: 0;
 }

 .navbar__list {
 flex-direction: column;
 align-items: flex-start;
 width: 100%;
 gap: 4px;
 }

 .navbar__link {
 display: block;
 width: 100%;
 padding: 12px 16px;
 }

 .navbar__cta {
 margin-left: 0;
 width: 100%;
 text-align: center;
 }

 .stats__grid {
 grid-template-columns: repeat(2, 1fr);
 gap: 16px;
 }

 .services__grid {
 grid-template-columns: 1fr;
 }

 .features__grid {
 grid-template-columns: 1fr;
 }

 .portfolio__grid {
 grid-template-columns: 1fr;
 }

 .footer__grid {
 grid-template-columns: 1fr;
 text-align: center;
 }

 .footer__tagline {
 margin: 0 auto;
 }

 .footer__bottom-inner {
 flex-direction: column;
 gap: 8px;
 text-align: center;
 }

 .contact__form {
 padding: 28px;
 }

 .cta-banner__inner {
 padding: 48px 24px;
 }
}

@media (max-width: 480px) {
 .hero__actions {
 flex-direction: column;
 width: 100%;
 }

 .hero__actions .btn {
 width: 100%;
 }

 .stats__grid {
 grid-template-columns: 1fr 1fr;
 }

 .testimonial-card {
 padding: 28px 20px;
 }
}

/* ---------- Reduced Motion ---------- */
@media (prefers-reduced-motion: reduce) {
 *,
 *::before,
 *::after {
 animation-duration: 0.01ms !important;
 animation-iteration-count: 1 !important;
 transition-duration: 0.01ms !important;
 }

 html {
 scroll-behavior: auto;
 }

 .fade-up,
 .fade-left,
 .fade-right {
 opacity: 1;
 transform: none;
 }

 .marquee__track {
 animation: none;
 }
}

/* ============================================================
 Multi-Page - Page Hero
 ============================================================ */
.page-hero {
 position: relative;
 padding: calc(var(--nav-stack) + 60px) 0 80px;
 background: var(--bg-secondary);
 border-bottom: 1px solid var(--border);
 overflow: hidden;
}

.page-hero__blobs {
 position: absolute;
 inset: 0;
 pointer-events: none;
 overflow: hidden;
}

.page-hero__blob {
 position: absolute;
 border-radius: 50%;
 filter: blur(80px);
 opacity: 0.25;
}

.page-hero__blob--1 {
 width: 400px;
 height: 400px;
 background: var(--accent-primary);
 top: -30%;
 right: -10%;
}

.page-hero__blob--2 {
 width: 300px;
 height: 300px;
 background: var(--accent-secondary);
 bottom: -30%;
 left: -5%;
}

.page-hero__inner {
 position: relative;
 z-index: 1;
 text-align: center;
 max-width: 720px;
 margin: 0 auto;
}

.page-hero__breadcrumb {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 font-size: 0.8125rem;
 color: var(--text-secondary);
 margin-bottom: 20px;
}

.page-hero__breadcrumb a:hover {
 color: var(--accent-primary);
}

.page-hero__breadcrumb span {
 color: var(--accent-primary);
}

.page-hero__title {
 font-size: clamp(2rem, 5vw, 3rem);
 font-weight: 700;
 line-height: 1.15;
 margin-bottom: 16px;
}

.page-hero__desc {
 font-size: 1.0625rem;
 color: var(--text-secondary);
 max-width: 560px;
 margin: 0 auto;
}

.page-hero--split {
 background: var(--bg-primary);
 border-bottom: 1px solid var(--border);
}

.page-hero--split .page-hero__dots {
 position: absolute;
 inset: 0;
 background-image: radial-gradient(rgba(255, 255, 255, 0.1) 1px, transparent 1px);
 background-size: 24px 24px;
 opacity: 0.18;
 pointer-events: none;
}

.page-hero__grid {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 48px;
 align-items: center;
 position: relative;
 z-index: 1;
}

.page-hero--split .page-hero__inner {
 text-align: left;
 max-width: none;
 margin: 0;
}

.page-hero--split .page-hero__breadcrumb {
 justify-content: flex-start;
}

.page-hero--split .page-hero__desc {
 margin: 0;
}

.page-hero__visual {
 display: flex;
 justify-content: center;
 align-items: center;
}

.page-hero--about {
 padding: calc(var(--nav-stack) + 48px) 0 64px;
}

.page-hero--about .page-hero__dots {
 opacity: 0.14;
}

.page-hero--about .page-hero__blob--1 {
 opacity: 0.18;
}

.page-hero--about .page-hero__blob--2 {
 opacity: 0.16;
}

.about-hero__visual {
 position: relative;
 width: min(100%, 340px);
 min-height: 340px;
 margin-left: auto;
 display: flex;
 align-items: center;
 justify-content: center;
}

.about-hero__visual .seo-illustration {
 max-width: 340px;
}

.hero-eagle--about {
 top: -4%;
 width: 88px;
 height: 88px;
}

.seo-illustration--home .seo-illustration__core--photo {
 inset: 26%;
}

.seo-illustration__core--photo {
 inset: 26%;
 padding: 0;
 overflow: hidden;
 background:
  url('../images/backgrounds/tech-code-bg-square.jpg') center / cover no-repeat,
  linear-gradient(145deg, rgba(26, 34, 52, 0.95), rgba(11, 18, 32, 1));
 border: 2px solid rgba(0, 212, 255, 0.35);
 box-shadow: 0 0 28px rgba(0, 212, 255, 0.15), inset 0 0 20px rgba(124, 58, 237, 0.08);
}

.seo-illustration__core--photo .seo-illustration__label {
 display: none;
}

.about-hero__photo {
 position: relative;
 width: 100%;
 height: 100%;
 display: flex;
 align-items: center;
 justify-content: center;
}

.about-hero__photo-img {
 position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: center 28%;
 border-radius: 50%;
}

.about-hero__photo-img.is-missing {
 display: none;
}

.about-hero__photo:has(.about-hero__photo-img:not(.is-missing)) .about-hero__photo-placeholder {
 display: none;
}

.about-hero__photo-placeholder {
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 4px;
 text-align: center;
 padding: 12px;
}

.about-hero__photo-initials {
 font-size: 1.625rem;
 font-weight: 700;
 line-height: 1;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 -webkit-background-clip: text;
 background-clip: text;
 color: transparent;
}

.about-hero__photo-hint {
 font-size: 0.625rem;
 font-weight: 500;
 letter-spacing: 0.06em;
 text-transform: uppercase;
 color: var(--text-secondary);
 opacity: 0.85;
}

@media (max-width: 992px) {
 .page-hero__grid {
 grid-template-columns: 1fr;
 gap: 32px;
 }

 .page-hero--split .page-hero__inner {
 text-align: center;
 }

 .page-hero--split .page-hero__breadcrumb {
 justify-content: center;
 }

 .page-hero__visual {
 order: -1;
 }

 .about-hero__visual {
  width: min(100%, 300px);
  min-height: 300px;
  margin: 0 auto;
 }

 .about-hero__visual .seo-illustration {
  max-width: 300px;
 }
}

/* ============================================================
 Service Page Hero - Split Layout
 ============================================================ */
.service-hero {
 position: relative;
 padding: calc(var(--nav-stack) + 48px) 0 72px;
 background: var(--bg-secondary);
 border-bottom: 1px solid var(--border);
 overflow: hidden;
 min-height: 520px;
 display: flex;
 align-items: center;
}

.service-hero__blobs {
 position: absolute;
 inset: 0;
 pointer-events: none;
 overflow: hidden;
}

.service-hero__blob {
 position: absolute;
 border-radius: 50%;
 filter: blur(90px);
 opacity: 0.35;
 animation: serviceHeroBlob 14s ease-in-out infinite;
}

.service-hero__blob--1 {
 width: 480px;
 height: 480px;
 background: var(--accent-primary);
 top: -25%;
 right: -8%;
}

.service-hero__blob--2 {
 width: 360px;
 height: 360px;
 background: var(--accent-secondary);
 bottom: -35%;
 left: -5%;
 animation-delay: -5s;
}

.service-hero__blob--3 {
 width: 200px;
 height: 200px;
 background: rgba(0, 212, 255, 0.4);
 top: 40%;
 left: 45%;
 animation-delay: -9s;
}

@keyframes serviceHeroBlob {
 0%, 100% { transform: translate(0, 0) scale(1); }
 33% { transform: translate(20px, -15px) scale(1.05); }
 66% { transform: translate(-15px, 10px) scale(0.95); }
}

.service-hero__grid {
 position: relative;
 z-index: 1;
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 48px;
 align-items: center;
}

.service-hero__content {
 text-align: left;
}

.service-hero__breadcrumb {
 display: flex;
 align-items: center;
 flex-wrap: wrap;
 gap: 8px;
 font-size: 0.8125rem;
 color: var(--text-secondary);
 margin-bottom: 20px;
}

.service-hero__breadcrumb a:hover {
 color: var(--accent-primary);
}

.service-hero__breadcrumb span {
 color: var(--accent-primary);
}

.service-hero__label {
 display: inline-block;
 font-size: 0.75rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.1em;
 color: var(--accent-primary);
 padding: 6px 14px;
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid rgba(0, 212, 255, 0.2);
 border-radius: 100px;
 margin-bottom: 16px;
}

.service-hero__title {
 font-size: clamp(2rem, 4.5vw, 2.75rem);
 font-weight: 700;
 line-height: 1.15;
 margin-bottom: 18px;
 letter-spacing: -0.02em;
}

.service-hero__intro {
 font-size: 1.0625rem;
 color: var(--text-secondary);
 line-height: 1.7;
 margin-bottom: 28px;
 max-width: 520px;
}

.service-hero__actions {
 display: flex;
 flex-wrap: wrap;
 gap: 14px;
 margin-bottom: 28px;
}

.service-hero__badges {
 display: flex;
 flex-wrap: wrap;
 gap: 10px 16px;
 list-style: none;
 margin: 0;
 padding: 0;
}

.service-hero__badges li {
 font-size: 0.8125rem;
 font-weight: 500;
 color: var(--text-secondary);
 display: flex;
 align-items: center;
 gap: 6px;
}

.service-hero__badges li::before {
 content: '✓';
 color: var(--accent-primary);
 font-weight: 700;
}

.service-hero__visual {
 position: relative;
 min-height: 380px;
 display: flex;
 align-items: center;
 justify-content: center;
}

/* Service hero illustrations */
.sh-illus {
 position: relative;
 width: 100%;
 max-width: 420px;
 height: 380px;
 margin: 0 auto;
}

.sh-illus__glow {
 position: absolute;
 border-radius: 50%;
 filter: blur(60px);
 pointer-events: none;
}

.sh-illus__glow--1 {
 width: 180px;
 height: 180px;
 background: var(--glow-primary);
 top: 10%;
 right: 5%;
 animation: shGlowPulse 6s ease-in-out infinite;
}

.sh-illus__glow--2 {
 width: 140px;
 height: 140px;
 background: var(--glow-secondary);
 bottom: 15%;
 left: 0;
 animation: shGlowPulse 6s ease-in-out infinite 2s;
}

@keyframes shGlowPulse {
 0%, 100% { opacity: 0.5; transform: scale(1); }
 50% { opacity: 0.85; transform: scale(1.15); }
}

.sh-illus__panel {
 position: absolute;
 background: var(--glass-bg);
 backdrop-filter: blur(16px);
 -webkit-backdrop-filter: blur(16px);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
 transition: transform var(--transition), box-shadow var(--transition);
}

.sh-illus:hover .sh-illus__panel {
 transform: translateY(-4px);
 box-shadow: 0 16px 48px rgba(0, 212, 255, 0.12);
}

.sh-illus__panel--main {
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 width: 88%;
 padding: 20px;
 z-index: 2;
}

.sh-illus:hover .sh-illus__panel--main {
 transform: translate(-50%, calc(-50% - 4px));
}

.sh-illus__panel-head {
 display: flex;
 align-items: center;
 gap: 6px;
 font-size: 0.6875rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.06em;
 color: var(--text-secondary);
 margin-bottom: 16px;
 padding-bottom: 12px;
 border-bottom: 1px solid var(--border);
}

.sh-illus__dot {
 width: 8px;
 height: 8px;
 border-radius: 50%;
 background: rgba(255, 255, 255, 0.15);
}

.sh-illus__dot:nth-child(1) { background: #ff5f57; }
.sh-illus__dot:nth-child(2) { background: #febc2e; }
.sh-illus__dot:nth-child(3) { background: #28c840; }

.sh-illus__metrics {
 display: flex;
 gap: 20px;
 margin-bottom: 16px;
}

.sh-illus__metric-val {
 display: block;
 font-size: 1.25rem;
 font-weight: 700;
 color: var(--accent-primary);
 line-height: 1.2;
}

.sh-illus__metric-lbl {
 font-size: 0.6875rem;
 color: var(--text-secondary);
 text-transform: uppercase;
 letter-spacing: 0.04em;
}

.sh-illus__bars {
 display: flex;
 align-items: flex-end;
 gap: 10px;
 height: 80px;
}

.sh-illus__bar {
 flex: 1;
 height: var(--h, 50%);
 background: linear-gradient(to top, var(--accent-primary), rgba(0, 212, 255, 0.2));
 border-radius: 4px 4px 0 0;
 animation: shBarGrow 2s ease-out backwards;
}

.sh-illus__bar:nth-child(2) { animation-delay: 0.15s; background: linear-gradient(to top, var(--accent-secondary), rgba(124, 58, 237, 0.2)); }
.sh-illus__bar:nth-child(3) { animation-delay: 0.3s; }
.sh-illus__bar:nth-child(4) { animation-delay: 0.45s; background: linear-gradient(to top, var(--accent-secondary), rgba(124, 58, 237, 0.2)); }

@keyframes shBarGrow {
 from { height: 0; opacity: 0; }
}

.sh-illus__float {
 position: absolute;
 z-index: 3;
 animation: shFloat 5s ease-in-out infinite;
}

.sh-illus__float--1 { animation-delay: 0s; }
.sh-illus__float--2 { animation-delay: 1.5s; }
.sh-illus__float--3 { animation-delay: 3s; }

@keyframes shFloat {
 0%, 100% { transform: translateY(0); }
 50% { transform: translateY(-10px); }
}

.sh-illus__site-card {
 padding: 10px 14px;
 background: rgba(255, 255, 255, 0.04);
 border: 1px solid var(--border);
 border-radius: var(--radius-sm);
 backdrop-filter: blur(8px);
 font-size: 0.75rem;
 font-weight: 600;
 color: var(--text-primary);
 display: flex;
 flex-direction: column;
 gap: 2px;
 transition: border-color var(--transition), transform var(--transition);
}

.sh-illus__site-card:hover {
 border-color: var(--border-hover);
 transform: translateY(-4px) scale(1.02);
}

.sh-illus--guest .sh-illus__float--1 { top: 8%; right: 0; }
.sh-illus--guest .sh-illus__float--2 { bottom: 12%; left: -2%; }
.sh-illus--guest .sh-illus__float--3 { top: 18%; left: 0; }

.sh-illus__site-da {
 font-size: 0.625rem;
 color: var(--accent-primary);
 font-weight: 700;
}

.sh-illus__badge {
 padding: 8px 14px;
 font-size: 0.6875rem;
 font-weight: 600;
 color: var(--text-primary);
 background: rgba(0, 212, 255, 0.1);
 border: 1px solid rgba(0, 212, 255, 0.25);
 border-radius: 100px;
 white-space: nowrap;
}

.sh-illus__badge--alt {
 background: rgba(124, 58, 237, 0.12);
 border-color: rgba(124, 58, 237, 0.3);
}

.sh-illus__network {
 position: absolute;
 bottom: 8%;
 right: 5%;
 width: 55%;
 opacity: 0.7;
 z-index: 1;
}

/* Press Release visual */
.sh-illus__globe {
 position: absolute;
 top: 8%;
 left: 50%;
 transform: translateX(-50%);
 width: 120px;
 height: 120px;
 z-index: 1;
}

.sh-illus__globe-ring {
 position: absolute;
 inset: 0;
 border: 2px solid rgba(0, 212, 255, 0.3);
 border-radius: 50%;
 animation: shGlobeSpin 20s linear infinite;
}

.sh-illus__globe-core {
 position: absolute;
 inset: 15%;
 background: radial-gradient(circle at 30% 30%, rgba(0, 212, 255, 0.25), rgba(124, 58, 237, 0.15));
 border-radius: 50%;
 border: 1px solid var(--glass-border);
}

@keyframes shGlobeSpin {
 from { transform: rotate(0deg); }
 to { transform: rotate(360deg); }
}

.sh-illus--pr .sh-illus__panel--main { top: 58%; }
.sh-illus--pr:hover .sh-illus__panel--main { transform: translate(-50%, calc(-42% - 4px)); }

.sh-illus__pubs {
 display: flex;
 flex-wrap: wrap;
 gap: 8px;
}

.sh-illus__pub {
 font-size: 0.6875rem;
 font-weight: 600;
 padding: 6px 10px;
 background: rgba(255, 255, 255, 0.04);
 border: 1px solid var(--border);
 border-radius: var(--radius-sm);
 color: var(--text-secondary);
 transition: all var(--transition);
}

.sh-illus__pub:hover {
 color: var(--accent-primary);
 border-color: var(--border-hover);
}

.sh-illus--pr .sh-illus__float--1 { top: 5%; right: 5%; }
.sh-illus--pr .sh-illus__float--2 { bottom: 8%; left: 5%; }

/* SEO visual */
.sh-illus__chart-line {
 height: 90px;
 margin-bottom: 12px;
}

.sh-illus__chart-line svg {
 width: 100%;
 height: 100%;
}

.sh-illus__keywords {
 display: flex;
 flex-wrap: wrap;
 gap: 8px;
}

.sh-illus__keywords span {
 font-size: 0.6875rem;
 font-weight: 600;
 padding: 4px 10px;
 background: rgba(0, 212, 255, 0.08);
 border-radius: 100px;
 color: var(--text-secondary);
}

.sh-illus__keywords span:first-child {
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.15);
}

.sh-illus__metric-card {
 padding: 12px 16px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-md);
 backdrop-filter: blur(12px);
 text-align: center;
 min-width: 100px;
}

.sh-illus__metric-card .sh-illus__metric-val {
 font-size: 1.125rem;
}

.sh-illus__metric-card span:last-child {
 font-size: 0.625rem;
 color: var(--text-secondary);
 text-transform: uppercase;
 letter-spacing: 0.04em;
}

.sh-illus--seo .sh-illus__float--1 { top: 10%; right: -2%; }
.sh-illus--seo .sh-illus__float--2 { bottom: 15%; left: 0; }

/* Local SEO visual */
.sh-illus__map {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 width: 85%;
 height: 70%;
 background: rgba(255, 255, 255, 0.02);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 overflow: hidden;
 z-index: 1;
}

.sh-illus__map-grid {
 position: absolute;
 inset: 0;
 background-image:
 linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
 linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
 background-size: 24px 24px;
}

.sh-illus__pin {
 position: absolute;
 width: 14px;
 height: 14px;
 background: var(--accent-primary);
 border-radius: 50% 50% 50% 0;
 transform: rotate(-45deg);
 box-shadow: 0 0 16px var(--glow-primary);
 animation: shPinPulse 2.5s ease-in-out infinite;
}

.sh-illus__pin--1 { top: 30%; left: 35%; }
.sh-illus__pin--2 { top: 55%; left: 60%; animation-delay: 0.5s; }
.sh-illus__pin--3 { top: 40%; left: 75%; animation-delay: 1s; background: var(--accent-secondary); box-shadow: 0 0 16px var(--glow-secondary); }

@keyframes shPinPulse {
 0%, 100% { transform: rotate(-45deg) scale(1); }
 50% { transform: rotate(-45deg) scale(1.15); }
}

.sh-illus__panel--gbp {
 bottom: 8%;
 left: 50%;
 transform: translateX(-50%);
 width: 78%;
 padding: 14px 16px;
 z-index: 3;
}

.sh-illus:hover .sh-illus__panel--gbp {
 transform: translateX(-50%) translateY(-4px);
}

.sh-illus__gbp-head {
 display: flex;
 align-items: center;
 gap: 10px;
 margin-bottom: 10px;
}

.sh-illus__gbp-head strong {
 display: block;
 font-size: 0.8125rem;
}

.sh-illus__gbp-head span {
 font-size: 0.6875rem;
 color: var(--text-secondary);
}

.sh-illus__gbp-icon {
 width: 36px;
 height: 36px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: linear-gradient(135deg, #4285f4, #34a853);
 border-radius: var(--radius-sm);
 font-weight: 700;
 font-size: 1rem;
}

.sh-illus__gbp-stats {
 display: flex;
 justify-content: space-between;
 align-items: center;
 font-size: 0.75rem;
 color: var(--text-secondary);
 padding-top: 10px;
 border-top: 1px solid var(--border);
}

.sh-illus__gbp-rank {
 font-weight: 700;
 color: var(--accent-primary);
 font-size: 1rem;
}

.sh-illus--local .sh-illus__float--1 { top: 6%; right: 8%; }

/* Content writing visual */
.sh-illus__panel--editor {
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 width: 90%;
 padding: 18px;
 z-index: 2;
}

.sh-illus:hover .sh-illus__panel--editor {
 transform: translate(-50%, calc(-50% - 4px));
}

.sh-illus__editor-lines span {
 display: block;
 height: 8px;
 background: rgba(255, 255, 255, 0.08);
 border-radius: 4px;
 margin-bottom: 10px;
}

.sh-illus__editor-lines span:nth-child(1) { width: 95%; }
.sh-illus__editor-lines span:nth-child(2) { width: 88%; }
.sh-illus__editor-lines span:nth-child(3) { width: 72%; }
.sh-illus__editor-short { width: 45% !important; background: rgba(0, 212, 255, 0.15) !important; }

.sh-illus__editor-footer {
 display: flex;
 justify-content: space-between;
 margin-top: 16px;
 padding-top: 12px;
 border-top: 1px solid var(--border);
 font-size: 0.6875rem;
 color: var(--text-secondary);
}

.sh-illus__editor-footer span:first-child {
 color: var(--accent-primary);
 font-weight: 600;
}

.sh-illus--content .sh-illus__float--1 { top: 10%; right: 0; }
.sh-illus--content .sh-illus__float--2 { bottom: 10%; left: 0; }

@media (max-width: 992px) {
 .service-hero__grid {
 grid-template-columns: 1fr;
 gap: 40px;
 }

 .service-hero__visual {
 order: -1;
 min-height: 320px;
 }

 .sh-illus {
 height: 320px;
 max-width: 360px;
 }

 .service-hero {
 min-height: auto;
 padding-bottom: 56px;
 }
}

@media (max-width: 768px) {
 .service-hero__actions {
 flex-direction: column;
 }

 .service-hero__actions .btn {
 width: 100%;
 text-align: center;
 }

 .sh-illus {
 height: 280px;
 }
}

/* Active nav - page-based */
.navbar__link.active {
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.08);
}

/* ============================================================
 Profile Photo - swap assets/images/profile.jpg only
 ============================================================ */
.profile-photo {
 width: 100%;
 height: 100%;
 object-fit: cover;
 object-position: center 15%;
 border-radius: var(--radius-xl);
}

.profile-photo-wrap {
 position: relative;
 aspect-ratio: 4/5;
 max-width: 400px;
 border-radius: var(--radius-xl);
 overflow: hidden;
 border: 1px solid rgba(0, 212, 255, 0.28);
 background:
  url('../images/backgrounds/tech-code-bg-portrait.jpg') center / cover no-repeat,
  var(--bg-card);
 box-shadow:
  0 24px 56px rgba(0, 0, 0, 0.4),
  0 0 40px rgba(0, 212, 255, 0.1);
}

.profile-photo-wrap::before {
 content: '';
 position: absolute;
 inset: 0;
 background-image: radial-gradient(rgba(255, 255, 255, 0.09) 1px, transparent 1px);
 background-size: 18px 18px;
 opacity: 0.45;
 pointer-events: none;
 z-index: 2;
 mix-blend-mode: soft-light;
}

.profile-photo-wrap::after {
 content: '';
 position: absolute;
 inset: 0;
 background: linear-gradient(180deg, rgba(0, 212, 255, 0.08) 0%, transparent 35%, transparent 65%, rgba(124, 58, 237, 0.15) 100%);
 pointer-events: none;
 z-index: 3;
}

.profile-photo-wrap__glow {
 position: absolute;
 bottom: -20%;
 left: 50%;
 transform: translateX(-50%);
 width: 80%;
 height: 40%;
 background: radial-gradient(ellipse, var(--glow-primary), transparent 70%);
 pointer-events: none;
 z-index: 1;
}

.profile-photo-wrap--clean {
 background: transparent;
 border: none;
 box-shadow: none;
 overflow: visible;
 aspect-ratio: auto;
 max-width: none;
}

.profile-photo-wrap--clean::before,
.profile-photo-wrap--clean::after {
 display: none;
}

.profile-photo-wrap--clean .profile-photo-wrap__glow {
 display: none;
}

.profile-photo-wrap--clean .profile-photo {
 object-position: center center;
 filter: none;
}

/* Original photo — zero alteration (no crop, filter, stretch, or color change) */
.profile-photo-wrap--native {
 display: block;
 width: fit-content;
 max-width: 100%;
 margin: 0 auto;
 aspect-ratio: auto;
 overflow: visible;
 background: transparent;
 border: none;
 box-shadow: none;
 border-radius: 0;
}

.profile-photo-wrap--native::before,
.profile-photo-wrap--native::after {
 display: none;
}

.profile-photo--native {
 display: block;
 width: auto;
 height: auto;
 max-width: min(400px, 100%);
 object-fit: none;
 object-position: unset;
 border-radius: 0;
 filter: none;
 -webkit-filter: none;
 image-rendering: auto;
}

/* Profile photo — browse / drag-drop from computer */
.profile-photo-upload {
 width: 100%;
 max-width: 400px;
 margin: 0 auto;
}

.profile-photo-upload__input {
 display: none;
}

.profile-photo-dropzone {
 position: relative;
 width: 100%;
 aspect-ratio: 4 / 5;
 min-height: 320px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(255, 255, 255, 0.02);
 border: 2px dashed rgba(0, 212, 255, 0.25);
 border-radius: var(--radius-xl);
 cursor: pointer;
 transition: border-color var(--transition), background var(--transition);
 overflow: hidden;
}

.profile-photo-dropzone:hover,
.profile-photo-dropzone.is-dragover {
 border-color: rgba(0, 212, 255, 0.55);
 background: rgba(0, 212, 255, 0.04);
}

.profile-photo-dropzone.is-filled {
 cursor: default;
 border-style: solid;
 border-color: rgba(0, 212, 255, 0.2);
 background: transparent;
 padding: 0;
 aspect-ratio: auto;
 min-height: 0;
 height: auto;
 display: block;
 overflow: visible;
 line-height: 0;
 box-shadow: 0 20px 48px rgba(0, 0, 0, 0.35);
}

.profile-photo-dropzone.is-filled .profile-photo-upload__empty {
 display: none;
}

.profile-photo-dropzone.is-filled .profile-photo-about {
 display: block;
 width: 100%;
 height: auto;
 max-width: 400px;
 object-fit: none;
 object-position: center;
 filter: none;
 border-radius: var(--radius-xl);
 border: 1px solid rgba(0, 212, 255, 0.2);
}

.profile-photo-upload__empty {
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 14px;
 padding: 32px 24px;
 text-align: center;
 pointer-events: none;
}

.profile-photo-upload__icon {
 width: 52px;
 height: 52px;
 color: var(--accent-primary);
 opacity: 0.55;
}

.profile-photo-upload__text {
 margin: 0;
 font-size: 0.875rem;
 line-height: 1.55;
 color: var(--text-secondary);
 max-width: 240px;
}

.profile-photo-upload__empty .btn {
 pointer-events: auto;
}

.profile-photo-upload__change {
 position: absolute;
 bottom: 12px;
 right: 12px;
 z-index: 2;
 backdrop-filter: blur(8px);
 background: rgba(11, 18, 32, 0.85);
}

.profile-photo-frame {
 width: 100%;
 max-width: 400px;
 margin: 0 auto;
 border-radius: var(--radius-xl);
 overflow: hidden;
 border: 1px solid rgba(0, 212, 255, 0.2);
 box-shadow: 0 20px 48px rgba(0, 0, 0, 0.35);
 background: #1a2332;
 line-height: 0;
}

.profile-photo-about {
 display: block;
 width: 100%;
 height: auto;
 max-width: 400px;
 object-fit: none;
 object-position: center;
 filter: none;
 -webkit-filter: none;
 border-radius: var(--radius-xl);
 image-rendering: auto;
}

.profile-photo-slot {
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 12px;
 width: 100%;
 max-width: 400px;
 aspect-ratio: 4 / 5;
 margin: 0 auto;
 padding: 32px 24px;
 text-align: center;
 background: rgba(255, 255, 255, 0.02);
 border: 2px dashed rgba(0, 212, 255, 0.25);
 border-radius: var(--radius-xl);
 color: var(--text-secondary);
}

.profile-photo-slot__icon {
 width: 48px;
 height: 48px;
 opacity: 0.45;
 color: var(--accent-primary);
}

.profile-photo-slot__label {
 font-size: 1rem;
 font-weight: 600;
 color: var(--text-primary);
}

.profile-photo-slot__hint {
 font-size: 0.75rem;
 line-height: 1.5;
 opacity: 0.75;
 max-width: 220px;
}

/* ============================================================
 Eagle Illustration (Hero)
 ============================================================ */
.hero-eagle {
 position: absolute;
 top: -6%;
 left: 50%;
 transform: translateX(-50%);
 width: 100px;
 height: 100px;
 z-index: 3;
 animation: eagleFloat 5s ease-in-out infinite;
 filter: drop-shadow(0 0 24px var(--glow-primary));
}

.hero-eagle img,
.hero-eagle svg {
 width: 100%;
 height: 100%;
}

@keyframes eagleFloat {
 0%, 100% { transform: translateX(-50%) translateY(0); }
 50% { transform: translateX(-50%) translateY(-14px); }
}

/* ============================================================
 Marquee
 ============================================================ */
.marquee-section {
 padding: 48px 0;
 background: var(--bg-primary);
 border-top: 1px solid var(--border);
 border-bottom: 1px solid var(--border);
}

.marquee-section--alt {
 background: var(--bg-secondary);
}

.marquee-section__label {
 text-align: center;
 font-size: 0.75rem;
 font-weight: 600;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--text-secondary);
 margin-bottom: 24px;
}

.marquee {
 overflow: hidden;
 -webkit-mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
 mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
}

.marquee__track {
 display: flex;
 width: max-content;
 animation: marqueeScroll 45s linear infinite;
}

.marquee:hover .marquee__track {
 animation-play-state: paused;
}

.marquee__group {
 display: flex;
 align-items: center;
 gap: 20px;
 padding: 0 10px;
}

.marquee__badge {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 padding: 12px 28px;
 font-size: 0.9375rem;
 font-weight: 600;
 color: var(--text-secondary);
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: 50px;
 white-space: nowrap;
 transition: all var(--transition);
}

.marquee__badge:hover {
 color: var(--accent-primary);
 border-color: var(--border-hover);
 box-shadow: 0 0 20px var(--glow-primary);
}

@keyframes marqueeScroll {
 from { transform: translateX(0); }
 to { transform: translateX(-50%); }
}

/* ============================================================
 Case Studies - Premium Cards
 ============================================================ */
.case-studies__grid {
 display: flex;
 flex-direction: column;
 gap: 48px;
}

.case-study {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 0;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-xl);
 overflow: hidden;
 transition: all var(--transition);
}

.case-study:hover {
 border-color: var(--border-hover);
 box-shadow: var(--shadow-card), 0 0 50px var(--glow-primary);
 transform: translateY(-4px);
}

.case-study:nth-child(even) {
 direction: rtl;
}

.case-study:nth-child(even) > * {
 direction: ltr;
}

.case-study__image-wrap {
 position: relative;
 min-height: 360px;
 overflow: hidden;
}

.case-study__image {
 width: 100%;
 height: 100%;
 object-fit: cover;
 transition: transform 0.6s ease;
}

.case-study:hover .case-study__image {
 transform: scale(1.05);
}

.case-study__image-overlay {
 position: absolute;
 inset: 0;
 background: linear-gradient(to top, rgba(11, 18, 32, 0.6), transparent 50%);
}

.case-study__industry {
 position: absolute;
 bottom: 20px;
 left: 20px;
 padding: 6px 14px;
 font-size: 0.75rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.08em;
 color: var(--accent-primary);
 background: rgba(11, 18, 32, 0.8);
 border: 1px solid var(--border-hover);
 border-radius: 50px;
 backdrop-filter: blur(8px);
}

.case-study__body {
 padding: 40px;
 display: flex;
 flex-direction: column;
 justify-content: center;
}

.case-study__title {
 font-size: 1.5rem;
 font-weight: 700;
 margin-bottom: 12px;
}

.case-study__services {
 display: flex;
 flex-wrap: wrap;
 gap: 8px;
 margin-bottom: 24px;
}

.case-study__service-tag {
 padding: 4px 12px;
 font-size: 0.75rem;
 font-weight: 500;
 color: var(--accent-secondary);
 background: rgba(124, 58, 237, 0.1);
 border: 1px solid rgba(124, 58, 237, 0.25);
 border-radius: 50px;
}

.case-study__block {
 margin-bottom: 16px;
}

.case-study__block-title {
 font-size: 0.75rem;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.1em;
 color: var(--accent-primary);
 margin-bottom: 6px;
}

.case-study__block-text {
 font-size: 0.9375rem;
 color: var(--text-secondary);
 line-height: 1.65;
}

.case-study__results {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 12px;
 margin: 20px 0 24px;
 padding: 16px;
 background: var(--bg-secondary);
 border-radius: var(--radius-md);
 border: 1px solid var(--border);
}

.case-study__result {
 text-align: center;
}

.case-study__result-value {
 display: block;
 font-size: 1.25rem;
 font-weight: 700;
 color: var(--accent-primary);
}

.case-study__result-label {
 font-size: 0.6875rem;
 color: var(--text-secondary);
 text-transform: uppercase;
 letter-spacing: 0.06em;
}

.case-study__actions {
 display: flex;
 flex-wrap: wrap;
 gap: 12px;
 margin-top: 8px;
}

.case-study__mockup {
 position: absolute;
 inset: 0;
}

/* ============================================================
 About Page - Timeline & Certifications
 ============================================================ */
.timeline {
 position: relative;
 max-width: 680px;
 margin: 0 auto;
 padding-left: 32px;
}

.timeline::before {
 content: '';
 position: absolute;
 left: 6px;
 top: 8px;
 bottom: 8px;
 width: 2px;
 background: linear-gradient(to bottom, var(--accent-primary), var(--accent-secondary));
 opacity: 0.4;
}

.timeline__item {
 position: relative;
 padding-bottom: 36px;
}

.timeline__item:last-child {
 padding-bottom: 0;
}

.timeline__dot {
 position: absolute;
 left: -32px;
 top: 6px;
 width: 14px;
 height: 14px;
 border-radius: 50%;
 background: var(--accent-primary);
 box-shadow: 0 0 12px var(--glow-primary);
 border: 2px solid var(--bg-primary);
}

.timeline__year {
 font-size: 0.8125rem;
 font-weight: 600;
 color: var(--accent-primary);
 margin-bottom: 4px;
}

.timeline__title {
 font-size: 1.0625rem;
 font-weight: 700;
 margin-bottom: 6px;
}

.timeline__desc {
 font-size: 0.9375rem;
 color: var(--text-secondary);
}

.cert-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 24px;
}

.cert-card {
 padding: 28px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 text-align: center;
 transition: all var(--transition);
}

.cert-card:hover {
 border-color: var(--border-hover);
 transform: translateY(-4px);
 box-shadow: 0 0 30px var(--glow-primary);
}

.cert-card__icon {
 width: 56px;
 height: 56px;
 margin: 0 auto 16px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(0, 212, 255, 0.1);
 border-radius: var(--radius-md);
}

.cert-card__icon svg {
 width: 28px;
 height: 28px;
 stroke: var(--accent-primary);
}

.cert-card__title {
 font-size: 0.9375rem;
 font-weight: 700;
 margin-bottom: 6px;
}

.cert-card__issuer {
 font-size: 0.8125rem;
 color: var(--text-secondary);
}

.skills-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 16px;
}

.skill-bar {
 padding: 20px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-md);
}

.skill-bar__header {
 display: flex;
 justify-content: space-between;
 margin-bottom: 10px;
 font-size: 0.875rem;
 font-weight: 600;
}

.skill-bar__track {
 height: 6px;
 background: var(--bg-secondary);
 border-radius: 3px;
 overflow: hidden;
}

.skill-bar__fill {
 height: 100%;
 background: linear-gradient(90deg, var(--accent-primary), var(--accent-secondary));
 border-radius: 3px;
 width: 0;
 transition: width 1.2s ease;
}

.skill-bar.visible .skill-bar__fill {
 width: var(--fill, 80%);
}

/* ============================================================
 Contact Page - Map Placeholder
 ============================================================ */
.map-placeholder {
 width: 100%;
 height: 320px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 12px;
 color: var(--text-secondary);
 overflow: hidden;
 position: relative;
}

.map-placeholder__grid {
 position: absolute;
 inset: 0;
 background-image:
 linear-gradient(var(--border) 1px, transparent 1px),
 linear-gradient(90deg, var(--border) 1px, transparent 1px);
 background-size: 40px 40px;
 opacity: 0.5;
}

.map-placeholder__pin {
 position: relative;
 z-index: 1;
 width: 48px;
 height: 48px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(0, 212, 255, 0.15);
 border: 1px solid var(--border-hover);
 border-radius: 50%;
 animation: eagleFloat 4s ease-in-out infinite;
}

.map-placeholder__pin svg {
 width: 24px;
 height: 24px;
 stroke: var(--accent-primary);
}

.map-placeholder__text {
 position: relative;
 z-index: 1;
 font-size: 0.875rem;
}

.contact-page__layout {
 display: grid;
 grid-template-columns: 1fr 1.3fr;
 gap: 48px;
 align-items: start;
}

/* ============================================================
 Preview / Teaser Sections (Home)
 ============================================================ */
.preview-section {
 text-align: center;
 margin-top: 48px;
}

.services-preview__grid {
 display: grid;
 grid-template-columns: repeat(5, 1fr);
 gap: 20px;
}

.services-preview__grid--6 {
 grid-template-columns: repeat(3, 1fr);
}

.service-preview {
 padding: 28px 20px;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 text-align: center;
 transition: all var(--transition);
}

.service-preview:hover {
 transform: translateY(-6px);
 border-color: var(--border-hover);
 box-shadow: 0 0 30px var(--glow-primary);
}

.service-preview__icon {
 width: 48px;
 height: 48px;
 margin: 0 auto 16px;
 display: flex;
 align-items: center;
 justify-content: center;
 background: rgba(0, 212, 255, 0.1);
 border-radius: var(--radius-md);
}

.service-preview__icon svg {
 width: 24px;
 height: 24px;
 stroke: var(--accent-primary);
}

.service-preview__title {
 font-size: 0.9375rem;
 font-weight: 700;
 margin-bottom: 8px;
}

.service-preview__desc {
 font-size: 0.8125rem;
 color: var(--text-secondary);
 line-height: 1.5;
}

/* ============================================================
 Multi-Page Responsive
 ============================================================ */
@media (max-width: 1024px) {
 .case-study,
 .case-study:nth-child(even) {
 grid-template-columns: 1fr;
 direction: ltr;
 }

 .case-study__image-wrap {
 min-height: 260px;
 }

 .cert-grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .skills-grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .services-preview__grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .services-preview__grid--6 {
 grid-template-columns: repeat(2, 1fr);
 }

 .contact-page__layout {
 grid-template-columns: 1fr;
 }

 .connect-cards {
 grid-template-columns: repeat(2, 1fr);
 }

 .fiverr-grid {
 grid-template-columns: 1fr;
 }
}

@media (max-width: 768px) {
 .case-study__results {
 grid-template-columns: 1fr;
 gap: 8px;
 }

 .case-study__body {
 padding: 28px;
 }

 .cert-grid,
 .skills-grid,
 .services-preview__grid {
 grid-template-columns: 1fr;
 }

 .connect-cards {
 grid-template-columns: 1fr;
 }

 .hero-eagle {
 width: 80px;
 height: 80px;
 top: -4%;
 }
}

/* ============================================================
 Utility Classes (no inline styles - WordPress-friendly)
 ============================================================ */
.contact__info .personal-quote {
 margin: 24px 0 0;
 text-align: left;
}

.contact__social-block {
 margin-top: 28px;
}

.section--compact {
 padding: 48px 0;
}

.section--flush-top {
 padding-top: 0;
}

.section--alt {
 background: rgba(255, 255, 255, 0.02);
}

.btn-group {
 display: flex;
 flex-wrap: wrap;
 gap: 12px;
 justify-content: center;
}

.contact-form__title {
 font-size: 1.375rem;
 margin-bottom: 24px;
}

.map-placeholder--spaced {
 margin-top: 32px;
}

.service-card__list {
 margin: 16px 0;
 font-size: 0.875rem;
 color: var(--text-secondary);
 list-style: none;
}

.service-card__list li {
 padding: 4px 0;
}

.service-card__list li::before {
 content: '✓ ';
 color: var(--accent-primary);
}

/* Skill bar fill levels - use data-fill attribute instead of inline styles */
.skill-bar[data-fill="95"] { --fill: 95%; }
.skill-bar[data-fill="92"] { --fill: 92%; }
.skill-bar[data-fill="90"] { --fill: 90%; }
.skill-bar[data-fill="88"] { --fill: 88%; }
.skill-bar[data-fill="87"] { --fill: 87%; }
.skill-bar[data-fill="85"] { --fill: 85%; }

/* ============================================================
 Brand Statements (About Page)
 ============================================================ */
.brand-statements {
 margin: 28px 0 24px;
}

.brand-statement--featured {
 margin: 0 0 20px;
 padding: 20px 24px;
 background: rgba(0, 212, 255, 0.06);
 border-left: 3px solid var(--accent-primary);
 border-radius: 0 var(--radius-md) var(--radius-md) 0;
}

.brand-statement--featured p {
 font-size: 1.125rem;
 font-weight: 600;
 font-style: italic;
 color: var(--text-primary);
 line-height: 1.5;
}

.brand-statements__list {
 display: flex;
 flex-wrap: wrap;
 gap: 12px;
}

.brand-statement {
 padding: 10px 18px;
 font-size: 0.875rem;
 font-weight: 500;
 color: var(--text-secondary);
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: 50px;
 transition: all var(--transition);
}

.brand-statement:hover {
 color: var(--accent-primary);
 border-color: var(--border-hover);
}

.form-input--error {
 border-color: #ef4444;
}

.hero__tagline--typing.is-typing {
 border-right: 2px solid var(--accent-primary);
 padding-right: 4px;
}

/* Solo section header - single heading, no label */
.section__header--solo {
 margin-bottom: 48px;
}

.section__header--solo .section__heading {
 margin-bottom: 0;
}

/* ============================================================
 Mobile & Touch Optimization (premium responsive polish)
 ============================================================ */
html {
 overflow-x: hidden;
}

img,
video {
 max-width: 100%;
 height: auto;
}

.hero__tagline {
 word-break: break-word;
 hyphens: auto;
}

.page-hero__title,
.section__heading,
.hero__heading {
 overflow-wrap: break-word;
}

.form-input,
.form-select,
.form-textarea {
 font-size: max(16px, 1rem);
}

.navbar__toggle {
 min-width: 44px;
 min-height: 44px;
 align-items: center;
 justify-content: center;
}

.btn {
 min-height: 44px;
}

.testimonials__arrow {
 min-width: 44px;
 min-height: 44px;
}

.case-study__image-wrap {
 aspect-ratio: 16 / 10;
 min-height: auto;
}

@media (max-width: 768px) {
 .case-study__image-wrap {
 min-height: 220px;
 }

 .container {
 padding: 0 20px;
 }

 .hero {
 padding-bottom: 60px;
 }

 .hero__tagline {
 font-size: 0.75rem;
 line-height: 1.7;
 }

 .about__grid {
 gap: 36px;
 }

 .brand-statements__list {
 justify-content: center;
 }

 .brand-statement--featured {
 text-align: left;
 }

 .contact-page__layout {
 gap: 32px;
 }

 .map-placeholder {
 height: 260px;
 }

 .marquee-section {
 padding: 32px 0;
 }

 .marquee__badge {
 padding: 8px 18px;
 font-size: 0.8125rem;
 }

 .marquee__group {
 gap: 12px;
 }

 .testimonials__controls {
 gap: 12px;
 }

 .case-study__title {
 font-size: 1.25rem;
 }

 .case-study__industry {
 bottom: 12px;
 left: 12px;
 }

 .modal__content {
 padding: 28px 20px;
 margin: 16px;
 }

 .modal__content--report {
 max-width: 100%;
 }

 .page-hero {
 padding-bottom: 60px;
 }
}

@media (max-width: 480px) {
 .container {
 padding: 0 16px;
 }

 .section {
 padding: 56px 0;
 }

 .stats__item {
 padding: 16px 8px;
 }

 .stats__number {
 font-size: 1.75rem;
 }

 .brand-statement--featured p {
 font-size: 1rem;
 }

 .service-card,
 .feature-card,
 .contact__form {
 padding: 24px 20px;
 }

 .cta-banner__inner {
 padding: 40px 20px;
 }

 .faq__question {
 padding: 18px 16px;
 font-size: 0.9375rem;
 }

 .faq__answer p {
 padding: 0 16px 18px;
 }
}

/* ============================================================
 Services Hub + Photo Hero + Trust Band
 ============================================================ */
.service-hero--photo {
 background: var(--bg-primary);
}

.service-hero__mesh {
 position: absolute;
 inset: 0;
 background-image:
 linear-gradient(rgba(0, 212, 255, 0.03) 1px, transparent 1px),
 linear-gradient(90deg, rgba(0, 212, 255, 0.03) 1px, transparent 1px);
 background-size: 48px 48px;
 mask-image: radial-gradient(ellipse 80% 70% at 50% 50%, black 20%, transparent 75%);
 pointer-events: none;
}

.service-hero__particles {
 position: absolute;
 inset: 0;
 pointer-events: none;
 overflow: hidden;
}

.service-hero__particle {
 position: absolute;
 width: 4px;
 height: 4px;
 border-radius: 50%;
 background: var(--accent-primary);
 opacity: 0.4;
 animation: particleDrift 12s ease-in-out infinite;
}

.service-hero__particle:nth-child(1) { top: 20%; left: 15%; animation-delay: 0s; }
.service-hero__particle:nth-child(2) { top: 60%; right: 20%; animation-delay: -4s; background: var(--accent-secondary); }
.service-hero__particle:nth-child(3) { bottom: 25%; left: 40%; animation-delay: -8s; width: 6px; height: 6px; }

@keyframes particleDrift {
 0%, 100% { transform: translate(0, 0); opacity: 0.3; }
 50% { transform: translate(12px, -18px); opacity: 0.6; }
}

.service-hero__content {
 max-width: 600px;
}

.service-hero__photo-wrap {
 position: relative;
 border-radius: var(--radius-lg);
 overflow: visible;
}

.service-hero__photo-glow {
 position: absolute;
 inset: -8%;
 background: linear-gradient(135deg, rgba(0, 212, 255, 0.25), rgba(124, 58, 237, 0.2));
 filter: blur(40px);
 border-radius: var(--radius-lg);
 z-index: 0;
 animation: serviceHeroBlob 10s ease-in-out infinite;
}

.service-hero__photo {
 position: relative;
 z-index: 1;
 width: 100%;
 height: auto;
 min-height: 340px;
 object-fit: cover;
 border-radius: var(--radius-lg);
 border: 1px solid rgba(0, 212, 255, 0.2);
 box-shadow: 0 24px 64px rgba(0, 0, 0, 0.45), 0 0 40px rgba(0, 212, 255, 0.08);
}

.service-hero__photo-card {
 position: absolute;
 z-index: 2;
 padding: 10px 16px;
 border-radius: var(--radius-md);
 background: rgba(255, 255, 255, 0.06);
 backdrop-filter: blur(16px);
 -webkit-backdrop-filter: blur(16px);
 border: 1px solid rgba(0, 212, 255, 0.2);
 box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
 font-size: 0.8125rem;
 font-weight: 600;
 color: var(--text-primary);
 animation: shapeFloat 5s ease-in-out infinite;
}

.service-hero__photo-card--1 { top: 8%; right: -4%; animation-delay: 0s; }
.service-hero__photo-card--2 { bottom: 18%; left: -6%; animation-delay: -1.5s; }
.service-hero__photo-card--3 { top: 45%; right: -8%; animation-delay: -3s; font-size: 0.75rem; color: var(--accent-primary); }

.content-hero__portfolio {
 position: relative;
 z-index: 1;
 border-radius: var(--radius-lg);
 overflow: hidden;
 border: 1px solid rgba(0, 212, 255, 0.24);
 box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45), 0 0 36px rgba(0, 212, 255, 0.1);
 background: var(--bg-card);
}

.content-hero__portfolio img {
 display: block;
 width: 100%;
 min-height: 340px;
 object-fit: cover;
 object-position: top center;
 filter: saturate(0.92) contrast(1.04) brightness(0.88);
}

.content-hero__portfolio::after {
 content: '';
 position: absolute;
 inset: 0;
 background: linear-gradient(165deg, rgba(11, 18, 32, 0.72) 0%, rgba(124, 58, 237, 0.22) 48%, rgba(11, 18, 32, 0.55) 100%);
 pointer-events: none;
}

.content-hero__portfolio-label {
 position: absolute;
 left: 16px;
 bottom: 16px;
 z-index: 2;
 padding: 8px 14px;
 border-radius: 999px;
 font-size: 0.75rem;
 font-weight: 600;
 color: var(--text-primary);
 background: rgba(11, 18, 32, 0.82);
 border: 1px solid rgba(0, 212, 255, 0.35);
 backdrop-filter: blur(8px);
}

.service-trust {
 padding: 48px 0;
 background: var(--bg-secondary);
 border-bottom: 1px solid var(--border);
}

.service-trust__label {
 text-align: center;
 font-size: 0.875rem;
 font-weight: 500;
 color: var(--text-muted);
 margin-bottom: 28px;
 letter-spacing: 0.02em;
}

.service-trust__grid {
 max-width: 900px;
 margin: 0 auto;
}

.features__grid--4 {
 grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1200px) {
 .features__grid--4 {
 grid-template-columns: repeat(2, 1fr);
 }
}

@media (max-width: 576px) {
 .features__grid--4 {
 grid-template-columns: 1fr;
 }
}

.process-timeline--4 .process-step:last-child::after {
 display: none;
}

.cta-banner--premium {
 text-align: center;
}

.cta-banner--premium .section__label {
 display: block;
 margin-bottom: 12px;
}

.cta-banner__actions {
 display: flex;
 flex-wrap: wrap;
 gap: 16px;
 justify-content: center;
 margin-top: 24px;
}

.page-hero--services {
 position: relative;
 padding: calc(var(--nav-stack) + 64px) 0 56px;
 background: var(--bg-secondary);
 border-bottom: 1px solid var(--border);
 overflow: hidden;
 text-align: center;
}

.page-hero__inner {
 max-width: 720px;
 margin: 0 auto;
}

.page-hero__title {
 font-size: clamp(2rem, 5vw, 3rem);
 font-weight: 700;
 line-height: 1.15;
 margin-bottom: 16px;
}

.page-hero__desc {
 font-size: 1.0625rem;
 color: var(--text-muted);
 line-height: 1.7;
}

.service-hub-card {
 padding: 32px;
 border-radius: var(--radius-lg);
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--border);
 transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
 display: flex;
 flex-direction: column;
 gap: 16px;
}

.service-hub-card:hover {
 transform: translateY(-4px);
 border-color: rgba(0, 212, 255, 0.3);
 box-shadow: 0 16px 48px rgba(0, 0, 0, 0.3), 0 0 24px rgba(0, 212, 255, 0.08);
}

.service-hub-card__icon {
 width: 52px;
 height: 52px;
 border-radius: var(--radius-md);
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid rgba(0, 212, 255, 0.15);
 display: flex;
 align-items: center;
 justify-content: center;
}

.service-hub-card__icon svg {
 width: 26px;
 height: 26px;
 color: var(--accent-primary);
}

.service-hub-card__title {
 font-size: 1.25rem;
 font-weight: 600;
}

.service-hub-card__desc {
 font-size: 0.9375rem;
 color: var(--text-muted);
 line-height: 1.65;
 flex: 1;
}

.service-hub-card__btn {
 align-self: flex-start;
}

.service-hub-spotlight {
 max-width: 760px;
 margin: 0 auto;
}

.service-hub-card--spotlight {
 text-align: center;
 align-items: center;
 padding: 40px 36px;
}

.service-hub-card--spotlight .service-hub-card__icon {
 margin: 0 auto;
}

.service-hub-card--spotlight .service-hub-card__btn {
 align-self: center;
}

@media (max-width: 768px) {
 .service-hero__photo-card--1,
 .service-hero__photo-card--3 {
 right: 2%;
 }

 .service-hero__photo-card--2 {
 left: 2%;
 }

 .cta-banner__actions {
 flex-direction: column;
 align-items: stretch;
 }

 .cta-banner__actions .btn {
 width: 100%;
 text-align: center;
 }
}

/* ---------- Proof & Review Screenshots ---------- */
.proof-grid {
 display: grid;
 gap: 24px;
}

.proof-grid--2 {
 grid-template-columns: repeat(2, 1fr);
}

.proof-shot {
 margin: 0;
}

.proof-shot__frame {
 position: relative;
 border-radius: var(--radius-lg);
 overflow: hidden;
 border: 1px solid rgba(0, 212, 255, 0.22);
 background: var(--bg-card);
 box-shadow: 0 20px 50px rgba(0, 0, 0, 0.4), 0 0 30px rgba(124, 58, 237, 0.08);
}

.proof-shot__frame img {
 display: block;
 width: 100%;
 height: auto;
 filter: brightness(0.82) contrast(1.08) saturate(0.85);
}

.proof-shot__overlay {
 position: absolute;
 inset: 0;
 background: linear-gradient(165deg, rgba(11, 18, 32, 0.55) 0%, rgba(124, 58, 237, 0.18) 50%, rgba(11, 18, 32, 0.45) 100%);
 pointer-events: none;
}

.proof-shot__caption {
 margin-top: 12px;
 font-size: 0.8125rem;
 color: var(--text-secondary);
 text-align: center;
}

.proof-section {
 background: linear-gradient(180deg, transparent, rgba(124, 58, 237, 0.04), transparent);
}

.reviews-proof {
 margin-top: 48px;
 padding-top: 40px;
 border-top: 1px solid var(--border);
}

.reviews-proof__title {
 text-align: center;
 font-size: 1.125rem;
 font-weight: 600;
 margin-bottom: 28px;
 color: var(--text-primary);
}

.proof-shot--review .proof-shot__frame img {
 filter: brightness(0.78) contrast(1.1) saturate(0.8);
}

@media (max-width: 992px) {
 .proof-grid--2 {
 grid-template-columns: 1fr;
 }
}

/* ============================================================
 Blog (Blog)
 ============================================================ */
.page-hero--insights {
 padding: calc(var(--nav-stack) + 48px) 0 56px;
}

.page-hero--insights .page-hero__dots {
 opacity: 0.16;
}

.insights-hub {
 padding-top: 48px;
}

.insights-filter {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 justify-content: center;
 margin-bottom: 40px;
}

.insights-filter__btn {
 padding: 8px 18px;
 font-size: 0.8125rem;
 font-weight: 500;
 font-family: inherit;
 color: var(--text-secondary);
 background: rgba(255, 255, 255, 0.04);
 border: 1px solid var(--border);
 border-radius: 999px;
 cursor: pointer;
 transition: color 0.2s, border-color 0.2s, background 0.2s, box-shadow 0.2s;
}

.insights-filter__btn:hover {
 color: var(--text-primary);
 border-color: rgba(0, 212, 255, 0.35);
}

.insights-filter__btn.is-active {
 color: var(--text-primary);
 background: rgba(0, 212, 255, 0.1);
 border-color: rgba(0, 212, 255, 0.45);
 box-shadow: 0 0 20px rgba(0, 212, 255, 0.12);
}

.insights-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 28px;
}

.insight-card {
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 overflow: hidden;
 transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s;
}

.insight-card:hover {
 transform: translateY(-4px);
 border-color: rgba(0, 212, 255, 0.35);
 box-shadow: 0 20px 48px rgba(0, 0, 0, 0.35), 0 0 32px rgba(0, 212, 255, 0.08);
}

.insight-card__link {
 display: flex;
 flex-direction: column;
 height: 100%;
 color: inherit;
 text-decoration: none;
}

.insight-card__thumb {
 position: relative;
 aspect-ratio: 16 / 10;
 display: flex;
 align-items: flex-end;
 padding: 16px;
 overflow: hidden;
}

.insight-card__thumb::after {
 content: '';
 position: absolute;
 inset: 0;
 background: linear-gradient(180deg, transparent 40%, rgba(11, 18, 32, 0.85) 100%);
 pointer-events: none;
}

.insight-card__thumb-label {
 position: relative;
 z-index: 1;
 font-size: 0.6875rem;
 font-weight: 600;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 color: rgba(255, 255, 255, 0.85);
}

.insight-card__thumb--photo {
 padding: 0;
}

.insight-card__thumb--photo img {
 position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
 filter: brightness(0.78) contrast(1.08) saturate(0.85);
}

.insight-card__thumb--photo .insight-card__thumb-label {
 position: absolute;
 bottom: 16px;
 left: 16px;
 z-index: 2;
}
.insight-card__thumb--2 { background: linear-gradient(135deg, #1a1040 0%, #2d1b69 50%, rgba(124, 58, 237, 0.3) 100%); }
.insight-card__thumb--3 { background: linear-gradient(135deg, #0a2e2e 0%, #134e4e 50%, rgba(0, 212, 255, 0.2) 100%); }
.insight-card__thumb--4 { background: linear-gradient(135deg, #2e1a0a 0%, #5c3d1e 50%, rgba(124, 58, 237, 0.2) 100%); }
.insight-card__thumb--5 { background: linear-gradient(135deg, #1a2234 0%, #0d2137 50%, rgba(0, 212, 255, 0.22) 100%); }
.insight-card__thumb--6 { background: linear-gradient(135deg, #2d1b69 0%, #1a1040 50%, rgba(0, 212, 255, 0.18) 100%); }

.insight-card__body {
 display: flex;
 flex-direction: column;
 flex: 1;
 padding: 22px 22px 24px;
}

.insight-card__meta {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 8px 12px;
 margin-bottom: 12px;
 font-size: 0.75rem;
 color: var(--text-secondary);
}

.insight-card__tag {
 padding: 3px 10px;
 font-weight: 600;
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid rgba(0, 212, 255, 0.2);
 border-radius: 999px;
}

.insight-card__title {
 font-size: 1.125rem;
 font-weight: 600;
 line-height: 1.35;
 margin-bottom: 10px;
 color: var(--text-primary);
 transition: color 0.2s;
}

.insight-card:hover .insight-card__title {
 color: var(--accent-primary);
}

.insight-card__excerpt {
 font-size: 0.875rem;
 line-height: 1.65;
 color: var(--text-secondary);
 margin-bottom: 16px;
 flex: 1;
}

.insight-card__cta {
 font-size: 0.8125rem;
 font-weight: 600;
 color: var(--accent-primary);
 margin-top: auto;
}

.insight-card--featured {
 margin-bottom: 36px;
}

.insight-card--featured .insight-card__link {
 flex-direction: row;
}

.insight-card--featured .insight-card__thumb {
 flex: 0 0 42%;
 aspect-ratio: auto;
 min-height: 260px;
}

.insight-card--featured .insight-card__body {
 flex: 1;
 padding: 32px 36px;
 justify-content: center;
}

.insight-card--featured .insight-card__title {
 font-size: clamp(1.25rem, 2.5vw, 1.625rem);
}

.insight-card--featured .insight-card__excerpt {
 font-size: 0.9375rem;
 max-width: 560px;
}

 .insights-empty {
 text-align: center;
 color: var(--text-secondary);
 padding: 48px 20px;
 font-size: 0.9375rem;
}

.insights-empty-state {
 max-width: 520px;
 margin: 0 auto;
 padding: 56px 32px;
 text-align: center;
 background: var(--bg-card);
 border: 1px solid var(--border);
 border-radius: var(--radius-lg);
 box-shadow: 0 20px 48px rgba(0, 0, 0, 0.3), 0 0 32px rgba(0, 212, 255, 0.06);
}

.insights-empty-state__icon svg {
 width: 72px;
 height: 72px;
 margin-bottom: 20px;
 opacity: 0.85;
}

.insights-empty-state__title {
 font-size: 1.375rem;
 font-weight: 600;
 margin-bottom: 12px;
 color: var(--text-primary);
}

.insights-empty-state__text {
 font-size: 0.9375rem;
 line-height: 1.7;
 color: var(--text-secondary);
}

.insights-empty-state__text a {
 color: var(--accent-primary);
 text-decoration: underline;
 text-underline-offset: 3px;
}

.insight-card.is-hidden,
.insight-card--featured.is-hidden {
 display: none;
}

/* Article (single post) */
.article-hero {
 position: relative;
 padding: calc(var(--nav-stack) + 40px) 0 32px;
 overflow: hidden;
}

.article-hero__inner {
 max-width: 780px;
}

.article-hero__breadcrumb {
 font-size: 0.8125rem;
 color: var(--text-secondary);
 margin-bottom: 20px;
}

.article-hero__breadcrumb a {
 color: var(--text-secondary);
 text-decoration: none;
 transition: color 0.2s;
}

.article-hero__breadcrumb a:hover {
 color: var(--accent-primary);
}

.article-hero__title {
 font-size: clamp(1.75rem, 4vw, 2.5rem);
 font-weight: 700;
 line-height: 1.15;
 letter-spacing: -0.02em;
}

.article {
 padding: 0 0 64px;
}

.article__content {
 max-width: 720px;
 margin: 0 auto;
}

.article__meta {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 10px 16px;
 margin-bottom: 16px;
 font-size: 0.8125rem;
 color: var(--text-secondary);
}

.article__meta-tag {
 padding: 4px 12px;
 font-weight: 600;
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid rgba(0, 212, 255, 0.22);
 border-radius: 999px;
}

.article__prose {
 font-size: 1rem;
 line-height: 1.8;
 color: var(--text-secondary);
}

.article__prose > * + * {
 margin-top: 1.25em;
}

.article__prose h2 {
 font-size: 1.375rem;
 font-weight: 600;
 color: var(--text-primary);
 margin-top: 2em;
 margin-bottom: 0.75em;
 line-height: 1.3;
}

.article__prose h3 {
 font-size: 1.125rem;
 font-weight: 600;
 color: var(--text-primary);
 margin-top: 1.5em;
}

.article__prose ul,
.article__prose ol {
 padding-left: 1.25em;
}

.article__prose li + li {
 margin-top: 0.5em;
}

.article__prose strong {
 color: var(--text-primary);
 font-weight: 600;
}

.article__prose a {
 color: var(--accent-primary);
 text-decoration: underline;
 text-underline-offset: 3px;
}

.article__prose blockquote {
 margin: 1.5em 0;
 padding: 16px 20px;
 border-left: 3px solid var(--accent-primary);
 background: rgba(0, 212, 255, 0.05);
 border-radius: 0 var(--radius-md) var(--radius-md) 0;
 font-style: italic;
 color: var(--text-primary);
}

.article-figure {
 margin: 2em 0;
 border-radius: var(--radius-lg);
 overflow: hidden;
 border: 1px solid rgba(0, 212, 255, 0.22);
 background: var(--bg-card);
 box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35), 0 0 24px rgba(124, 58, 237, 0.06);
}

.article-figure__frame {
 position: relative;
 overflow: hidden;
}

.article-figure__frame img {
 display: block;
 width: 100%;
 height: auto;
 aspect-ratio: 16 / 9;
 object-fit: cover;
 filter: brightness(0.82) contrast(1.08) saturate(0.88);
}

.article-figure__overlay {
 position: absolute;
 inset: 0;
 background: linear-gradient(165deg, rgba(11, 18, 32, 0.35) 0%, rgba(124, 58, 237, 0.12) 50%, rgba(11, 18, 32, 0.25) 100%);
 pointer-events: none;
}

.article-figure figcaption {
 padding: 12px 16px;
 font-size: 0.8125rem;
 color: var(--text-secondary);
 text-align: center;
 border-top: 1px solid var(--border);
 background: rgba(255, 255, 255, 0.02);
}

.related-insights {
 padding: 56px 0 0;
 margin-top: 56px;
 border-top: 1px solid var(--border);
}

.related-insights__heading {
 font-size: 1.25rem;
 font-weight: 600;
 margin-bottom: 24px;
 text-align: center;
}

.related-insights__grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 24px;
}

.related-insights .insight-card__thumb {
 aspect-ratio: 16 / 9;
 min-height: 120px;
}

.related-insights .insight-card__body {
 padding: 18px 20px 20px;
}

.related-insights .insight-card__title {
 font-size: 1rem;
}

@media (max-width: 992px) {
 .insights-grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .insight-card--featured .insight-card__link {
 flex-direction: column;
 }

 .insight-card--featured .insight-card__thumb {
 flex: none;
 width: 100%;
 min-height: 200px;
 }

 .insight-card--featured .insight-card__body {
 padding: 24px;
 }

 .related-insights__grid {
 grid-template-columns: 1fr;
 }
}

@media (max-width: 640px) {
 .insights-grid {
 grid-template-columns: 1fr;
 }

 .insights-filter__btn {
 font-size: 0.75rem;
 padding: 7px 14px;
 }
}

/* About hero floating stats */
.about-hero__float {
 position: absolute;
 z-index: 3;
 animation: floatY 5s ease-in-out infinite;
}

.about-hero__float--1 {
 top: 6%;
 right: -4%;
 animation-delay: 0s;
}

.about-hero__float--2 {
 bottom: 10%;
 left: -6%;
 animation-delay: 1.2s;
}

.about-hero__float--3 {
 top: 42%;
 right: -10%;
 animation-delay: 2.4s;
}

@keyframes floatY {
 0%, 100% { transform: translateY(0); }
 50% { transform: translateY(-8px); }
}

/* Pricing page */
.pricing-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 24px;
}

.pricing-card {
 position: relative;
 display: flex;
 flex-direction: column;
 padding: 32px 28px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(16px);
 transition: all var(--transition);
}

.pricing-card:hover {
 border-color: var(--border-hover);
 transform: translateY(-4px);
 box-shadow: var(--shadow-card);
}

.pricing-card--featured {
 border-color: rgba(0, 212, 255, 0.45);
 background: linear-gradient(160deg, rgba(0, 212, 255, 0.08), rgba(124, 58, 237, 0.06));
}

.pricing-card__badge {
 position: absolute;
 top: 16px;
 right: 16px;
 font-size: 0.625rem;
 font-weight: 600;
 letter-spacing: 0.06em;
 text-transform: uppercase;
 padding: 4px 10px;
 border-radius: 100px;
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.12);
 border: 1px solid rgba(0, 212, 255, 0.25);
}

.pricing-card__name {
 font-size: 1.125rem;
 font-weight: 600;
 margin-bottom: 8px;
}

.pricing-card__price {
 font-size: 2rem;
 font-weight: 700;
 line-height: 1.1;
 margin-bottom: 4px;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 -webkit-background-clip: text;
 background-clip: text;
 color: transparent;
}

.pricing-card__price-note {
 font-size: 0.8125rem;
 color: var(--text-secondary);
 margin-bottom: 20px;
}

.pricing-card__desc {
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.65;
 margin-bottom: 20px;
 flex-grow: 1;
}

.pricing-card__features {
 list-style: none;
 margin: 0 0 24px;
 padding: 0;
 display: flex;
 flex-direction: column;
 gap: 10px;
}

.pricing-card__features li {
 font-size: 0.8125rem;
 color: var(--text-secondary);
 padding-left: 22px;
 position: relative;
}

.pricing-card__features li::before {
 content: '';
 position: absolute;
 left: 0;
 top: 7px;
 width: 8px;
 height: 8px;
 border-radius: 50%;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
}

.payment-methods {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 20px;
 max-width: 720px;
 margin: 0 auto;
}

.payment-method {
 padding: 24px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 text-align: center;
}

.payment-method__icon {
 font-size: 1.75rem;
 margin-bottom: 8px;
}

.payment-method__label {
 display: block;
 font-size: 0.75rem;
 font-weight: 600;
 letter-spacing: 0.06em;
 text-transform: uppercase;
 color: var(--text-secondary);
 margin-bottom: 6px;
}

.payment-method__value {
 font-size: 0.9375rem;
 font-weight: 500;
 color: var(--accent-primary);
 word-break: break-all;
}

.payment-method__sub {
 display: block;
 margin-top: 4px;
 font-size: 0.8125rem;
 color: var(--text-secondary);
}

.payment-note {
 max-width: 640px;
 margin: 24px auto 0;
 text-align: center;
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.65;
}

.payment-checkout[hidden] {
 display: none !important;
}

/* Buy Now checkout modal */
.checkout-modal {
 position: fixed;
 inset: 0;
 z-index: 9999;
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 24px 16px;
}

.checkout-modal[hidden] {
 display: none !important;
}

.checkout-modal__backdrop {
 position: absolute;
 inset: 0;
 background: rgba(5, 10, 20, 0.82);
 backdrop-filter: blur(6px);
}

.checkout-modal__panel {
 position: relative;
 width: min(100%, 560px);
 max-height: min(90vh, 820px);
 overflow-y: auto;
 padding: 28px 24px 32px;
 background: linear-gradient(160deg, var(--bg-card), var(--bg-secondary));
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 box-shadow: 0 32px 80px rgba(0, 0, 0, 0.55), 0 0 40px rgba(0, 212, 255, 0.08);
}

.checkout-modal__close {
 position: absolute;
 top: 14px;
 right: 16px;
 width: 36px;
 height: 36px;
 border: none;
 border-radius: 50%;
 background: rgba(255, 255, 255, 0.06);
 color: var(--text-primary);
 font-size: 1.5rem;
 line-height: 1;
 cursor: pointer;
 transition: background var(--transition);
}

.checkout-modal__close:hover {
 background: rgba(255, 255, 255, 0.12);
}

.checkout-modal__header {
 text-align: center;
 margin-bottom: 24px;
 padding-right: 28px;
}

.checkout-modal__title {
 font-size: 1.375rem;
 font-weight: 700;
 margin: 8px 0 10px;
}

.checkout-modal__package {
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.6;
 margin: 0;
}

.checkout-modal__payments {
 margin-bottom: 20px;
}

.checkout-modal__form-wrap {
 margin: 0;
 padding: 20px;
 max-width: 100%;
}

/* About profile photo frame */
.about-profile-frame {
 position: relative;
 width: 100%;
 max-width: 400px;
 margin: 0 auto;
 padding: 3px;
 border-radius: calc(var(--radius-xl) + 2px);
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 box-shadow:
  0 24px 56px rgba(0, 0, 0, 0.4),
  0 0 48px rgba(0, 212, 255, 0.12);
}

.about-profile-frame__ring {
 position: absolute;
 inset: -8px;
 border-radius: calc(var(--radius-xl) + 10px);
 border: 1px solid rgba(0, 212, 255, 0.15);
 pointer-events: none;
}

.about-profile-frame__inner {
 border-radius: var(--radius-xl);
 overflow: hidden;
 background: var(--bg-card);
 line-height: 0;
}

.about-profile-frame__img {
 display: block;
 width: 100%;
 height: auto;
 filter: none;
 -webkit-filter: none;
 object-fit: cover;
 object-position: center;
}

.order-details {
 max-width: 640px;
 margin: 40px auto 0;
 padding: 28px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
}

.order-details__heading {
 font-size: 1.25rem;
 font-weight: 600;
 margin-bottom: 8px;
}

.order-details__desc {
 font-size: 0.875rem;
 color: var(--text-secondary);
 line-height: 1.65;
 margin-bottom: 24px;
}

.order-details__form {
 max-width: 100%;
}

.buy-now-btn {
 cursor: pointer;
 font-family: inherit;
}

.form-input--file {
 padding: 10px 12px;
 cursor: pointer;
}

.form-input--file::file-selector-button {
 margin-right: 12px;
 padding: 8px 14px;
 border: none;
 border-radius: var(--radius-sm);
 background: rgba(0, 212, 255, 0.15);
 color: var(--accent-primary);
 font-family: inherit;
 font-size: 0.8125rem;
 font-weight: 600;
 cursor: pointer;
}

.form-hint {
 margin: 6px 0 0;
 font-size: 0.75rem;
 color: var(--text-secondary);
 line-height: 1.5;
}

.form-error {
 margin-top: 12px;
 font-size: 0.8125rem;
 color: #f87171;
 text-align: center;
 line-height: 1.5;
}

.payment-screenshot-preview {
 display: flex;
 align-items: center;
 gap: 12px;
 margin-top: 12px;
 padding: 10px;
 background: rgba(255, 255, 255, 0.03);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-md);
}

.payment-screenshot-preview img {
 width: 72px;
 height: 72px;
 object-fit: cover;
 border-radius: var(--radius-sm);
 border: 1px solid var(--glass-border);
}

.payment-screenshot-preview__name {
 font-size: 0.8125rem;
 color: var(--text-secondary);
 word-break: break-all;
}

/* ============================================================
 Homepage Hero Visual — premium scene
 ============================================================ */
.home-hero__scene {
 position: relative;
 width: min(100%, 420px);
 min-height: 400px;
 margin: 0 auto;
 display: flex;
 align-items: center;
 justify-content: center;
}

.home-hero__glow {
 position: absolute;
 inset: 8% 0;
 background:
  radial-gradient(ellipse 70% 55% at 50% 45%, rgba(0, 212, 255, 0.18), transparent 70%),
  radial-gradient(ellipse 50% 40% at 30% 60%, rgba(124, 58, 237, 0.14), transparent 70%);
 pointer-events: none;
 z-index: 0;
 animation: homeGlowPulse 6s ease-in-out infinite;
}

@keyframes homeGlowPulse {
 0%, 100% { opacity: 1; transform: scale(1); }
 50% { opacity: 0.85; transform: scale(1.04); }
}

.home-hero__grid-bg {
 position: absolute;
 inset: 0;
 background-image: radial-gradient(rgba(0, 212, 255, 0.12) 1px, transparent 1px);
 background-size: 22px 22px;
 opacity: 0.35;
 mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, #000 20%, transparent 75%);
 pointer-events: none;
 z-index: 0;
}

.seo-illustration--home {
 max-width: 400px;
 z-index: 2;
}

.seo-illustration--home .seo-illustration__core {
 box-shadow:
  0 0 40px rgba(0, 212, 255, 0.25),
  0 0 60px rgba(124, 58, 237, 0.12),
  inset 0 0 30px rgba(0, 212, 255, 0.08);
}

.seo-illustration--home .seo-illustration__label {
 font-size: 1.75rem;
}

.hero-eagle--home {
 top: -8%;
 width: 112px;
 height: 112px;
 filter: drop-shadow(0 0 32px rgba(0, 212, 255, 0.55)) drop-shadow(0 0 16px rgba(124, 58, 237, 0.35));
}

.home-hero__chart-card {
 position: absolute;
 top: 2%;
 left: -4%;
 z-index: 4;
 padding: 12px 16px 10px;
 min-width: 148px;
 background: rgba(17, 24, 39, 0.88);
 backdrop-filter: blur(14px);
 border: 1px solid rgba(0, 212, 255, 0.28);
 border-radius: var(--radius-md);
 box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
 animation: floatY 5s ease-in-out infinite;
}

.home-hero__chart-label {
 display: block;
 font-size: 0.625rem;
 font-weight: 600;
 letter-spacing: 0.08em;
 text-transform: uppercase;
 color: var(--text-secondary);
 margin-bottom: 6px;
}

.home-hero__chart {
 width: 100%;
 height: 36px;
 display: block;
}

.home-hero__chart-stat {
 display: block;
 margin-top: 4px;
 font-size: 1rem;
 font-weight: 700;
 background: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));
 -webkit-background-clip: text;
 background-clip: text;
 color: transparent;
}

.home-hero__badge {
 position: absolute;
 z-index: 4;
 padding: 10px 14px;
 background: rgba(17, 24, 39, 0.9);
 backdrop-filter: blur(12px);
 border: 1px solid rgba(0, 212, 255, 0.22);
 border-radius: var(--radius-md);
 box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
 text-align: center;
 animation: floatY 5s ease-in-out infinite;
}

.home-hero__badge-val {
 display: block;
 font-size: 1.0625rem;
 font-weight: 700;
 line-height: 1.2;
 background: linear-gradient(135deg, var(--accent-primary), #fff);
 -webkit-background-clip: text;
 background-clip: text;
 color: transparent;
}

.home-hero__badge-lbl {
 display: block;
 margin-top: 2px;
 font-size: 0.5625rem;
 font-weight: 600;
 letter-spacing: 0.06em;
 text-transform: uppercase;
 color: var(--text-secondary);
}

.home-hero__badge--1 {
 top: 18%;
 right: -8%;
 animation-delay: 0.4s;
 border-color: rgba(0, 212, 255, 0.35);
}

.home-hero__badge--2 {
 bottom: 14%;
 left: -10%;
 animation-delay: 1s;
}

.home-hero__badge--3 {
 top: 44%;
 right: -12%;
 animation-delay: 1.8s;
 border-color: rgba(124, 58, 237, 0.35);
}

.home-hero__badge--4 {
 bottom: 28%;
 right: -6%;
 animation-delay: 2.6s;
}

.home-hero__keywords {
 position: absolute;
 bottom: -2%;
 left: 50%;
 transform: translateX(-50%);
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 gap: 8px;
 z-index: 4;
 width: 110%;
}

.home-hero__keywords span {
 font-size: 0.6875rem;
 font-weight: 600;
 padding: 5px 12px;
 border-radius: 100px;
 color: var(--accent-primary);
 background: rgba(0, 212, 255, 0.1);
 border: 1px solid rgba(0, 212, 255, 0.22);
 white-space: nowrap;
}

@media (max-width: 992px) {
 .home-hero__scene {
 min-height: 360px;
 max-width: 340px;
 }

 .home-hero__badge--1 { right: -2%; }
 .home-hero__badge--2 { left: -2%; }
 .home-hero__badge--3 { right: -4%; }
 .home-hero__chart-card { left: 0; }
}

@media (max-width: 640px) {
 .home-hero__badge--3,
 .home-hero__badge--4 {
 display: none;
 }

 .hero-eagle--home {
 width: 88px;
 height: 88px;
 }
}

@media (max-width: 992px) {
 .pricing-grid {
 grid-template-columns: repeat(2, 1fr);
 }
}

@media (max-width: 640px) {
 .pricing-grid {
 grid-template-columns: 1fr;
 }

 .payment-methods {
 grid-template-columns: 1fr;
 }
}

/* ---------- Homepage CRO Sections ---------- */
.trust-bar {
 border-block: 1px solid var(--glass-border);
 background: rgba(255, 255, 255, 0.03);
 padding: 22px 0;
}

.trust-bar__grid {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 justify-content: center;
 gap: 18px 36px;
}

.trust-bar__item {
 display: inline-flex;
 align-items: center;
 gap: 10px;
 font-size: 0.875rem;
 color: var(--text-secondary);
 white-space: nowrap;
}

.trust-bar__icon {
 color: var(--accent-primary);
 font-size: 1rem;
 line-height: 1;
}

.trust-bar__icon--svg {
 display: inline-flex;
 align-items: center;
 justify-content: center;
}

.trust-bar__icon--svg svg {
 width: 18px;
 height: 18px;
}

.trust-bar__value {
 font-weight: 600;
 color: var(--text-primary);
}

.pain-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 20px;
}

.pain-card {
 padding: 28px 24px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 transition: transform var(--transition), border-color var(--transition), box-shadow var(--transition);
}

.pain-card:hover {
 transform: translateY(-4px);
 border-color: rgba(0, 212, 255, 0.35);
 box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
}

.pain-card__icon {
 width: 44px;
 height: 44px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: var(--radius-md);
 background: rgba(0, 212, 255, 0.1);
 color: var(--accent-primary);
 margin-bottom: 16px;
}

.pain-card__icon svg {
 width: 22px;
 height: 22px;
}

.pain-card__title {
 font-size: 1.0625rem;
 font-weight: var(--heading-weight);
 margin-bottom: 10px;
 color: var(--text-primary);
}

.pain-card__text {
 font-size: 0.875rem;
 line-height: 1.65;
 color: var(--text-secondary);
 margin: 0;
}

.solution-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 20px;
}

.solution-card {
 padding: 28px 24px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 transition: transform var(--transition), border-color var(--transition);
}

.solution-card:hover {
 transform: translateY(-3px);
 border-color: rgba(124, 58, 237, 0.35);
}

.solution-card__icon {
 width: 48px;
 height: 48px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: var(--radius-md);
 background: linear-gradient(135deg, rgba(0, 212, 255, 0.15), rgba(124, 58, 237, 0.15));
 color: var(--accent-primary);
 margin-bottom: 16px;
}

.solution-card__icon svg {
 width: 24px;
 height: 24px;
}

.solution-card__title {
 font-size: 1.0625rem;
 font-weight: 600;
 margin-bottom: 8px;
}

.solution-card__text {
 font-size: 0.875rem;
 line-height: 1.65;
 color: var(--text-secondary);
 margin: 0;
}

.home-cases__more {
 display: flex;
 justify-content: center;
 margin-top: 48px;
}

.home-cases__grid {
 display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 28px;
}

.home-case {
 display: grid;
 grid-template-columns: 200px 1fr;
 gap: 0;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 overflow: hidden;
 transition: border-color var(--transition), box-shadow var(--transition);
}

.home-case:hover {
 border-color: rgba(0, 212, 255, 0.3);
 box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28);
}

.home-case__media {
 position: relative;
 min-height: 220px;
}

.home-case__media img {
 width: 100%;
 height: 100%;
 object-fit: cover;
}

.home-case__industry {
 position: absolute;
 left: 12px;
 bottom: 12px;
 padding: 4px 10px;
 font-size: 0.6875rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.04em;
 background: rgba(11, 18, 32, 0.85);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-sm);
 color: var(--accent-primary);
}

.home-case__body {
 padding: 24px;
 display: flex;
 flex-direction: column;
 gap: 12px;
}

.home-case__title {
 font-size: 1.125rem;
 font-weight: 600;
 margin: 0;
}

.home-case__meta {
 font-size: 0.8125rem;
 color: var(--text-muted);
}

.home-case__challenge,
.home-case__result {
 font-size: 0.875rem;
 line-height: 1.6;
 color: var(--text-secondary);
 margin: 0;
}

.home-case__metrics {
 display: flex;
 flex-wrap: wrap;
 gap: 8px;
 margin-top: auto;
 padding-top: 8px;
}

.home-case__metric {
 padding: 6px 12px;
 font-size: 0.75rem;
 font-weight: 600;
 background: rgba(0, 212, 255, 0.08);
 border: 1px solid rgba(0, 212, 255, 0.2);
 border-radius: var(--radius-sm);
 color: var(--accent-primary);
}

.home-case__actions {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 margin-top: 8px;
}

.testimonial-card__badge {
 display: inline-flex;
 align-items: center;
 gap: 6px;
 margin-bottom: 12px;
 padding: 4px 10px;
 font-size: 0.6875rem;
 font-weight: 600;
 text-transform: uppercase;
 letter-spacing: 0.05em;
 color: #1dbf73;
 background: rgba(29, 191, 115, 0.12);
 border: 1px solid rgba(29, 191, 115, 0.25);
 border-radius: var(--radius-sm);
}

.testimonial-card__badge img {
 width: 14px;
 height: 14px;
}

.why-choose__grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 20px;
}

.why-choose__item {
 text-align: center;
 padding: 24px 16px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 transition: transform var(--transition);
}

.why-choose__item:hover {
 transform: translateY(-3px);
}

.why-choose__icon {
 width: 48px;
 height: 48px;
 margin: 0 auto 14px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: 50%;
 background: rgba(0, 212, 255, 0.1);
 color: var(--accent-primary);
}

.why-choose__icon svg {
 width: 22px;
 height: 22px;
}

.why-choose__title {
 font-size: 0.9375rem;
 font-weight: 600;
 margin-bottom: 6px;
}

.why-choose__text {
 font-size: 0.8125rem;
 line-height: 1.55;
 color: var(--text-secondary);
 margin: 0;
}

.home-about__grid {
 display: grid;
 grid-template-columns: 320px 1fr;
 gap: 48px;
 align-items: center;
}

.home-about__photo {
 margin: 0;
}

/* ---------- Professional Journey Timeline ---------- */
.journey-timeline {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 20px;
 position: relative;
 margin-top: 8px;
}

.journey-timeline::before {
 content: '';
 position: absolute;
 top: 52px;
 left: 12%;
 right: 12%;
 height: 2px;
 background: linear-gradient(90deg, var(--accent-primary), var(--accent-secondary));
 opacity: 0.35;
 z-index: 0;
}

.journey-milestone {
 position: relative;
 z-index: 1;
 padding: 28px 22px;
 background: var(--glass-bg);
 border: 1px solid var(--glass-border);
 border-radius: var(--radius-lg);
 text-align: center;
 transition: transform var(--transition), border-color var(--transition), box-shadow var(--transition);
}

.journey-milestone:hover {
 transform: translateY(-4px);
 border-color: rgba(0, 212, 255, 0.35);
 box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
}

.journey-milestone__icon {
 width: 48px;
 height: 48px;
 margin: 0 auto 14px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: 50%;
 background: linear-gradient(135deg, rgba(0, 212, 255, 0.15), rgba(124, 58, 237, 0.15));
 color: var(--accent-primary);
 border: 1px solid rgba(0, 212, 255, 0.2);
}

.journey-milestone__icon svg {
 width: 22px;
 height: 22px;
}

.journey-milestone__year {
 display: inline-block;
 font-size: 1.125rem;
 font-weight: 700;
 color: var(--accent-primary);
 margin-bottom: 12px;
 letter-spacing: 0.02em;
}

.journey-milestone__text {
 font-size: 0.875rem;
 line-height: 1.65;
 color: var(--text-secondary);
 margin: 0;
}

.cta-banner--final .cta-banner__heading {
 max-width: 720px;
 margin-inline: auto;
}

@media (max-width: 992px) {
 .pain-grid,
 .solution-grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .home-cases__grid {
 grid-template-columns: 1fr;
 }

 .home-case {
 grid-template-columns: 1fr;
 }

 .home-case__media {
 min-height: 180px;
 }

 .why-choose__grid {
 grid-template-columns: repeat(2, 1fr);
 }

 .home-about__grid {
 grid-template-columns: 1fr;
 text-align: center;
 }

 .journey-timeline {
 grid-template-columns: repeat(2, 1fr);
 }

 .journey-timeline::before {
 display: none;
 }

 .home-about__photo {
 max-width: 280px;
 margin-inline: auto;
 }
}

@media (max-width: 640px) {
 .pain-grid,
 .solution-grid,
 .why-choose__grid,
 .journey-timeline {
 grid-template-columns: 1fr;
 }

 .trust-bar__item {
 white-space: normal;
 justify-content: center;
 text-align: center;
 flex-direction: column;
 gap: 4px;
 min-width: 120px;
 }
}

/* ---------- Sticky Contact ---------- */
.sticky-contact {
 position: fixed;
 right: 24px;
 bottom: 24px;
 z-index: 999;
 width: 56px;
 height: 56px;
 display: flex;
 align-items: center;
 justify-content: center;
 border-radius: 50%;
 background: linear-gradient(135deg, #25D366, #128C7E);
 color: #fff;
 box-shadow: 0 8px 28px rgba(37, 211, 102, 0.45);
 border: 1px solid rgba(255, 255, 255, 0.2);
 transition: transform var(--anim-duration) var(--anim-easing), box-shadow var(--anim-duration) var(--anim-easing);
}

.sticky-contact svg {
 width: 28px;
 height: 28px;
}

.sticky-contact:hover {
 transform: translateY(-3px) scale(1.06);
 box-shadow: 0 12px 36px rgba(37, 211, 102, 0.55);
}

.sticky-contact.is-hidden {
 opacity: 0;
 pointer-events: none;
 transform: translateY(12px);
}

@media (max-width: 768px) {
 .sticky-contact {
 right: 16px;
 bottom: 16px;
 width: 52px;
 height: 52px;
 }

 .footer__bottom-meta {
 flex-direction: column;
 text-align: center;
 }
}
