/*
Theme Name: Rucar
Theme URI: https://rucar.es
Description: Tema a medida para Rucar — Asesoría Fiscal, Contable y Gestoría en Sevilla. Cabecera y pie propios que continúan el diseño de las páginas.
Author: Rucar
Version: 1.0
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: rucar
*/

/* ============================================================
   BASE GLOBAL
   Las variables (--ink, --paper, --accent, --gradient, etc.)
   las define assets/components.css en :root, así que aquí ya
   están disponibles para cabecera y pie.
   ============================================================ */
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Manrope',sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{ max-width:100%; height:auto; }
a{ color:inherit; }

/* ============================================================
   CABECERA
   ============================================================ */
.rk-header{
  position:sticky; top:0; z-index:1000;
  background:var(--paper); /* fallback */
  background:color-mix(in srgb, var(--paper) 85%, transparent);
  backdrop-filter:saturate(140%) blur(14px);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
  border-bottom:1px solid var(--line);
}
.rk-header-inner{
  max-width:1200px; margin:0 auto;
  padding:14px clamp(20px,6vw,60px);
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.rk-logo{
  font-family:'Fraunces',serif; font-weight:700; font-size:1.55rem;
  letter-spacing:-.01em; text-decoration:none; line-height:1;
}
.rk-logo span{
  background:var(--gradient); -webkit-background-clip:text; background-clip:text; color:transparent;
}
.rk-logo-img{ display:inline-flex; align-items:center; }
.rk-logo-img a{ display:inline-flex; }
.rk-logo-img img,
.rk-logo-img .custom-logo{
  height:56px; width:auto; display:block;
  background:transparent; padding:0; border-radius:0; box-shadow:none;
}
@media (max-width:860px){ .rk-logo-img img,.rk-logo-img .custom-logo{ height:44px; } }
.rk-nav{ display:flex; align-items:center; gap:30px; }
.rk-nav a{
  position:relative; text-decoration:none; font-weight:600; font-size:.95rem; color:var(--ink);
}
.rk-nav a:not(.rk-cta)::after{
  content:''; position:absolute; left:0; bottom:-6px; width:100%; height:2px;
  background:var(--gradient); transform:scaleX(0); transform-origin:right;
  transition:transform .4s cubic-bezier(.2,.8,.2,1);
}
.rk-nav a:not(.rk-cta):hover::after,
.rk-nav a.current:not(.rk-cta)::after{ transform:scaleX(1); transform-origin:left; }
.rk-nav a.current:not(.rk-cta){ color:var(--accent); }

.rk-cta{
  padding:11px 24px; border-radius:999px; font-weight:700; color:#fff !important;
  background:var(--gradient); background-size:200% auto; background-position:0 center;
  box-shadow:0 10px 26px -12px rgba(210,26,99,.6);
  transition:transform .3s ease, background-position .5s ease, box-shadow .3s ease;
}
.rk-cta:hover{ transform:translateY(-2px); background-position:100% center; box-shadow:0 16px 30px -12px rgba(210,26,99,.65); }

.rk-burger{
  display:none; background:none; border:0; font-size:1.7rem; color:var(--ink);
  cursor:pointer; line-height:1; padding:4px 8px;
}

@media (max-width:860px){
  .rk-burger{ display:block; }
  .rk-nav{
    position:absolute; left:0; right:0; top:100%;
    flex-direction:column; align-items:stretch; gap:0;
    background:var(--paper); border-bottom:1px solid var(--line);
    padding:8px clamp(20px,6vw,60px) 22px;
    box-shadow:var(--shadow);
    transform:translateY(-150%); transition:transform .45s cubic-bezier(.2,.8,.2,1);
  }
  .rk-nav.open{ transform:translateY(0); }
  .rk-nav a{ padding:15px 0; border-bottom:1px solid var(--line); }
  .rk-nav a:not(.rk-cta)::after{ display:none; }
  .rk-cta{ margin-top:16px; text-align:center; }
}

/* ============================================================
   CONTENIDO
   ============================================================ */
#rk-main{ display:block; }

/* ============================================================
   PIE
   ============================================================ */
.rk-footer{ background:var(--ink); color:#e9e7f0; }
.rk-flogo{ display:inline-block; margin-bottom:20px; }
.rk-flogo img{
  height:84px; width:auto; display:block;
  background:transparent; padding:0; border-radius:0;
}
.rk-footer-inner{
  max-width:1200px; margin:0 auto;
  display:grid; gap:40px; grid-template-columns:1.1fr 1.1fr 1fr 1.2fr;
  padding:clamp(52px,7vw,84px) clamp(20px,6vw,60px) 44px;
}
.rk-fcol-logo{ padding-top:6px; }
.rk-keywords{ color:var(--accent2); line-height:1.95; font-size:.95rem; margin:0; max-width:none; }
.rk-footer h3{ font-family:'Fraunces',serif; font-size:1.7rem; color:#fff; margin:0 0 14px; }
.rk-footer h4{
  font-size:.78rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--accent2); margin:0 0 18px; font-weight:700;
}
.rk-footer p{ color:#b6b3c6; line-height:1.8; font-size:.96rem; margin:0; max-width:38ch; }
.rk-footer ul{ list-style:none; margin:0; padding:0; }
.rk-footer li{ color:#b6b3c6; line-height:1.5; margin-bottom:12px; font-size:.96rem; }
.rk-footer a{ color:#b6b3c6; text-decoration:none; transition:color .3s ease; }
.rk-footer a:hover{ color:#fff; }
.rk-flist a{ display:block; padding:5px 0; }
.rk-kit{
  background:#fff; padding:20px clamp(20px,6vw,60px); text-align:center;
}
.rk-kit img{
  max-width:1040px; width:100%; height:auto; display:inline-block; vertical-align:middle;
}
.rk-copy{
  border-top:1px solid rgba(255,255,255,.1);
  padding:22px clamp(20px,6vw,60px); text-align:center;
  font-size:.85rem; color:#8d8a9e;
}
@media (max-width:980px){
  .rk-footer-inner{ grid-template-columns:1fr 1fr; gap:36px; }
}
@media (max-width:560px){
  .rk-footer-inner{ grid-template-columns:1fr; gap:32px; }
}
