:root {
--brand-primary: #dd69fe;
--brand-secondary: #18b2d1;
--brand-accent: #d2ab17;
--brand-surface: #ffffff;
--primary-50: #fef7ff;
--primary-100: #fdeeff;
--primary-200: #fee7ff;
--primary-300: #f2c6ff;
--primary-400: #e788ff;
--primary-500: #ff53fe;
--primary-600: #b61ddf;
--primary-700: #9714bb;
--primary-800: #a92bc6;
--primary-900: #611081;
--primary-950: #400c4e;
--secondary-50: #f0f9ff;
--secondary-100: #f3fcff;
--secondary-200: #b6e1ff;
--secondary-300: #70bff8;
--secondary-400: #37d2f9;
--secondary-500: #0087de;
--secondary-600: #11a1c4;
--secondary-700: #0877b8;
--secondary-800: #015786;
--secondary-900: #145078;
--secondary-950: #05263f;
--neutral-50: #fafafa;
--neutral-100: #f5f5f5;
--neutral-200: #d1bfc2;
--neutral-300: #e6e1e1;
--neutral-400: #ac9d9b;
--neutral-500: #6d6566;
--neutral-600: #514c4d;
--neutral-700: #383838;
--neutral-800: #1f1f1f;
--neutral-900: #212121;
--neutral-950: #0a0a0a;
--bg-primary: #ffffff;
--bg-secondary: #fafafa;
--bg-muted: #f5f5f5;
--bg-inverse: #101010;
--bg-overlay: rgba(40, 37, 37, 0.80);
--bg-glass: rgba(255, 255, 255, 0.1);
--text-primary: #090909;
--text-secondary: #686868;
--text-muted: #7d7778;
--text-inverse: #ffffff;
--text-link: #2699fe;
--text-link-hover: #065fb0;
--border-light: #d7d7d7;
--border-medium: #ded4d3;
--border-strong: #bbb8b8;
--border-interactive: #038dea;
--state-hover: rgba(232, 84, 255, 0.08);
--state-focus: rgba(2, 115, 215, 0.12);
--state-active: rgba(244, 80, 249, 0.15);
--state-disabled: rgba(134, 133, 133, 0.50);
--success: #13d05e;
--success-bg: #f0fdf4;
--warning: #e08e13;
--warning-bg: #fff8df;
--error: #f63734;
--error-bg: #fef2f2;
}
:root {
--space-0: 0;
--space-px: 1px;
--space-1: 0.25rem;
--space-2: 0.5rem;
--space-3: 0.75rem;
--space-4: 1rem;
--space-5: 1.25rem;
--space-6: 1.5rem;
--space-8: 2rem;
--space-10: 2.5rem;
--space-12: 3rem;
--space-16: 4rem;
--space-20: 5rem;
--space-24: 6rem;
--space-32: 8rem;
--space-xs: 0.5rem;
--space-sm: 1rem;
--space-md: 1.5rem;
--space-lg: 2rem;
--space-xl: 3rem;
--space-2xl: 4rem;
--space-3xl: 6rem;
--space-4xl: 8rem;
--section-y-mobile: 3rem;
--section-y-tablet: 4rem;
--section-y-desktop: 5rem;
--section-y-hero: clamp(4rem, 10vw, 8rem);
--section-x: clamp(1rem, 3vw, 2rem);
--section-gap: clamp(1.5rem, 3vw, 2.5rem);
--card-padding: 1.5rem;
--card-gap: 1rem;
--button-padding-x: 1.5rem;
--button-padding-y: 0.75rem;
--form-gap: 1rem;
}
:root {
--font-primary: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
--font-secondary: 'Poppins', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
--font-mono: 'JetBrains Mono', 'SF Mono', Monaco, 'Cascadia Code', monospace;
--font-light: 300;
--font-normal: 400;
--font-medium: 500;
--font-semibold: 600;
--font-bold: 700;
--font-extrabold: 800;
--text-xs: clamp(0.75rem, 0.7rem + 0.25vw, 0.875rem);
--text-sm: clamp(0.875rem, 0.8rem + 0.375vw, 1rem);
--text-base: clamp(1rem, 0.9rem + 0.5vw, 1.125rem);
--text-lg: clamp(1.125rem, 1rem + 0.625vw, 1.25rem);
--text-xl: clamp(1.25rem, 1.1rem + 0.75vw, 1.5rem);
--text-2xl: clamp(1.5rem, 1.3rem + 1vw, 1.875rem);
--text-3xl: clamp(1.875rem, 1.6rem + 1.375vw, 2.25rem);
--text-4xl: clamp(2.25rem, 1.9rem + 1.75vw, 3rem);
--text-5xl: clamp(3rem, 2.5rem + 2.5vw, 3.75rem);
--text-6xl: clamp(3.75rem, 3rem + 3.75vw, 4.5rem);
--leading-none: 1;
--leading-tight: 1.25;
--leading-snug: 1.375;
--leading-normal: 1.5;
--leading-relaxed: 1.625;
--leading-loose: 2;
--tracking-tighter: -0.05em;
--tracking-tight: -0.025em;
--tracking-normal: 0;
--tracking-wide: 0.025em;
--tracking-wider: 0.05em;
}
:root {
--shadow-colored: 0 10px 15px -3px rgba(238, 97, 255, 0.15), 0 4px 6px -2px rgba(245, 83, 254, 0.10);
}
:root {
--gradient-primary: linear-gradient(135deg, #d848fd 0%, #009de7 100%);
--gradient-secondary: linear-gradient(135deg, #00a5f9 0%, #ea8e00 100%);
--gradient-hero: linear-gradient(135deg, #fef7ff 0%, #f0f9ff 50%, #eee6c2 100%);
--gradient-card: linear-gradient(145deg, #ffffff 0%, #fafafa 100%);
--gradient-overlay-light: linear-gradient(to bottom, rgba(255,255,255,0.95), rgba(255,255,255,0.8));
--gradient-overlay-dark: linear-gradient(to bottom, rgba(0,0,0,0.7), rgba(0,0,0,0.4));
}
:root {
--duration-fast: 0.60s;
--duration-normal: 1.23s;
--duration-slow: 1.31s;
--ease-smooth: ease-in-out;
--ease-spring: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
body {
font-family: var(--font-primary);
line-height: var(--leading-relaxed);
color: var(--text-primary);
background-color: var(--bg-primary);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.cta-action-btn {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.875rem 1.75rem;
margin-top: 1.64rem;
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-semibold);
line-height: var(--leading-tight);
text-decoration: none;
color: var(--text-inverse);
background: var(--gradient-primary);
border: none;
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
transition: all var(--duration-normal) var(--ease-smooth);
& .btn-icon {
font-size: 1.12rem;
transition: transform var(--duration-fast) var(--ease-spring);
}
}
.cta-action-btn:hover {
color: var(--text-inverse);
transform: translateY(-2px);
box-shadow: var(--shadow-lg);
& .btn-icon {
transform: translateX(4px);
}
}
.cta-action-btn:active {
transform: translateY(0);
box-shadow: var(--shadow-sm);
}
.cta-action-btn:focus-visible {
outline: 2px solid var(--border-interactive);
outline-offset: 2px;
}
@media (prefers-contrast: high) {
:root {
--border-light: #9e9594;
--border-medium: #696969;
}
}
@media (prefers-color-scheme: dark) {
}

.bold_font_primary {
font-family: var(--font-primary);
}
.clean_font_secondary {
font-family: var(--font-secondary);
}
.dark_font_mono {
font-family: var(--font-mono);
}
.studio_display_1 {
font-family: var(--font-secondary);
font-size: var(--text-6xl);
font-weight: var(--font-extrabold);
line-height: var(--leading-none);
letter-spacing: var(--tracking-tighter);
}
.site_display_2 {
font-family: var(--font-secondary);
font-size: var(--text-5xl);
font-weight: var(--font-bold);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
}
.design_display_3 {
font-family: var(--font-secondary);
font-size: var(--text-4xl);
font-weight: var(--font-bold);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
}
.company_heading_1 {
font-family: var(--font-secondary);
font-size: var(--text-4xl);
font-weight: var(--font-bold);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
}
.digital_heading_2 {
font-family: var(--font-secondary);
font-size: var(--text-3xl);
font-weight: var(--font-bold);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
}
.prime_heading_3 {
font-family: var(--font-secondary);
font-size: var(--text-2xl);
font-weight: var(--font-semibold);
line-height: var(--leading-snug);
letter-spacing: var(--tracking-normal);
}
.modern_heading_4 {
font-family: var(--font-primary);
font-size: var(--text-xl);
font-weight: var(--font-semibold);
line-height: var(--leading-snug);
letter-spacing: var(--tracking-normal);
}
.bright_heading_5 {
font-family: var(--font-primary);
font-size: var(--text-lg);
font-weight: var(--font-semibold);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
}
.brand_heading_6 {
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-medium);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
}
.creative_body_large {
font-family: var(--font-primary);
font-size: var(--text-lg);
font-weight: var(--font-normal);
line-height: var(--leading-relaxed);
letter-spacing: var(--tracking-normal);
}
.business_body_base {
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-normal);
line-height: var(--leading-relaxed);
letter-spacing: var(--tracking-normal);
}
.container_body_small {
font-family: var(--font-primary);
font-size: var(--text-sm);
font-weight: var(--font-normal);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
}
.base_caption {
font-family: var(--font-primary);
font-size: var(--text-xs);
font-weight: var(--font-medium);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-wide);
color: var(--text-muted);
}
.pro_overline {
font-family: var(--font-primary);
font-size: var(--text-xs);
font-weight: var(--font-semibold);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-wider);
text-transform: uppercase;
color: var(--text-muted);
}
.unique_code_inline {
font-family: var(--font-mono);
font-size: 0.875em;
font-weight: var(--font-medium);
line-height: var(--leading-normal);
background-color: var(--bg-muted);
color: var(--text-primary);
padding: 0.125rem 0.25rem;
border-radius: var(--radius-sm);
}
.agency_code_block {
font-family: var(--font-mono);
font-size: var(--text-sm);
font-weight: var(--font-normal);
line-height: var(--leading-relaxed);
background-color: var(--bg-muted);
color: var(--text-primary);
padding: var(--space-4);
border-radius: var(--radius-md);
overflow-x: auto;
}
.web_hero_title {
font-family: var(--font-secondary);
font-size: var(--text-6xl);
font-weight: var(--font-extrabold);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tighter);
color: var(--text-primary);
margin-bottom: var(--space-6);
}
.fresh_hero_subtitle {
font-family: var(--font-primary);
font-size: var(--text-xl);
font-weight: var(--font-medium);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
color: var(--text-secondary);
margin-bottom: var(--space-8);
}
.section_section_title {
font-family: var(--font-secondary);
font-size: var(--text-4xl);
font-weight: var(--font-bold);
line-height: var(--leading-tight);
letter-spacing: var(--tracking-tight);
color: var(--text-primary);
margin-bottom: var(--space-4);
}
.style_section_subtitle {
font-family: var(--font-primary);
font-size: var(--text-lg);
font-weight: var(--font-medium);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
color: var(--text-secondary);
margin-bottom: var(--space-3);
}
.best_section_description {
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-normal);
line-height: var(--leading-relaxed);
letter-spacing: var(--tracking-normal);
color: var(--text-primary);
margin-bottom: var(--space-8);
max-width: 65ch;
}
.page_card_title {
font-family: var(--font-primary);
font-size: var(--text-xl);
font-weight: var(--font-semibold);
line-height: var(--leading-snug);
letter-spacing: var(--tracking-normal);
color: var(--text-primary);
margin-bottom: var(--space-3);
}
.light_card_text {
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-normal);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
color: var(--text-primary);
}
.top_nav_link {
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-medium);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
color: var(--text-primary);
text-decoration: none;
transition: color var(--transition-fast);
}
.top_nav_link:hover,
.top_nav_link:focus {
color: var(--text-link);
text-decoration: none;
}
.new_button_text {
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-medium);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
}
.ui_footer_text {
font-family: var(--font-primary);
font-size: var(--text-sm);
font-weight: var(--font-normal);
line-height: var(--leading-normal);
letter-spacing: var(--tracking-normal);
color: var(--text-muted);
}
@media (max-width: 768px) {
.web_hero_title {
font-size: var(--text-4xl);
}
.section_section_title {
font-size: var(--text-3xl);
}
.studio_display_1 {
font-size: var(--text-5xl);
}
.site_display_2 {
font-size: var(--text-4xl);
}
}
@media (max-width: 480px) {
.web_hero_title {
font-size: var(--text-3xl);
}
.section_section_title {
font-size: var(--text-2xl);
}
.studio_display_1 {
font-size: var(--text-4xl);
}
}
a:not([class]) {
color: var(--text-link);
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 2px;
transition: all var(--transition-fast);
}
a:not([class]):hover,
a:not([class]):focus {
color: var(--text-link-hover);
text-decoration-thickness: 2px;
}
a:not([class]):visited {
color: var(--text-link);
}
.theme_text_gradient {
background: var(--gradient-primary);
-webkit-background-clip: text;background-clip: text;
display: inline-block;
}
.premium_text_shadow_sm {
text-shadow: var(--shadow-xs);
}
.content_text_shadow_md {
text-shadow: var(--shadow-sm);
}
.app_text_balance {
text-wrap: balance;
}
.elite_text_pretty {
text-wrap: pretty;
}
@media (prefers-reduced-motion: reduce) {
.top_nav_link,
a:not([class]) {
transition: none;
}
}
@media (prefers-contrast: high) {
.base_caption,
.pro_overline,
.ui_footer_text {
color: var(--text-secondary);
}
.fresh_hero_subtitle,
.style_section_subtitle {
color: var(--text-primary);
}
}
@media print {
.web_hero_title,
.section_section_title,
.company_heading_1,
.digital_heading_2 {
break-after: avoid;
page-break-after: avoid;
}
.theme_text_gradient {
color: var(--text-primary);}
}

.main_section_wrapper {
width: 100%;
position: relative;
overflow: hidden;
}
.smart_content_center {
display: flex;
align-items: center;
justify-content: center;
}
.core_content_between {
display: flex;
align-items: center;
justify-content: space-between;
}
.custom_content_start {
display: flex;
align-items: center;
justify-content: flex-start;
}
.minimal_content_end {
display: flex;
align-items: center;
justify-content: flex-end;
}
.layout_stack {
display: flex;
flex-direction: column;
}
.minimal56_stack_center {
display: flex;
flex-direction: column;
align-items: center;
}
.base15_full_height {
min-height: auto;
}
.modern76_section_height {
min-height: auto;
}
.custom63_hero_height {
min-height: auto;
}
.bright7_m_0 { margin: 0; }
.modern68_m_1 { margin: var(--space-1); }
.base82_m_2 { margin: var(--space-2); }
.minimal48_m_3 { margin: var(--space-3); }
.fresh11_m_4 { margin: var(--space-4); }
.base63_m_6 { margin: var(--space-6); }
.company2_m_8 { margin: var(--space-8); }
.section2_m_12 { margin: var(--space-12); }
.clean24_m_16 { margin: var(--space-16); }
.custom63_mx_auto { margin-left: auto; margin-right: auto; }
.modern66_my_auto { margin-top: auto; margin-bottom: auto; }
.studio97_mt_0 { margin-top: 0; }
.premium51_mt_4 { margin-top: var(--space-4); }
.smart55_mt_8 { margin-top: var(--space-8); }
.unique92_mt_12 { margin-top: var(--space-12); }
.unique20_mb_0 { margin-bottom: 0; }
.studio33_mb_4 { margin-bottom: var(--space-4); }
.business37_mb_8 { margin-bottom: var(--space-8); }
.creative69_mb_12 { margin-bottom: var(--space-12); }
.main63_p_0 { padding: 0; }
.theme51_p_1 { padding: var(--space-1); }
.container69_p_2 { padding: var(--space-2); }
.layout42_p_3 { padding: var(--space-3); }
.bright48_p_4 { padding: var(--space-4); }
.custom21_p_6 { padding: var(--space-6); }
.section53_p_8 { padding: var(--space-8); }
.studio61_px_4 { padding-left: var(--space-4); padding-right: var(--space-4); }
.container75_px_6 { padding-left: var(--space-6); padding-right: var(--space-6); }
.agency84_px_8 { padding-left: var(--space-8); padding-right: var(--space-8); }
.core99_py_4 { padding-top: var(--space-4); padding-bottom: var(--space-4); }
.digital93_py_6 { padding-top: var(--space-6); padding-bottom: var(--space-6); }
.agency2_py_8 { padding-top: var(--space-8); padding-bottom: var(--space-8); }
.dark56_gap_1 { gap: var(--space-1); }
.modern50_gap_2 { gap: var(--space-2); }
.digital97_gap_3 { gap: var(--space-3); }
.brand47_gap_4 { gap: var(--space-4); }
.top83_gap_6 { gap: var(--space-6); }
.studio40_gap_8 { gap: var(--space-8); }
.best57_shadow_none { box-shadow: var(--shadow-none); }
.page92_shadow_xs { box-shadow: var(--shadow-xs); }
.smart28_shadow_sm { box-shadow: var(--shadow-sm); }
.light13_shadow_md { box-shadow: var(--shadow-md); }
.brand44_shadow_lg { box-shadow: var(--shadow-lg); }
.unique50_shadow_xl { box-shadow: var(--shadow-xl); }
.site18_shadow_2xl { box-shadow: var(--shadow-2xl); }
.agency60_shadow_inner { box-shadow: var(--shadow-inner); }
.base5_shadow_colored { box-shadow: var(--shadow-colored); }
.creative47_radius_none { border-radius: var(--radius-none); }
.site2_radius_xs { border-radius: var(--radius-xs); }
.elite64_radius_sm { border-radius: var(--radius-sm); }
.unique43_radius_md { border-radius: var(--radius-md); }
.modern49_radius_lg { border-radius: var(--radius-lg); }
.unique15_radius_xl { border-radius: var(--radius-xl); }
.ui56_radius_2xl { border-radius: var(--radius-2xl); }
.brand71_radius_3xl { border-radius: var(--radius-3xl); }
.smart10_radius_full { border-radius: var(--radius-full); }
.elite67_gradient_primary {
background: var(--gradient-primary);
}
.page66_gradient_secondary {
background: var(--gradient-secondary);
}
.theme59_gradient_hero {
background: var(--gradient-hero);
}
.bold76_gradient_card {
background: var(--gradient-card);
}
.smart75_gradient_overlay {
position: relative;
}
.smart75_gradient_overlay::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: var(--gradient-overlay-dark);
pointer-events: none;
z-index: 1;
}
.smart75_gradient_overlay > * {
position: relative;
z-index: 2;
}
.clean99_hover_lift {
transition: transform var(--transition-normal), box-shadow var(--transition-normal);
}
.clean99_hover_lift:hover {
transform: translateY(-4px);
box-shadow: var(--shadow-lg);
}
.premium21_hover_scale {
transition: transform var(--transition-normal);
}
.premium21_hover_scale:hover {
transform: scale(1.02);
}
.page56_hover_shadow {
transition: box-shadow var(--transition-normal);
}
.page56_hover_shadow:hover {
box-shadow: var(--shadow-xl);
}
.style50_hover_fade {
transition: opacity var(--transition-normal);
}
.style50_hover_fade:hover {
opacity: var(--opacity-loading);
}
.section79_focus_ring {
transition: box-shadow var(--transition-fast);
}
.section79_focus_ring:focus {
outline: none;
box-shadow: 0 0 0 7px var(--state-focus);
}
.container60_hero_background {
position: relative;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
.page7_hero_content {
position: relative;
z-index: 2;
}
.base4_services_grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: var(--space-6);
}
.agency44_team_grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: var(--space-4);
}
.fresh47_features_grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: var(--space-6);
}
.unique59_gallery_grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: var(--space-3);
}
.digital89_pricing_grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: var(--space-6);
}
.business72_timeline {
position: relative;
}
.business72_timeline::before {
content: '';
position: absolute;
left: 50%;
top: 0;
bottom: 0;
width: 2px;
background: var(--border-light);
transform: translateX(-50%);
}
.new69_timeline_item {
position: relative;
width: 50%;
padding: var(--space-4);
}
.new69_timeline_item:nth-child(odd) {
left: 0;
text-align: right;
padding-right: var(--space-8);
}
.new69_timeline_item:nth-child(even) {
left: 50%;
text-align: left;
padding-left: var(--space-8);
}
.design17_fade_in {
opacity: 0;
animation: tc-fadeIn var(--transition-slow) ease-out forwards;
}
@keyframes tc-fadeIn {
to {
opacity: 1;
}
}
.new38_slide_up {
transform: translateY(20px);
opacity: 0;
animation: tc-slideUp var(--transition-slow) ease-out forwards;
}
@keyframes tc-slideUp {
to {
transform: translateY(0);
opacity: 1;
}
}
.bold92_slide_in_left {
transform: translateX(-20px);
opacity: 0;
animation: tc-slideInLeft var(--transition-slow) ease-out forwards;
}
@keyframes tc-slideInLeft {
to {
transform: translateX(0);
opacity: 1;
}
}
.layout65_scale_in {
transform: scale(0.95);
opacity: 0;
animation: tc-scaleIn var(--transition-slow) ease-out forwards;
}
@keyframes tc-scaleIn {
to {
transform: scale(1);
opacity: 1;
}
}
.fresh56_transition_all {
transition: var(--transition-all);
}
.bright85_transition_fast {
transition: all var(--transition-fast);
}
.prime69_transition_normal {
transition: all var(--transition-normal);
}
.smart58_transition_slow {
transition: all var(--transition-slow);
}
.studio94_bg_primary { background-color: var(--bg-primary); }
.layout50_bg_secondary { background-color: var(--bg-secondary); }
.elite63_bg_muted { background-color: var(--bg-muted); }
.theme14_bg_glass { background-color: var(--bg-glass); }
.top97_text_primary { color: var(--text-primary); }
.bright66_text_secondary { color: var(--text-secondary); }
.modern74_text_muted { color: var(--text-muted); }
.modern43_text_inverse { color: var(--text-inverse); }
.base45_text_link { color: var(--text-link); }
.ui78_border_light { border-color: var(--border-light); }
.bright58_border_medium { border-color: var(--border-medium); }
.theme83_border_strong { border-color: var(--border-strong); }
.best84_border_interactive { border-color: var(--border-interactive); }
@media (max-width: 768px) {
.base4_services_grid,
.fresh47_features_grid,
.agency44_team_grid,
.digital89_pricing_grid {
grid-template-columns: 1fr;
}
.unique59_gallery_grid {
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}
.business72_timeline::before {
left: 30px;
}
.new69_timeline_item {
width: 100%;
left: 0 !important;
text-align: left;
padding-left: var(--space-16) !important;
padding-right: var(--space-4) !important;
}
.modern76_section_height {
min-height: auto;
}
.custom63_hero_height {
min-height: auto;
}
}
@media (max-width: 480px) {
.unique59_gallery_grid {
grid-template-columns: 1fr;
}
.new69_timeline_item {
padding-left: var(--space-12) !important;
}
}
.premium89_sr_only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
.base83_not_sr_only {
position: static;
width: auto;
height: auto;
padding: 0;
margin: 0;
overflow: visible;
clip: auto;
white-space: normal;
}
.theme68_skip_link {
position: absolute;
top: -40px;
left: 6px;
background: var(--bg-inverse);
color: var(--text-inverse);
padding: var(--space-2) var(--space-4);
border-radius: var(--radius-md);
text-decoration: none;
z-index: 9999;
transition: top var(--transition-fast);
}
.theme68_skip_link:focus {
top: 6px;
}
@media print {
.digital70_no_print {
display: none !important;
}
.studio86_print_only {
display: block !important;
}
.page92_shadow_xs,
.smart28_shadow_sm,
.light13_shadow_md,
.brand44_shadow_lg,
.unique50_shadow_xl,
.site18_shadow_2xl {
box-shadow: none !important;
}
}
.cta-action-btn {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.875rem 1.75rem;
margin-top: 1.73rem;
font-family: var(--font-primary);
font-size: var(--text-base);
font-weight: var(--font-semibold);
line-height: var(--leading-tight);
text-decoration: none;
color: var(--button-primary-text);
background: linear-gradient(135deg, var(--primary-500) 0%, var(--primary-700) 100%);
border: none;
border-radius: var(--radius-lg);
box-shadow: var(--shadow-md);
transition: all var(--duration-normal) var(--ease-smooth);
}
.cta-action-btn .btn-icon {
font-size: 1.19rem;
transition: transform var(--duration-fast) var(--ease-spring);
}
.cta-action-btn:hover {
color: var(--button-primary-text);
transform: translateY(-2px);
box-shadow: var(--shadow-lg);
}
.cta-action-btn:hover .btn-icon {
transform: translateX(4px);
}
.cta-action-btn:active {
transform: translateY(0);
box-shadow: var(--shadow-sm);
}
.cta-action-btn:focus-visible {
outline: 2px solid var(--primary-500);
outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
.design17_fade_in,
.new38_slide_up,
.bold92_slide_in_left,
.layout65_scale_in {
animation: none;
opacity: 1;
transform: none;
}
.clean99_hover_lift,
.premium21_hover_scale,
.page56_hover_shadow,
.style50_hover_fade,
.fresh56_transition_all,
.bright85_transition_fast,
.prime69_transition_normal,
.smart58_transition_slow {
transition: none;
}
.cta-action-btn {
transition: none;
}
.cta-action-btn .btn-icon {
transition: none;
}
.cta-action-btn:hover {
transform: none;
}
}

:root {
  --primary-50: #faf5ff;
  --primary-50-rgb: 250, 245, 255;
  --primary-100: #eedbff;
  --primary-100-rgb: 243, 232, 255;
  --primary-300: #e3b4fe;
  --primary-300-rgb: 216, 180, 254;
  --primary-500: #8e2fde;
  --primary-500-rgb: 147, 51, 234;
  --primary-700: #8116b8;
  --primary-700-rgb: 126, 34, 206;
  --primary-200: #cbadf4;
  --primary-200-rgb: 230, 206, 255;
  --primary-400: #b07af7;
  --primary-400-rgb: 182, 116, 244;
  --primary-600: #9c34d3;
  --primary-600-rgb: 137, 43, 220;
  --primary-800: #7b1faf;
  --primary-800-rgb: 101, 27, 165;
  --primary-900: #411d73;
  --primary-900-rgb: 86, 23, 140;
  --primary-950: #320f6f;
  --primary-950-rgb: 60, 16, 98;
  --primary-rgb: 147, 51, 234;
  --neutral-50: #fafafa;
  --neutral-50-rgb: 250, 250, 250;
  --neutral-100: #f4f4f5;
  --neutral-100-rgb: 244, 244, 245;
  --neutral-300: #bebec9;
  --neutral-300-rgb: 212, 212, 216;
  --neutral-500: #777982;
  --neutral-500-rgb: 113, 113, 122;
  --neutral-700: #505057;
  --neutral-700-rgb: 63, 63, 70;
  --neutral-900: #1b1a20;
  --neutral-900-rgb: 43, 43, 48;
  --neutral-200: #f1f1f1;
  --neutral-200-rgb: 228, 228, 231;
  --neutral-400: #b2b3bf;
  --neutral-400-rgb: 163, 163, 169;
  --neutral-600: #535260;
  --neutral-600-rgb: 88, 88, 96;
  --neutral-800: #2d2d32;
  --neutral-800-rgb: 50, 50, 56;
  --neutral-950: #141418;
  --neutral-950-rgb: 30, 30, 34;
  --surface-primary: var(--neutral-50);
  --surface-secondary: var(--neutral-100);
  --surface-accent: var(--primary-50);
  --text-primary: var(--neutral-900);
  --text-secondary: var(--neutral-700);
  --text-accent: var(--primary-500);
  --button-primary-bg: var(--primary-500);
  --button-primary-text: #000000;
  --button-primary-text-rgb: 0, 0, 0;
  --button-secondary-bg: var(--neutral-100);
  --button-secondary-text: var(--neutral-900);
  --border-light: var(--neutral-300);
  --border-medium: var(--neutral-500);
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --accent-50: #fcecd4;
  --accent-50-rgb: 252, 247, 232;
  --accent-100: #f8eeeb;
  --accent-100-rgb: 247, 235, 232;
  --accent-200: #ecc0dd;
  --accent-200-rgb: 238, 213, 232;
  --accent-300: #ccbfcf;
  --accent-300-rgb: 228, 191, 231;
  --accent-400: #bc75df;
  --accent-400-rgb: 204, 137, 222;
  --accent-500: #bb65dc;
  --accent-500-rgb: 179, 82, 213;
  --accent-600: #8f39be;
  --accent-600-rgb: 172, 75, 200;
  --accent-700: #9639b4;
  --accent-700-rgb: 165, 67, 187;
  --accent-800: #9b50aa;
  --accent-800-rgb: 147, 61, 150;
  --accent-900: #713766;
  --accent-900-rgb: 137, 58, 127;
  --accent-950: #6f3659;
  --accent-950-rgb: 119, 52, 89;
  --accent-rgb: 179, 82, 213;
  --white-rgb: 255, 255, 255;
  --black-rgb: 0, 0, 0;
  --transparent-rgb: 0, 0, 0;
  --overlay-light-rgb: 255, 255, 255;
  --overlay-dark-rgb: 0, 0, 0;

  --theme-name: "calm-lavender-01";
  --theme-category: "calm";

}

body {
  background-color: var(--bg-primary, var(--surface-primary, #ffffff));
  color: var(--text-primary, #000000);
}

.btn-primary {
  background-color: var(--primary, var(--button-primary-bg, #007ff9));
  color: var(--button-primary-text, #ffffff);
  border-color: var(--primary, var(--button-primary-bg, #009eff));
}

.btn-secondary {
  background-color: var(--secondary, var(--button-secondary-bg, #f8f9fa));
  color: var(--text-primary, var(--button-secondary-text, #0f1113));
  border-color: var(--borders-light, var(--border-light, #dedede));
}