@import url('https://fonts.googleapis.com/css2?family=Karla:wght@400;500;700&family=Nunito:wght@700;800;900&display=swap');

:root {
  --bg:#FEF7EA;--surface:#FFFDF8;--surface-2:#EFE3CC;--surface-3:#F6EDD8;
  --fg:#0B1B2F;--muted:#6B6355;--border:#E0D2B4;
  --accent:#CA9D33;--accent-deep:#A0801F;--accent-ink:#7A5E10;
  --navy:#0B1B2F;--navy-deep:#08192E;--navy-darkest:#020D20;
  --on-dark:#FFFDF8;--muted-on-dark:#A2916F;
  --font-display:"Nunito",system-ui,sans-serif;--font-body:"Karla",system-ui,sans-serif;
  --shadow-warm:0 1px 2px rgba(11,27,47,.05),0 12px 32px rgba(11,27,47,.08);
  --shadow-gold:0 2px 6px rgba(160,128,31,.35),0 10px 24px rgba(160,128,31,.28);
  --naval:#0B1B2F;--naval-dark:#020D20;--naval-light:#12294A;
  --gold:#CA9D33;--gold-light:#D8AC3E;--gold-dark:#7A5E10;
  --white:#FFFDF8;--gray-50:#F6EDD8;--gray-100:#E0D2B4;--gray-200:#D1C19F;
  --gray-400:#8A7F6B;--gray-600:#6B6355;--gray-800:#0B1B2F;--gray-900:#020D20;
  --g50:#F6EDD8;--g100:#E0D2B4;--g400:#8A7F6B;--g600:#6B6355;--g800:#0B1B2F;--g900:#020D20;
  --font-sans:var(--font-body);--font-mono:ui-monospace,"SF Mono",Menlo,monospace;
  --radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:22px;
  --shadow-sm:var(--shadow-warm);--shadow-md:var(--shadow-warm);--shadow-lg:0 24px 60px rgba(11,27,47,.14);
}

html{background:var(--bg)}
body{font-family:var(--font-body)!important;font-size:17px!important;color:var(--fg)!important;background:var(--bg)!important;line-height:1.6!important;overflow-x:hidden}
::selection{background:var(--accent);color:var(--navy)}
h1,h2,h3,.page-title,.heading-2{font-family:var(--font-display)!important;color:var(--fg);letter-spacing:-.015em!important}
.container{max-width:1180px!important;padding-left:24px!important;padding-right:24px!important}
.caption-mono,.eyebrow,.meta{font-family:var(--font-body)!important;font-weight:700!important;letter-spacing:.12em!important;color:var(--accent-ink)!important}
.body-large,.body-base,.lead{color:var(--muted)!important}

.navbar{height:72px!important;background:rgba(254,247,234,.9)!important;border-bottom:1px solid var(--border)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.nav-logo,.logo{font-family:var(--font-display)!important;font-weight:800!important;color:var(--fg)!important}
.nav-logo img,.logo img{height:44px!important;width:auto!important}
.nav-links a,.nav a{font-family:var(--font-body)!important;font-weight:700!important;color:var(--muted)!important}
.nav-links a:hover,.nav-links a.active,.nav a:hover{color:var(--fg)!important}
.nav-links a.btn-gold,.nav a.btn-gold{color:var(--navy)!important}
.nav-links a::after{background:var(--accent)!important}
.nav-toggle span{background:var(--navy)!important}

.btn{min-height:44px;border-radius:12px!important;font-family:var(--font-body)!important;font-weight:700!important;letter-spacing:.02em}
.btn-primary,.btn-navy{background:var(--navy)!important;color:var(--on-dark)!important}
.btn-primary:hover,.btn-navy:hover{background:#12294A!important}
.btn-gold{background:var(--accent)!important;color:var(--navy)!important;box-shadow:var(--shadow-gold)!important}
.btn-gold:hover{background:#D8AC3E!important}
.btn-outline{border-color:var(--border)!important;color:var(--fg)!important}
.btn-outline:hover{border-color:var(--accent-deep)!important;background:transparent!important;color:var(--accent-ink)!important}

.page-header,body>header:not(.site-nav){background:var(--surface-3)!important;border-bottom:1px solid var(--border)!important}
.section,.contact-page,.about-page,.blog-page,.solutions-page{background:var(--bg)}
.card,.solution-card,.contact-form-box,.blog-card,.value-card,.skill-card,.process-card,.featured-post,.sol-card-detalle{background:var(--surface)!important;border-color:var(--border)!important;border-radius:18px!important;box-shadow:var(--shadow-warm)!important}
.contact-form-box{border-radius:22px!important}
.contact-grid,.contact-form-box{min-width:0;width:100%}
.form-group input,.form-group select,.form-group textarea{background:var(--surface)!important;border-color:var(--border)!important;color:var(--fg)!important;border-radius:12px!important;font-family:var(--font-body)!important}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-deep)!important;box-shadow:0 0 0 3px rgba(202,157,51,.15)!important}
.contact-channel{border-color:var(--border)!important}
.contact-channel-icon{background:rgba(202,157,51,.14)!important;color:var(--accent-ink)!important;border-radius:12px!important}
.contact-channel a:hover{color:var(--gold-dark)}

.sol-card-detalle{padding:clamp(24px,3.4vw,40px)!important;border-radius:22px!important}
.sol-card-detalle.featured{border-color:rgba(202,157,51,.55)!important;background:var(--surface)!important;box-shadow:0 0 0 1px rgba(202,157,51,.18),var(--shadow-warm)!important}
.sol-card-header{justify-content:flex-start!important;align-items:flex-start!important}
.sol-card-header>.product-icon{width:58px;height:58px;object-fit:contain;flex:0 0 58px}
.sol-card-header>div{flex:1;min-width:240px}
.sol-tag{font-family:var(--font-body)!important;font-weight:700!important;background:rgba(202,157,51,.16)!important;color:var(--accent-ink)!important}
.sol-beneficio{background:var(--surface-3)!important;border:1px solid var(--border);border-radius:12px!important}
.sol-beneficio-icon{background:rgba(202,157,51,.16)!important;color:var(--accent-ink)!important}
.price-item{background:var(--surface-2)!important;border-color:var(--border)!important;border-radius:10px!important}
.product-shot{border-color:var(--border)!important;border-radius:14px!important;background:var(--surface)!important}
.product-shot a{background:var(--bg)!important}
.about-card,.about-highlight{background:var(--surface)!important;border-color:var(--border)!important;border-radius:18px!important;box-shadow:var(--shadow-warm)!important}
.about-highlight{border-left:4px solid var(--accent)!important}
.about-info-item{border-color:var(--border)!important}
.about-info-icon,.blog-card-image{background:rgba(202,157,51,.14)!important;color:var(--accent-ink)!important;border-radius:12px!important}
.blog-meta,.blog-meta span{color:var(--accent-ink)!important}

.footer,body>footer{background:var(--navy-darkest)!important;color:var(--on-dark)!important;border-top:0!important;border-radius:28px 28px 0 0!important;margin-top:72px;padding-top:56px!important}
.footer .nav-logo,.footer .nav-logo span,body>footer .logo{color:var(--on-dark)!important}
.footer .nav-logo img{content:url('brand/logo-personal-lockup-light.png');height:118px!important;margin-bottom:12px}
.footer-brand p,.footer-col a,.footer-bottom,.footer-social a,body>footer p,body>footer a{color:var(--muted-on-dark)!important}
.footer-col h4{color:var(--on-dark)!important}
.footer-col a:hover,.footer-social a:hover,body>footer a:hover{color:var(--on-dark)!important}
.footer-bottom{border-color:rgba(255,253,248,.12)!important}

article header,main header{background:transparent!important}
main h2{color:var(--fg)!important}
.cta{background:var(--navy-deep)!important;color:var(--on-dark)!important;border-radius:22px!important}
.cta h2{color:var(--on-dark)!important}
.cta p{color:rgba(255,253,248,.78)!important}

@media(max-width:768px){
  .nav-links{top:72px!important;background:var(--bg)!important;border-color:var(--border)!important}
  .navbar{height:72px!important}
  .navbar .container{gap:12px}
  .nav-logo,.logo{min-width:0}
  .nav-toggle{flex:0 0 auto}
  .page-title{max-width:100%;font-size:clamp(30px,8.5vw,34px)!important;overflow-wrap:break-word}
  .contact-page{padding:56px 0!important}
  .contact-form-box{padding:24px!important}
  .form-group input,.form-group select,.form-group textarea{min-width:0;max-width:100%}
  .footer{margin-top:56px}
}

/* ============================================================
   REDES SOCIALES — iconos del pie (dorado sobre marino)
   Pintados por assets/social-icons.js desde una lista única.
   ============================================================ */
.fd-social{display:flex;align-items:center;justify-content:center;gap:20px;margin:0;padding:8px 0}
.fd-social-link{width:44px;height:44px;flex:none;display:flex;align-items:center;justify-content:center;color:var(--gold,#c8a84e);background:rgba(255,255,255,.06);border:1px solid rgba(200,168,78,.35);border-radius:50%;transition:all .2s ease}
.fd-social-link:hover{background:var(--gold,#c8a84e);color:var(--navy-deep,#0a1f3f);transform:translateY(-2px)}
.fd-social-link svg{width:20px;height:20px;fill:currentColor;display:block}
@media(max-width:768px){.fd-social{gap:16px}.fd-social-link{width:44px;height:44px}.fd-social-link svg{width:20px;height:20px}}

/* ============================================================
   ENLACES LEGALES + DESCARGO en el pie (todas las páginas)
   ============================================================ */
.legal-links{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin:16px 0 6px}
.legal-links a{font-size:13px;color:var(--muted,#8b8f96);transition:color .2s}
.legal-links a:hover{color:var(--fg,#0a1f3f)}
.disclaimer{margin:10px auto 0;max-width:820px;font-size:12px;line-height:1.7;color:var(--muted,#8b8f96);text-align:center;padding:12px 16px;background:var(--surface-2,#f8f9fa);border:1px solid var(--border,#e9eaed);border-radius:8px}
