/*
Theme Name: 1Marketing Clara
Theme URI: https://1marketing.com
Author: 1Marketing Team
Author URI: https://1marketing.com
Description: Tema profesional para agencia de marketing digital especializada en leads calificados, Facebook Ads, Google Ads y desarrollo de ecommerce (WooCommerce, TiendaNube, Shopify). Paleta violeta oscura, estilo premium. Soporte completo para Elementor y WooCommerce.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: onemarketing
Tags: one-column, two-columns, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-width-template, theme-options, threaded-comments, translation-ready, e-commerce, elementor
WooCommerce: 8.0
*/

/* ========== DESIGN TOKENS ========== */
/* Brand: 1Marketing — Rojo coral #FC3C23 · Fondo negro cálido #1A1413 · Helvetica */
:root {
  /* ── Core brand palette ── */
  --om-red: #FC3C23;
  --om-red-dark: #C8191A;
  --om-red-deeper: #A01212;
  --om-red-light: #FF6347;
  --om-red-lighter: #FF8570;
  --om-red-glow: rgba(252, 60, 35, 0.35);
  --om-red-glow-sm: rgba(252, 60, 35, 0.18);
  /* ── Brand aliases (used throughout theme as primary) ── */
  --om-violet: #FC3C23;
  --om-violet-dark: #C8191A;
  --om-violet-darker: #A01212;
  --om-violet-deep: #7A0D0D;
  --om-violet-midnight: #500808;
  --om-violet-abyss: #300404;
  --om-violet-light: #FF6347;
  --om-violet-lighter: #FF8570;
  --om-violet-glow: rgba(252, 60, 35, 0.35);
  --om-violet-glow-sm: rgba(252, 60, 35, 0.18);
  /* ── Accent: warm orange-red ── */
  --om-neon: #FF5533;
  --om-neon-dark: #CC2200;
  --om-neon-glow: rgba(255, 85, 51, 0.28);
  /* ── Backgrounds (light version) ── */
  --om-bg-dark: #FFFFFF;
  --om-bg-darker: #F5F5F5;
  --om-bg-deep: #EBEBEB;
  --om-bg-card: rgba(0, 0, 0, 0.03);
  --om-bg-card-hover: rgba(0, 0, 0, 0.05);
  --om-border: rgba(0, 0, 0, 0.1);
  --om-border-hover: rgba(252, 60, 35, 0.4);
  /* ── Neutrals ── */
  --om-black: #FFFFFF;
  --om-dark: #F0F0F0;
  --om-gray: #666666;
  --om-gray-light: #333333;
  --om-gray-lighter: #111111;
  --om-white: #222222;
  --om-pure-white: #111111;
  --om-success: #10B981;
  --om-error: #EF4444;
  --om-warning: #F59E0B;
  /* ── Gradients — brand rojo coral ── */
  --om-gradient-main: linear-gradient(135deg, #FC3C23 0%, #FF5533 50%, #C8191A 100%);
  --om-gradient-logo: linear-gradient(135deg, #FC3C23 0%, #C8191A 100%);
  --om-gradient-hero: linear-gradient(135deg, #FF6347 0%, #FC3C23 40%, #C8191A 100%);
  --om-gradient-subtle: linear-gradient(135deg, #FC3C23 0%, #FF6347 100%);
  --om-gradient-deep: linear-gradient(135deg, #C8191A 0%, #7A0D0D 100%);
  --om-gradient-dark: linear-gradient(135deg, #F5F5F5 0%, #EEEEEE 50%, #E8E8E8 100%);
  --om-gradient-glass: linear-gradient(135deg, rgba(252,60,35,0.06) 0%, rgba(200,25,26,0.02) 100%);
  /* ── Typography: Helvetica stack ── */
  --om-font-heading: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --om-font-body: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --om-radius-sm: 8px;
  --om-radius-md: 12px;
  --om-radius-lg: 16px;
  --om-radius-xl: 20px;
  --om-radius-2xl: 24px;
  --om-radius-full: 50px;
  --om-shadow-sm: 0 2px 8px rgba(0,0,0,0.15);
  --om-shadow-md: 0 4px 20px rgba(0,0,0,0.2);
  --om-shadow-lg: 0 8px 40px rgba(0,0,0,0.25);
  --om-shadow-xl: 0 20px 60px rgba(0,0,0,0.3);
  --om-shadow-neon: 0 4px 20px rgba(252,60,35,0.2), 0 8px 40px rgba(252,60,35,0.06);
  --om-shadow-neon-strong: 0 6px 30px rgba(252,60,35,0.28), 0 12px 50px rgba(200,25,26,0.1);
  --om-transition: all 0.3s ease;
  --om-transition-slow: all 0.5s cubic-bezier(0.4,0,0.2,1);
  --om-container: 1200px;
}

/* ========== RESET ========== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--om-font-body);font-size:16px;line-height:1.6;color:#111111;background-color:var(--om-bg-dark);overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:var(--om-font-heading);line-height:1.2;font-weight:700;color:#111111}
h1{font-size:clamp(36px,5vw,68px);font-weight:800}
h2{font-size:clamp(28px,4vw,48px);font-weight:800}
h3{font-size:clamp(20px,2.5vw,28px)}
h4{font-size:clamp(18px,2vw,22px)}
a{text-decoration:none;color:inherit;transition:var(--om-transition)}
a:hover{color:var(--om-violet-light)}
img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}
.om-container{max-width:var(--om-container);margin:0 auto;padding:0 24px}

/* ========== BUTTONS ========== */
.om-btn,button.om-btn,a.om-btn,input[type="submit"]{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 32px;border-radius:var(--om-radius-full);font-family:var(--om-font-heading);
  font-weight:600;font-size:15px;cursor:pointer;border:2px solid transparent;
  transition:var(--om-transition);text-align:center;line-height:1;position:relative;overflow:hidden;
}
.om-btn-primary,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,
.woocommerce input.button.alt,.woocommerce #respond input#submit.alt{
  background:var(--om-gradient-main)!important;color:var(--om-pure-white)!important;border-color:transparent!important;
}
.om-btn-primary:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{
  transform:translateY(-2px)!important;box-shadow:var(--om-shadow-neon)!important;
}
.om-btn-outline{background:transparent;border:2px solid var(--om-violet);color:var(--om-violet-light)}
.om-btn-outline:hover{background:var(--om-violet);color:var(--om-pure-white);box-shadow:var(--om-shadow-neon)}
.om-btn-glass{background:rgba(0,0,0,0.06);backdrop-filter:blur(20px);border:1px solid rgba(0,0,0,0.12);color:#111111}
.om-btn-glass:hover{background:rgba(139,92,246,0.25);border-color:var(--om-border-hover);box-shadow:var(--om-shadow-neon)}
.om-btn-dark{background:var(--om-bg-dark);color:var(--om-pure-white);border-color:var(--om-border)}
.om-btn-sm{padding:10px 22px;font-size:13px}
.om-btn-lg{padding:18px 40px;font-size:17px}
.om-btn-full{width:100%}

/* ========== HEADER ========== */
.om-header{position:sticky;top:0;z-index:999;background:rgba(255,255,255,0.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--om-border);transition:var(--om-transition)}
.om-header.scrolled{box-shadow:0 2px 16px rgba(0,0,0,0.08);background:rgba(255,255,255,0.98)}
.om-header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:40px}
.om-logo{font-family:var(--om-font-heading);font-size:28px;font-weight:800;color:#111111;display:flex;align-items:center;gap:2px;white-space:nowrap}
.om-logo .logo-one{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--om-gradient-logo);border-radius:12px;font-size:24px;font-weight:800;color:var(--om-pure-white);margin-right:6px;box-shadow:0 0 18px rgba(139,92,246,0.22)}
.om-logo img{max-height:48px;width:auto}
.om-nav{display:flex;align-items:center;gap:32px}
.om-nav ul{display:flex;gap:28px;align-items:center}
.om-nav ul li{position:relative}
.om-nav ul li a{font-size:15px;font-weight:500;color:rgba(0,0,0,0.6);padding:4px 0;position:relative}
.om-nav ul li a::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--om-gradient-main);transition:width 0.3s ease;border-radius:2px}
.om-nav ul li a:hover::after,.om-nav ul li.current-menu-item a::after,.om-nav ul li.current_page_item a::after{width:100%}
.om-nav ul li a:hover,.om-nav ul li.current-menu-item a{color:#111111}
.om-nav ul li .sub-menu{position:absolute;top:100%;left:0;background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);border-radius:var(--om-radius-lg);box-shadow:var(--om-shadow-xl);padding:12px;min-width:220px;opacity:0;visibility:hidden;transform:translateY(10px);transition:var(--om-transition);flex-direction:column;gap:4px;border:1px solid var(--om-border)}
.om-nav ul li:hover .sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.om-nav ul li .sub-menu li a{display:block;padding:10px 16px;border-radius:var(--om-radius-sm);font-size:14px}
.om-nav ul li .sub-menu li a:hover{background:rgba(139,92,246,0.15)}
.om-nav ul li .sub-menu li a::after{display:none}
.om-mobile-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:8px;z-index:1001}
.om-mobile-toggle span{width:25px;height:2px;background:#111111;transition:var(--om-transition);display:block}
.om-header-actions{display:flex;align-items:center;gap:20px}
.om-header-action{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:rgba(0,0,0,0.5);cursor:pointer;position:relative;background:none;border:none;font-family:inherit}
.om-header-action i{font-size:20px}
.om-header-action:hover{color:var(--om-violet-light)}
.om-cart-count{position:absolute;top:-8px;right:-10px;width:20px;height:20px;background:var(--om-gradient-main);color:var(--om-pure-white);font-size:11px;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center}

/* ========== TOPBAR ========== */
.om-topbar{background:#EEEEEE;padding:8px 0;font-size:13px;color:rgba(0,0,0,0.5);border-bottom:1px solid var(--om-border)}
.om-topbar-inner{display:flex;justify-content:space-between;align-items:center}
.om-topbar i{color:var(--om-violet-light);margin-right:6px}
.om-topbar a{color:rgba(0,0,0,0.5)}
.om-topbar a:hover{color:var(--om-violet-light)}

/* ========== SECTIONS ========== */
.om-section{padding:100px 0;position:relative}
.om-section-dark{background:var(--om-bg-dark)}
.om-section-darker{background:var(--om-bg-darker)}
.om-section-glass{background:rgba(139,92,246,0.03)}
.om-section-gradient{background:var(--om-gradient-dark)}
.om-section-header{text-align:center;margin-bottom:64px}
.om-section-tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:3px;color:var(--om-violet);margin-bottom:16px;padding:8px 20px;background:rgba(252,60,35,0.07);border:1px solid rgba(252,60,35,0.18);border-radius:var(--om-radius-full)}
.om-section-header p{font-size:17px;color:#555555;max-width:600px;margin:12px auto 0}

/* ========== CARDS ========== */
.om-card{background:var(--om-bg-card);border-radius:var(--om-radius-xl);border:1px solid var(--om-border);padding:32px;transition:var(--om-transition-slow);backdrop-filter:blur(10px)}
.om-card:hover{transform:translateY(-6px);box-shadow:var(--om-shadow-neon);border-color:var(--om-border-hover);background:var(--om-bg-card-hover)}
.om-card-icon{width:64px;height:64px;background:rgba(252,60,35,0.08);border-radius:var(--om-radius-lg);display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--om-violet-light);margin-bottom:20px;transition:var(--om-transition)}
.om-card:hover .om-card-icon{background:var(--om-gradient-main);color:var(--om-pure-white);transform:scale(1.1);box-shadow:var(--om-shadow-neon)}

/* ========== FORMS ========== */
.om-form-group{margin-bottom:20px}
.om-form-group label{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:#333333}
.om-form-group input,.om-form-group select,.om-form-group textarea,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{
  width:100%;padding:14px 18px;border:2px solid var(--om-border);border-radius:var(--om-radius-md);
  font-family:var(--om-font-body);font-size:15px;color:#111111;
  transition:var(--om-transition);background:#ffffff;outline:none;
}
.om-form-group input:focus,.om-form-group select:focus,.om-form-group textarea:focus,
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{
  border-color:var(--om-violet);box-shadow:0 0 0 4px var(--om-violet-glow);
}

/* ========== FOOTER ========== */
.om-footer{background:#F5F5F5;color:#111111;padding:80px 0 40px;border-top:1px solid var(--om-border)}
.om-footer h4{font-size:16px;margin-bottom:20px;background:var(--om-gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.om-footer a{color:rgba(0,0,0,0.45)}
.om-footer a:hover{color:var(--om-violet-light)}
.om-footer-bottom{border-top:1px solid var(--om-border);padding-top:32px;margin-top:60px;font-size:14px;color:rgba(0,0,0,0.35)}
.om-footer-social a{width:40px;height:40px;background:rgba(0,0,0,0.05);border:1px solid var(--om-border);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--om-pure-white);font-size:16px;margin-right:8px}
.om-footer-social a:hover{background:var(--om-violet);border-color:var(--om-violet);box-shadow:var(--om-shadow-neon)}

/* ========== WOOCOMMERCE ========== */
.woocommerce .woocommerce-breadcrumb{padding:16px 0;font-size:14px;color:var(--om-gray)}
.woocommerce .woocommerce-breadcrumb a{color:var(--om-violet-light)}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,1fr);gap:28px}
.woocommerce ul.products li.product{background:var(--om-bg-card);border-radius:var(--om-radius-xl);border:1px solid var(--om-border);overflow:hidden;transition:var(--om-transition-slow);margin:0!important;padding:0!important;width:100%!important;float:none!important}
.woocommerce ul.products li.product:hover{transform:translateY(-6px);box-shadow:var(--om-shadow-neon);border-color:var(--om-border-hover)}
.woocommerce ul.products li.product a img{margin:0!important;border-radius:0;width:100%;height:240px;object-fit:cover}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--om-font-heading);font-size:18px;font-weight:700;padding:16px 24px 8px!important;color:#111111}
.woocommerce ul.products li.product .price{padding:0 24px;font-family:var(--om-font-heading);font-weight:700;color:#111111!important;font-size:22px!important}
.woocommerce ul.products li.product .price del{color:var(--om-gray)!important;font-size:15px!important}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:#111111!important}
.woocommerce ul.products li.product .star-rating{margin:8px 24px!important;color:var(--om-violet-light)}
.woocommerce ul.products li.product a.button,.woocommerce ul.products li.product a.add_to_cart_button{margin:12px 24px 24px!important;border-radius:var(--om-radius-full)!important;padding:12px 24px!important;font-family:var(--om-font-heading)!important;font-weight:600!important;font-size:14px!important}
.woocommerce span.onsale{background:var(--om-gradient-main)!important;color:var(--om-pure-white)!important;font-family:var(--om-font-heading);font-weight:700;border-radius:var(--om-radius-full)!important;padding:6px 16px!important;min-height:auto!important;min-width:auto!important;line-height:1.4!important;top:12px!important;left:12px!important;right:auto!important}
.woocommerce div.product .product_title{font-family:var(--om-font-heading);font-size:32px;font-weight:800;color:#111111}
.woocommerce div.product p.price{font-family:var(--om-font-heading);font-size:28px!important;font-weight:700;color:#111111!important}
.woocommerce div.product .woocommerce-product-rating .star-rating{color:var(--om-violet-light)}
.woocommerce div.product div.images img{border-radius:var(--om-radius-2xl)}
.woocommerce div.product form.cart .quantity input.qty{border:2px solid var(--om-border);border-radius:var(--om-radius-md);padding:10px 14px;background:#ffffff;color:#111111;font-family:var(--om-font-body)}
.woocommerce div.product form.cart .quantity input.qty:focus{border-color:var(--om-violet);box-shadow:0 0 0 4px var(--om-violet-glow)}
.woocommerce div.product form.cart .button{border-radius:var(--om-radius-full)!important;padding:16px 40px!important;font-size:16px!important}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 24px!important;border-bottom:2px solid var(--om-border)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border:none!important;background:none!important;border-radius:0!important;margin:0!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-family:var(--om-font-heading);font-weight:600;font-size:15px;color:var(--om-gray);padding:12px 24px;border-bottom:2px solid transparent;margin-bottom:-2px}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--om-pure-white);border-bottom-color:var(--om-violet)}
.woocommerce-cart table.shop_table{border:1px solid var(--om-border)!important;border-radius:var(--om-radius-xl)!important;overflow:hidden;border-collapse:separate!important}
.woocommerce-cart table.shop_table th{background:rgba(0,0,0,0.04);font-family:var(--om-font-heading);font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:1px;padding:16px 20px!important;border:none!important;color:#111111}
.woocommerce-cart table.shop_table td{padding:20px!important;border-color:var(--om-border)!important;vertical-align:middle;color:#111111}
.woocommerce-cart table.shop_table td.product-name a{font-family:var(--om-font-heading);font-weight:600;color:#111111}
.woocommerce-cart .cart_totals{background:var(--om-bg-card);border:1px solid var(--om-border);border-radius:var(--om-radius-xl);padding:32px}
.woocommerce-cart .cart_totals h2{font-family:var(--om-font-heading);font-size:24px;font-weight:800;margin-bottom:20px}
.woocommerce-checkout #payment{background:var(--om-bg-card)!important;border-radius:var(--om-radius-xl)!important;border:1px solid var(--om-border)!important;padding:32px!important}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info{border-top-color:var(--om-violet)!important;background:rgba(252,60,35,0.06);border-radius:var(--om-radius-md);padding:16px 24px;color:#111111}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{color:var(--om-violet-light)!important}
.woocommerce .woocommerce-error{border-top-color:var(--om-error)!important}
.woocommerce nav.woocommerce-pagination ul{border:none!important}
.woocommerce nav.woocommerce-pagination ul li{border:none!important}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border-radius:var(--om-radius-sm)!important;padding:10px 16px!important;font-family:var(--om-font-heading);font-weight:600;border:none!important;margin:0 4px;color:var(--om-pure-white)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--om-gradient-main)!important;color:var(--om-pure-white)!important}
.woocommerce .star-rating{color:var(--om-violet-light)!important}
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle{background:var(--om-violet)!important;border-color:var(--om-violet-dark)!important}
.woocommerce .widget_price_filter .ui-slider .ui-slider-range{background:var(--om-gradient-main)!important}
.woocommerce-account .woocommerce-MyAccount-navigation ul{background:var(--om-bg-card);border:1px solid var(--om-border);border-radius:var(--om-radius-xl);padding:16px}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a{display:block;padding:12px 16px;border-radius:var(--om-radius-sm);font-weight:500;color:rgba(255,255,255,0.7)}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a{background:var(--om-gradient-main);color:var(--om-pure-white);font-weight:700}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover{background:rgba(139,92,246,0.15)}

/* ========== ELEMENTOR ========== */
.elementor-section.elementor-section-boxed>.elementor-container{max-width:var(--om-container)}
.elementor-widget-heading .elementor-heading-title{font-family:var(--om-font-heading)}
.elementor-widget-text-editor{font-family:var(--om-font-body)}
.elementor-button{font-family:var(--om-font-heading)!important;border-radius:var(--om-radius-full)!important;font-weight:600!important;transition:var(--om-transition)!important}
.elementor-button:hover{transform:translateY(-2px);box-shadow:var(--om-shadow-neon)}

/* Elementor dark backgrounds */
body .elementor-section{background-color:transparent}
body .elementor-element{color:#111111}

/* ========== RESPONSIVE ========== */
@media(max-width:1024px){
  .woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:768px){
  .om-nav{display:none}
  .om-mobile-toggle{display:flex}
  .om-topbar{display:none}
  .om-nav.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;width:100%;background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);padding:20px;box-shadow:var(--om-shadow-lg);border-radius:0 0 var(--om-radius-lg) var(--om-radius-lg);border:1px solid var(--om-border)}
  .om-nav.open ul{flex-direction:column;gap:8px;width:100%}
  .om-nav.open ul li a{display:block;padding:12px 16px;border-radius:var(--om-radius-sm)}
  .om-nav.open ul li a:hover{background:rgba(139,92,246,0.15)}
  .woocommerce ul.products{grid-template-columns:1fr!important}
}

/* ========== UTILITIES ========== */
.om-text-center{text-align:center}
.om-text-gradient{background:var(--om-gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.om-glow{box-shadow:var(--om-shadow-neon)}
.om-glow-strong{box-shadow:var(--om-shadow-neon-strong)}

/* ========== HOME PAGE COMPONENTS ========== */
/* Ghost button */
.om-btn-ghost{background:transparent;border:2px solid rgba(139,92,246,0.45);color:var(--om-violet-light)}
.om-btn-ghost:hover{background:rgba(139,92,246,0.15);border-color:var(--om-violet);color:var(--om-pure-white);box-shadow:var(--om-shadow-neon)}

/* Section size modifier */
.om-section-sm{padding:60px 0}

/* Grid layouts */
.om-grid{display:grid;gap:28px}
.om-grid-3{grid-template-columns:repeat(3,1fr)}
.om-grid-2{grid-template-columns:repeat(2,1fr)}
@media(max-width:1024px){.om-grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.om-grid-3,.om-grid-2{grid-template-columns:1fr}}

/* Service cards */
.om-card-featured{border-color:rgba(139,92,246,0.4);background:rgba(139,92,246,0.08)}
.om-service-icon{width:56px;height:56px;border-radius:var(--om-radius-lg);background:rgba(139,92,246,0.15);display:flex;align-items:center;justify-content:center;margin-bottom:16px;border:1px solid rgba(139,92,246,0.2)}
.om-service-icon i{font-size:22px;background:var(--om-gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.om-service-list{margin-top:16px;display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.om-service-list li{font-size:14px;color:rgba(255,255,255,0.7);display:flex;align-items:center;gap:8px}
.om-service-list li i{color:var(--om-success);font-size:12px;flex-shrink:0}
.om-card{display:flex;flex-direction:column}

/* Hero proof */
.om-hero-proof{display:flex;align-items:center;gap:12px;margin-top:28px;color:rgba(255,255,255,0.65);font-size:14px}
.om-proof-avatars{display:flex}
.om-proof-avatars .om-proof-avatar{margin-right:-8px}

/* Orbit animation */
.orbit-wrap{position:relative;width:420px;height:420px;flex-shrink:0;overflow:visible}
.orbit-canvas{position:absolute;top:0;left:0;width:420px;height:420px;pointer-events:none}
.orbit-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;width:118px;height:118px;border-radius:50%;background:var(--om-gradient-logo);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 40px rgba(139,92,246,0.45),0 0 80px rgba(76,29,149,0.25);animation:center-pulse 4s ease-in-out infinite;font-family:var(--om-font-heading);font-weight:800;font-size:24px;color:var(--om-pure-white)}
.orbit-center .logo-one{background:none;-webkit-text-fill-color:white;font-size:28px;width:auto;height:auto;margin:0;padding:0;border-radius:0;box-shadow:none}
@keyframes center-pulse{0%,100%{box-shadow:0 0 40px rgba(139,92,246,0.45),0 0 80px rgba(76,29,149,0.25)}50%{box-shadow:0 0 60px rgba(139,92,246,0.7),0 0 120px rgba(217,70,239,0.3)}}
/* Platform icons on orbit ring */
.picon{position:absolute;width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(0,0,0,0.4);z-index:20;animation:picon-bob 5s ease-in-out infinite;cursor:default}
@keyframes picon-bob{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.05)}}
.picon:hover{transform:scale(1.15)!important;box-shadow:0 8px 30px rgba(0,0,0,0.5),0 0 20px rgba(139,92,246,0.4)}
.picon::after{content:attr(data-tip);position:absolute;bottom:-28px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;font-weight:600;color:rgba(255,255,255,0.75);background:rgba(15,11,30,0.9);border:1px solid rgba(139,92,246,0.3);border-radius:20px;padding:3px 10px;opacity:0;pointer-events:none;transition:opacity 0.2s ease}
.picon:hover::after{opacity:1}
/* Icon positions on outer ring (r=182, center=210) — angles from 12 o'clock */
.pi1{top:1px;left:183px;animation-delay:0s}
.pi2{top:91px;left:341px;animation-delay:0.4s}
.pi3{top:273px;left:341px;animation-delay:0.8s}
.pi4{top:365px;left:183px;animation-delay:1.2s}
.pi5{top:273px;left:23px;animation-delay:1.6s}
.pi6{top:91px;left:23px;animation-delay:2s}

/* Section copy block */
.om-section-copy{display:flex;flex-direction:column}
.om-section-copy h2{margin-bottom:16px}

/* CTA section */
.om-cta-section{background:var(--om-bg-dark)}
.om-cta-card{position:relative;text-align:center;padding:80px 60px;background:rgba(139,92,246,0.06);border:1px solid rgba(139,92,246,0.2);border-radius:var(--om-radius-2xl);overflow:hidden}
.om-cta-glow{position:absolute;top:-60px;left:50%;transform:translateX(-50%);width:500px;height:300px;background:radial-gradient(ellipse,rgba(139,92,246,0.2) 0%,transparent 70%);pointer-events:none}
.om-cta-title{font-size:clamp(28px,4vw,48px);margin-bottom:16px}
.om-cta-title span{background:var(--om-gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.om-cta-subtitle{font-size:18px;color:var(--om-gray);max-width:500px;margin:0 auto}

/* ========== ANIMATIONS ========== */
@keyframes om-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px)}}
@keyframes om-pulse-glow{0%,100%{box-shadow:0 0 20px rgba(139,92,246,0.3)}50%{box-shadow:0 0 40px rgba(139,92,246,0.6),0 0 80px rgba(217,70,239,0.2)}}
@keyframes om-gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@keyframes om-spin-slow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.om-animate{opacity:0;transform:translateY(30px);transition:all 0.6s ease}
.om-animate.visible{opacity:1;transform:translateY(0)}
