/*
Theme Name: Xianna Studio
Theme URI: https://xiannaarlet.com
Author: Xianna Studio
Description: Tema corporativo premium para Xianna Studio (agencia de marketing digital, SEO e IA). Sitio multipágina con menú, pie de página profesional, campos editables con ACF, formulario de contacto con Contact Form 7 y páginas legales para Perú (Ley N.° 29733 y Libro de Reclamaciones).
Version: 1.1.0
Requires at least: 5.8
Requires PHP: 7.4
License: Proprietary
Text Domain: xianna-studio
*/

:root{
  --ink:#0b0b0c;
  --ink-2:#161618;
  --ink-3:#1e1e21;
  --paper:#f7f5f0;
  --paper-dim:#cfcdc6;
  --yellow:#f2c230;
  --yellow-dim:#c79f2a;
  --line:rgba(247,245,240,0.10);
  --line-strong:rgba(247,245,240,0.18);
  --muted:#8f8e88;
  --radius:6px;
  --ease:cubic-bezier(.16,.8,.24,1);
  --dur-entrance:.8s;
  --dur-interact:.3s;
  --dur-type:.5s;
  --ease-out:cubic-bezier(.16,.8,.24,1);
  --ease-in-out:cubic-bezier(.65,0,.35,1);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--ink);color:var(--paper);font-family:'Inter',sans-serif;
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:'Fraunces',serif;font-weight:600;line-height:1.08;margin:0;letter-spacing:-0.01em;}
p{margin:0;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.xs-mono{font-family:'JetBrains Mono',monospace;}
.xs-eyebrow{
  font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--yellow);display:flex;align-items:center;gap:10px;
}
.xs-eyebrow::before{content:'';width:22px;height:1px;background:var(--yellow);display:inline-block;}
.xs-wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
section{position:relative;}
::selection{background:var(--yellow);color:var(--ink);}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.001ms !important;transition-duration:0.001ms !important;scroll-behavior:auto !important;}
}
svg.xs-icon{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}

/* ---------- reveal ---------- */
.xs-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.xs-reveal.xs-in{opacity:1;transform:translateY(0);}

/* ---------- header / nav ---------- */
#site-header{
  position:fixed;top:0;left:0;right:0;z-index:200;
  background:rgba(11,11,12,0.68);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  transition:background .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease);
}
#site-header.xs-scrolled{background:rgba(11,11,12,0.92);border-color:var(--line-strong);box-shadow:0 10px 40px -20px rgba(0,0,0,0.6);}
.xs-nav-inner{display:flex;align-items:center;justify-content:space-between;height:78px;}
.xs-logo{font-family:'Fraunces',serif;font-weight:600;font-size:19px;letter-spacing:.01em;color:var(--paper);flex-shrink:0;}
.xs-logo span{color:var(--yellow);}
.xs-links{display:flex;align-items:center;gap:4px;}
.xs-links a{font-family:'Inter',sans-serif;font-size:14px;font-weight:500;color:var(--paper-dim);padding:9px 15px;border-radius:30px;transition:color .25s,background .25s;}
.xs-links a:hover{color:var(--paper);background:rgba(247,245,240,0.06);}
.xs-links a.xs-active{color:var(--yellow);}
.xs-links a.xs-cta-btn{margin-left:10px;}
.xs-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;flex-shrink:0;}
.xs-burger span{width:22px;height:2px;background:var(--paper);border-radius:2px;transition:transform .25s,opacity .25s;}
.xs-mobile-menu{
  position:fixed;inset:0;top:78px;background:var(--ink);z-index:190;
  display:none;flex-direction:column;padding:10px 32px 40px;gap:0;
  border-top:1px solid var(--line);overflow-y:auto;
}
.xs-mobile-menu.xs-open{display:flex;}
.xs-mobile-menu a{font-family:'Fraunces',serif;font-size:22px;padding:18px 0;border-bottom:1px solid var(--line);color:var(--paper);}
.xs-mobile-menu a.xs-active{color:var(--yellow);}
@media(max-width:900px){
  .xs-links{display:none;}
  .xs-burger{display:flex;}
}

.xs-cta-btn{
  background:var(--yellow);color:var(--ink);padding:11px 22px;font-size:13.5px;font-weight:600;
  border-radius:30px;transition:transform .25s var(--ease),box-shadow .25s var(--ease);
  font-family:'Inter',sans-serif;display:inline-block;will-change:transform;
}
.xs-cta-btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px -8px rgba(242,194,48,0.45);}
.xs-cta-btn.xs-ghost{background:transparent;border:1px solid var(--line-strong);color:var(--paper);}
.xs-cta-btn.xs-ghost:hover{border-color:var(--yellow);box-shadow:none;}

/* ---------- hero ---------- */
.xs-hero{
  min-height:100vh;display:flex;align-items:center;padding:150px 0 90px;
  background:radial-gradient(ellipse 900px 500px at 80% -10%, rgba(242,194,48,0.10), transparent 60%),var(--ink);
  overflow:hidden;
}
.xs-hero-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:60px;align-items:center;}
.xs-hero h1{font-size:clamp(38px,5.4vw,66px);margin-top:18px;}
.xs-hero h1 em{font-style:normal;color:var(--yellow);}
.xs-hero .xs-sub{max-width:520px;color:var(--paper-dim);font-size:17.5px;margin-top:26px;line-height:1.7;}
.xs-hero .xs-ctas{display:flex;gap:16px;margin-top:38px;flex-wrap:wrap;}
.xs-hero .xs-microtrust{margin-top:34px;display:flex;gap:26px;color:var(--muted);font-size:12.5px;font-family:'JetBrains Mono',monospace;flex-wrap:wrap;}
.xs-hero .xs-microtrust span{display:flex;align-items:center;gap:8px;}
.xs-hero .xs-microtrust b{color:var(--yellow);}

/* ---------- fanned hero card stack ---------- */
.xs-stack{position:relative;height:460px;display:flex;align-items:center;justify-content:center;}
.xs-stack-card{
  position:absolute;width:230px;min-height:300px;border-radius:20px;padding:22px;
  display:flex;flex-direction:column;justify-content:space-between;
  box-shadow:0 30px 60px -20px rgba(0,0,0,0.55);
  transition:transform .5s var(--ease);opacity:0;animation:cardIn .7s var(--ease) forwards;
}
@keyframes cardIn{from{opacity:0;transform:translateY(30px) rotate(var(--r,0deg)) scale(.94);}to{opacity:1;transform:translateY(0) rotate(var(--r,0deg)) scale(1);}}
.xs-stack-card:hover{transform:translateY(-14px) rotate(calc(var(--r,0deg) * 1.25)) scale(1.05);z-index:9;box-shadow:0 40px 70px -20px rgba(0,0,0,0.6);}
.xs-stack-card .xs-icon-badge{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;}
.xs-stack-card .xs-tag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;opacity:.75;margin-top:auto;}
.xs-stack-card h4{font-family:'Fraunces',serif;font-size:20px;margin-top:6px;}
.xs-stack-card.xs-tone-ink{background:var(--ink-2);color:var(--paper);border:1px solid var(--line-strong);}
.xs-stack-card.xs-tone-ink .xs-icon-badge{background:rgba(242,194,48,0.12);color:var(--yellow);}
.xs-stack-card.xs-tone-yellow{background:var(--yellow);color:var(--ink);}
.xs-stack-card.xs-tone-yellow .xs-icon-badge{background:rgba(11,11,12,0.12);color:var(--ink);}
.xs-stack-card.xs-tone-paper{background:var(--paper);color:var(--ink);}
.xs-stack-card.xs-tone-paper .xs-icon-badge{background:rgba(11,11,12,0.06);color:var(--yellow-dim);}
.xs-card-1{--r:-14deg;z-index:1;top:8px;left:0;}
.xs-card-2{--r:-4deg;z-index:2;top:36px;left:70px;animation-delay:.15s;}
.xs-card-3{--r:7deg;z-index:3;top:6px;left:150px;animation-delay:.3s;}
.xs-card-4{--r:16deg;z-index:2;top:60px;left:220px;animation-delay:.45s;}

/* ---------- Nosotros: editorial watermark + manifesto ---------- */
.xs-hero-editorial{position:relative;overflow:hidden;}
.xs-watermark-img{
  position:absolute;top:50%;right:-2%;transform:translateY(-50%);
  width:min(46vw,620px);opacity:.16;pointer-events:none;z-index:0;user-select:none;
  animation:xsLogoFloat 10s ease-in-out infinite;
}
@keyframes xsLogoFloat{
  0%,100%{transform:translateY(-50%) translateY(0) rotate(0deg);}
  50%{transform:translateY(-50%) translateY(-14px) rotate(1.4deg);}
}
.xs-hero-editorial .xs-wrap{position:relative;z-index:1;}
@media(max-width:900px){
  .xs-watermark-img{width:64vw;opacity:.12;top:auto;bottom:-4%;right:50%;transform:translateX(50%);}
}
@media (prefers-reduced-motion: reduce){.xs-watermark-img{animation:none !important;}}

/* ---------- 3D flip cards ("¿Encajamos?") ---------- */
.xs-fit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.xs-fit-card{background:transparent;height:230px;perspective:1200px;cursor:pointer;}
.xs-fit-inner{position:relative;width:100%;height:100%;transition:transform .7s var(--ease-out);transform-style:preserve-3d;}
.xs-fit-card:hover .xs-fit-inner,.xs-fit-card:focus-within .xs-fit-inner,.xs-fit-card.xs-flipped .xs-fit-inner{transform:rotateY(180deg);}
.xs-fit-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:14px;padding:32px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;}
.xs-fit-front{background:var(--ink-2);border:1px solid var(--line-strong);}
.xs-fit-front .xs-num{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--yellow);letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;}
.xs-fit-front h4{font-family:'Fraunces',serif;font-size:25px;color:var(--paper);}
.xs-fit-front .xs-hint{margin-top:16px;font-size:11.5px;color:var(--muted);font-family:'JetBrains Mono',monospace;letter-spacing:.04em;}
.xs-fit-back{background:var(--yellow);transform:rotateY(180deg);}
.xs-fit-back p{font-family:'Fraunces',serif;font-style:italic;font-size:16.5px;line-height:1.5;color:var(--ink);}
@media(max-width:760px){.xs-fit-grid{grid-template-columns:1fr;}}

.xs-manifesto{display:flex;flex-direction:column;}
.xs-manifesto-item{display:grid;grid-template-columns:90px 1fr;gap:32px;padding:38px 0;border-top:1px solid var(--line);align-items:baseline;}
.xs-manifesto:last-child .xs-manifesto-item:last-child{border-bottom:1px solid var(--line);}
.xs-manifesto-item .xs-num{font-family:'Fraunces',serif;font-size:34px;color:var(--yellow);line-height:1;}
.xs-manifesto-item h3{font-size:23px;margin-bottom:10px;}
.xs-manifesto-item p{color:var(--paper-dim);font-size:15.5px;max-width:640px;line-height:1.7;}
@media(max-width:700px){.xs-manifesto-item{grid-template-columns:1fr;gap:10px;}}

.xs-avoid-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;}
.xs-avoid-item{display:flex;gap:16px;padding:22px 0;border-top:1px solid var(--line);align-items:flex-start;}
.xs-avoid-list .xs-avoid-item:nth-last-child(-n+2){border-bottom:1px solid var(--line);}
.xs-avoid-item .xs-x{font-family:'JetBrains Mono',monospace;color:var(--yellow);font-size:15px;flex-shrink:0;margin-top:2px;}
.xs-avoid-item p{color:var(--paper-dim);font-size:15px;line-height:1.6;}
@media(max-width:700px){.xs-avoid-list{grid-template-columns:1fr;}.xs-avoid-list .xs-avoid-item:nth-last-child(-n+2){border-bottom:none;}.xs-avoid-list .xs-avoid-item:last-child{border-bottom:1px solid var(--line);}}

/* ---------- Contacto: radar pulse hero + info/form layout ---------- */
.xs-hero-contact{position:relative;overflow:hidden;}
.xs-pulse-rings{position:absolute;top:50%;right:6%;transform:translateY(-50%);width:380px;height:380px;pointer-events:none;z-index:0;}
.xs-pulse-ring{position:absolute;inset:0;border:1px solid var(--yellow);border-radius:50%;opacity:0;animation:xsPulseRing 4.2s ease-out infinite;}
.xs-pulse-ring:nth-child(2){animation-delay:1.4s;}
.xs-pulse-ring:nth-child(3){animation-delay:2.8s;}
.xs-pulse-core{position:absolute;top:50%;left:50%;width:14px;height:14px;margin:-7px;border-radius:50%;background:var(--yellow);box-shadow:0 0 30px rgba(242,194,48,.5);}
@keyframes xsPulseRing{0%{transform:scale(.25);opacity:.55;}100%{transform:scale(1);opacity:0;}}
.xs-hero-contact .xs-wrap{position:relative;z-index:1;}
@media(max-width:900px){.xs-pulse-rings{width:260px;height:260px;right:50%;transform:translate(50%,-50%);opacity:.6;}}
@media (prefers-reduced-motion: reduce){.xs-pulse-ring{animation:none !important;opacity:.2 !important;}}

.xs-contact-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:70px;align-items:start;}
@media(max-width:900px){.xs-contact-grid{grid-template-columns:1fr;gap:50px;}}
.xs-contact-steps{display:flex;flex-direction:column;gap:0;margin-top:8px;}
.xs-contact-step{display:flex;gap:18px;padding:22px 0;border-top:1px solid var(--line);}
.xs-contact-step:last-child{border-bottom:1px solid var(--line);}
.xs-contact-step .xs-num{font-family:'Fraunces',serif;font-size:28px;color:var(--yellow);line-height:1;flex-shrink:0;width:38px;}
.xs-contact-step h4{font-size:16px;font-family:'Inter',sans-serif;font-weight:600;}
.xs-contact-step p{margin-top:6px;font-size:14px;color:var(--paper-dim);line-height:1.6;}
.xs-contact-info{margin-top:36px;display:flex;flex-direction:column;gap:16px;}
.xs-contact-info-item{display:flex;align-items:center;gap:14px;}
.xs-contact-info-item .xs-ico{width:36px;height:36px;border-radius:10px;background:rgba(242,194,48,0.12);color:var(--yellow);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.xs-contact-info-item a,.xs-contact-info-item span{font-size:14.5px;color:var(--paper-dim);}
.xs-contact-info-item a:hover{color:var(--paper);}

/* ---------- IA: neural network hero background ---------- */
.xs-hero-ai{position:relative;}
.xs-hero-neural-wrap{
  position:absolute;top:50%;right:-6%;transform:translateY(-50%);
  width:min(56vw,720px);height:min(56vw,720px);max-height:88%;pointer-events:none;z-index:0;
  -webkit-mask-image:radial-gradient(ellipse 70% 70% at 55% 45%, black 55%, transparent 100%);
  mask-image:radial-gradient(ellipse 70% 70% at 55% 45%, black 55%, transparent 100%);
}
.xs-hero-neural{width:100%;height:100%;overflow:visible;}
.xs-neu-lines line{stroke:var(--line-strong);stroke-width:1;}
.xs-neu-node{fill:var(--yellow);opacity:.55;animation:neuPulse 4.6s ease-in-out infinite;}
.xs-neu-node.xs-node-core{fill:var(--yellow);opacity:.85;filter:drop-shadow(0 0 6px rgba(242,194,48,.5));}
@keyframes neuPulse{0%,100%{opacity:.35;}50%{opacity:.85;}}
.xs-neu-pulse{fill:var(--yellow);filter:drop-shadow(0 0 4px rgba(242,194,48,.8));}
.xs-hero-ai .xs-hero-grid,.xs-hero-ai > .xs-wrap > div{position:relative;z-index:1;}
@media(max-width:900px){
  .xs-hero-neural-wrap{position:absolute;top:auto;bottom:-8%;right:50%;transform:translateX(50%);width:130vw;height:60vw;opacity:.5;}
}
@media (prefers-reduced-motion: reduce){
  .xs-neu-node{animation:none !important;opacity:.55 !important;}
  .xs-neu-pulse{display:none !important;}
}

/* ---------- generic section spacing ---------- */
.xs-section{padding:120px 0;border-top:1px solid var(--line);}
.xs-section.xs-tight{padding:90px 0;}
.xs-section-head{max-width:640px;margin-bottom:64px;}
.xs-section-head h2{font-size:clamp(28px,3.6vw,44px);margin-top:16px;}
.xs-section-head .xs-desc{color:var(--paper-dim);margin-top:18px;font-size:16.5px;line-height:1.75;}
.xs-section.xs-on-paper{background:var(--paper);color:var(--ink);}
.xs-section.xs-on-paper .xs-eyebrow{color:var(--yellow-dim);}
.xs-section.xs-on-paper .xs-section-head .xs-desc{color:#4a4a45;}

/* ---------- partner strip ---------- */
.xs-partner-strip{display:flex;flex-wrap:wrap;gap:36px;align-items:center;justify-content:space-between;padding:26px 0;border-bottom:1px solid var(--line);opacity:.75;}
.xs-partner-strip span{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;}

/* ---------- dynamic tile grid ---------- */
.xs-tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.xs-tile-grid.xs-cols-4{grid-template-columns:repeat(4,1fr);}
.xs-tile-grid.xs-cols-3{grid-template-columns:repeat(3,1fr);}
.xs-tile-grid.xs-stack{grid-template-columns:1fr;}
.xs-tile-grid.xs-cols-2{grid-template-columns:1fr 1fr;}
@media(max-width:900px){.xs-tile-grid.xs-cols-4{grid-template-columns:repeat(2,1fr);}.xs-tile-grid.xs-cols-3{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.xs-tile-grid.xs-cols-4{grid-template-columns:1fr;}.xs-tile-grid.xs-cols-3{grid-template-columns:1fr;}}
@media(max-width:760px){.xs-tile-grid.xs-cols-2{grid-template-columns:1fr;}}
.xs-tile{
  border-radius:var(--radius);padding:30px;position:relative;overflow:hidden;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease);
  display:flex;flex-direction:column;gap:16px;min-height:220px;border:1px solid transparent;
}
.xs-tile:hover{transform:translateY(-6px) rotate(-0.4deg);box-shadow:0 24px 50px -20px rgba(0,0,0,0.5);}
.xs-tile.xs-tone-ink{background:var(--ink-2);border-color:var(--line-strong);}
.xs-tile.xs-tone-yellow{background:var(--yellow);color:var(--ink);}
.xs-tile.xs-tone-paper{background:var(--paper);color:var(--ink);}
.xs-tile .xs-icon-badge{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .35s var(--ease-out);}
.xs-tile:hover .xs-icon-badge{transform:translateY(-3px) rotate(-4deg);}
.xs-tile.xs-tone-ink .xs-icon-badge{background:rgba(242,194,48,0.12);color:var(--yellow);}
.xs-tile.xs-tone-yellow .xs-icon-badge{background:rgba(11,11,12,0.1);color:var(--ink);}
.xs-tile.xs-tone-paper .xs-icon-badge{background:rgba(11,11,12,0.06);color:var(--yellow-dim);}
.xs-tile h3,.xs-tile h4{font-family:'Fraunces',serif;}
.xs-tile h3{font-size:22px;}
.xs-tile h4{font-size:18px;}
.xs-tile p.xs-lede{font-size:14.5px;line-height:1.6;}
.xs-tile.xs-tone-ink p.xs-lede{color:var(--paper-dim);}
.xs-tile.xs-tone-yellow p.xs-lede{color:rgba(11,11,12,0.75);}
.xs-tile.xs-tone-paper p.xs-lede{color:#4a4a45;}
.xs-tile ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;}
.xs-tile li{font-size:13px;padding-left:13px;position:relative;}
.xs-tile.xs-tone-ink li{color:var(--muted);}
.xs-tile.xs-tone-yellow li{color:rgba(11,11,12,0.7);}
.xs-tile.xs-tone-paper li{color:#66655f;}
.xs-tile li::before{content:'';position:absolute;left:0;top:7px;width:6px;height:1px;background:currentColor;opacity:.6;}
.xs-tile .xs-go{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;}
.xs-tile .xs-go svg{width:14px;height:14px;transition:transform .25s var(--ease);}
.xs-tile:hover .xs-go svg{transform:translate(3px,-3px);}
.xs-tile .xs-key{font-family:'Fraunces',serif;font-style:italic;font-size:15.5px;}
.xs-tile.xs-wide{grid-column:span 2;}
@media(max-width:760px){.xs-tile.xs-wide{grid-column:span 1;}}
.xs-tile::before{content:'';position:absolute;left:0;right:0;top:0;height:2px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease-out);}
.xs-tile:hover::before{transform:scaleX(1);}
.xs-tile.xs-tone-ink:hover{border-color:var(--yellow-dim);}
.xs-tile.xs-tone-yellow:hover,.xs-tile.xs-tone-paper:hover{border-color:rgba(11,11,12,0.25);}
.xs-tile .xs-secondary{max-height:0;opacity:0;overflow:hidden;transition:max-height .4s var(--ease-out),opacity .35s var(--ease-out);font-size:12.5px;}
.xs-tile:hover .xs-secondary{max-height:60px;opacity:.85;margin-top:-6px;}

/* ---------- ads split ---------- */
.xs-ads-tag{font-family:'JetBrains Mono',monospace;font-size:11px;text-transform:uppercase;letter-spacing:.1em;opacity:.7;}
.xs-pill-row{display:flex;flex-wrap:wrap;gap:8px;}
.xs-pill{padding:6px 12px;font-size:12px;border-radius:20px;font-family:'JetBrains Mono',monospace;}
.xs-tile.xs-tone-ink .xs-pill{border:1px solid var(--line-strong);color:var(--paper-dim);}
.xs-tile.xs-tone-yellow .xs-pill{background:rgba(11,11,12,0.1);color:var(--ink);}
.xs-tile.xs-tone-paper .xs-pill{background:rgba(11,11,12,0.06);color:#4a4a45;}

/* ---------- seo band ---------- */
.xs-seo-band{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.xs-seo-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;}
.xs-seo-list li{font-size:14.5px;color:#3a3a36;padding-left:16px;position:relative;}
.xs-seo-list li::before{content:'';position:absolute;left:0;top:9px;width:8px;height:1px;background:var(--yellow-dim);}
.xs-seo-visual{border:1px solid #e2e0d8;border-radius:16px;padding:28px;background:#fff;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:#6b6a63;}
.xs-seo-visual .xs-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #ece9e0;}
.xs-seo-visual .xs-row:last-child{border-bottom:none;}
.xs-seo-visual b{color:var(--ink);}

/* ---------- AI section ---------- */
.xs-ai-section{background:var(--ink-2);}
.xs-ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;}
.xs-ai-list{list-style:none;padding:0;margin:30px 0 0;display:flex;flex-direction:column;gap:0;}
.xs-ai-list li{display:flex;gap:16px;padding:20px 0;border-top:1px solid var(--line);font-size:15px;color:var(--paper-dim);align-items:flex-start;}
.xs-ai-list li:last-child{border-bottom:1px solid var(--line);}
.xs-ai-list .xs-ico{width:34px;height:34px;border-radius:9px;background:rgba(242,194,48,0.12);color:var(--yellow);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.xs-ai-list b{color:var(--paper);display:block;font-weight:600;margin-bottom:3px;}
.xs-ai-badge{
  border:1px solid var(--line-strong);padding:30px;border-radius:16px;
  font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--muted);position:sticky;top:120px;background:var(--ink);
}
.xs-ai-badge .xs-line{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed var(--line);}
.xs-ai-badge .xs-line:last-child{border-bottom:none;}
.xs-ai-badge .xs-status{color:var(--yellow);}

/* ---------- agents ---------- */
.xs-agent-chain{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;}
.xs-agent-step{padding:26px 20px;border-radius:14px;background:var(--ink-2);border:1px solid var(--line-strong);transition:transform .3s var(--ease);}
.xs-agent-step:hover{transform:translateY(-5px);border-color:var(--yellow-dim);}
.xs-agent-step .xs-ico{width:34px;height:34px;border-radius:9px;background:rgba(242,194,48,0.12);color:var(--yellow);display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.xs-agent-step .xs-verb{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--yellow);letter-spacing:.1em;}
.xs-agent-step p{margin-top:8px;font-size:13.5px;color:var(--paper-dim);}
@media(max-width:900px){.xs-agent-chain{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.xs-agent-chain{grid-template-columns:repeat(2,1fr);}}

/* ---------- 24/7 clock ---------- */
.xs-clock-wrap{display:flex;justify-content:center;padding:20px 0 10px;}
.xs-clock{position:relative;width:280px;height:280px;border-radius:50%;border:1px solid var(--line-strong);}
.xs-clock::before{content:'';position:absolute;inset:34px;border-radius:50%;border:1px dashed var(--line);}
.xs-clock .xs-mark{position:absolute;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);}
.xs-clock .xs-hand{position:absolute;top:50%;left:50%;width:2px;height:105px;margin-left:-1px;margin-top:-105px;background:var(--yellow);transform-origin:bottom center;animation:spin 16s linear infinite;}
@keyframes spin{to{transform:rotate(360deg) translateX(-1px);}}
.xs-timeline-247{list-style:none;margin:50px auto 0;padding:0;max-width:640px;display:flex;flex-direction:column;}
.xs-timeline-247 li{padding:16px 0 16px 30px;border-left:1px solid var(--line-strong);position:relative;font-size:14.5px;color:var(--paper-dim);}
.xs-timeline-247 li::before{content:'';position:absolute;left:-4px;top:22px;width:7px;height:7px;border-radius:50%;background:var(--yellow);}
.xs-timeline-247 li:last-child{border-left:1px solid transparent;}

/* ---------- process ---------- */
.xs-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative;}
.xs-process-grid::before{content:'';position:absolute;top:36px;left:5%;right:5%;height:1px;background:var(--line-strong);z-index:0;}
.xs-process-line-dot{position:absolute;top:35px;width:6px;height:6px;border-radius:50%;background:var(--yellow);z-index:1;animation:travelLine 6s linear infinite;}
@keyframes travelLine{0%{left:5%;opacity:0;}10%{opacity:1;}90%{opacity:1;}100%{left:93%;opacity:0;}}
.xs-process-card{background:var(--ink-2);border:1px solid var(--line-strong);border-radius:16px;padding:32px 26px;transition:transform .3s var(--ease);}
.xs-process-card:hover{transform:translateY(-6px);}
.xs-process-card .xs-num{font-family:'Fraunces',serif;font-size:34px;color:var(--yellow);}
.xs-process-card h4{margin-top:12px;font-size:17px;font-family:'Inter',sans-serif;font-weight:600;letter-spacing:.02em;}
.xs-process-card p{margin-top:10px;color:var(--muted);font-size:14px;}
@media(max-width:900px){.xs-process-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.xs-process-grid{grid-template-columns:1fr;}}

/* ---------- differentials ---------- */
.xs-diff-list{display:flex;flex-direction:column;}
.xs-diff-row{display:grid;grid-template-columns:44px 200px 1fr;gap:22px;align-items:flex-start;padding:26px 0;border-top:1px solid var(--line);}
.xs-diff-list .xs-diff-row:last-child{border-bottom:1px solid var(--line);}
.xs-diff-row .xs-ico{width:38px;height:38px;border-radius:10px;background:rgba(242,194,48,0.1);color:var(--yellow);display:flex;align-items:center;justify-content:center;}
.xs-diff-row h4{font-family:'Inter',sans-serif;font-weight:600;font-size:16px;}
.xs-diff-row p{color:var(--paper-dim);font-size:14.5px;max-width:560px;}
@media(max-width:700px){.xs-diff-row{grid-template-columns:38px 1fr;}.xs-diff-row h4{grid-column:2;}.xs-diff-row p{grid-column:2;}}

/* ---------- ecosystem interactive ---------- */
.xs-ecosystem{position:relative;height:560px;max-width:640px;margin:0 auto;}
.xs-eco-center{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:150px;height:150px;border-radius:50%;
  background:var(--yellow);color:var(--ink);display:flex;align-items:center;justify-content:center;text-align:center;
  font-family:'Fraunces',serif;font-weight:600;font-size:15px;z-index:6;padding:10px;line-height:1.15;
  box-shadow:0 0 0 1px var(--ink), 0 0 60px rgba(242,194,48,.25);
}
.xs-eco-node-btn{
  position:absolute;background:var(--ink-2);border:1px solid var(--line-strong);color:var(--paper);
  padding:12px 16px;border-radius:30px;font-family:'JetBrains Mono',monospace;font-size:12.5px;
  cursor:pointer;transition:all .3s var(--ease);z-index:5;
}
.xs-eco-node-btn:hover,.xs-eco-node-btn.xs-active{border-color:var(--yellow);background:var(--yellow);color:var(--ink);}
.xs-eco-lines{position:absolute;inset:0;z-index:1;}
.xs-eco-lines line{stroke:var(--line-strong);stroke-width:1;}
.xs-eco-detail{
  margin-top:30px;border:1px solid var(--line);padding:22px 26px;font-size:14.5px;color:var(--paper-dim);
  min-height:70px;max-width:640px;margin-left:auto;margin-right:auto;transition:opacity .3s;border-radius:16px;
}
.xs-eco-detail b{color:var(--yellow);font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.06em;display:block;margin-bottom:8px;text-transform:uppercase;}
@media(max-width:640px){
  .xs-ecosystem{height:auto;position:static;display:flex;flex-direction:column;gap:10px;}
  .xs-eco-lines{display:none;}
  .xs-eco-center{position:static;transform:none;margin:0 auto 14px;width:120px;height:120px;font-size:13px;}
  .xs-eco-node-btn{position:static !important;width:100%;text-align:center;}
}

/* ---------- projects / testimonials ---------- */
.xs-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.xs-case-card{background:var(--ink-2);border:1px solid var(--line-strong);border-radius:16px;padding:30px 26px;min-height:280px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .3s var(--ease);}
.xs-case-card:hover{transform:translateY(-6px);}
.xs-case-card .xs-tag{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);}
.xs-case-steps{list-style:none;padding:0;margin:18px 0 0;font-size:13.5px;color:var(--paper-dim);display:flex;flex-direction:column;gap:6px;}
.xs-case-steps li::before{content:'· ';color:var(--yellow);}
.xs-case-card .xs-slot{border:1px dashed var(--line-strong);border-radius:10px;padding:14px;text-align:center;font-size:12.5px;color:var(--muted);margin-top:20px;font-family:'JetBrains Mono',monospace;}
@media(max-width:900px){.xs-case-grid{grid-template-columns:1fr;}}

.xs-testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.xs-testi-card{background:var(--ink-2);border:1px solid var(--line-strong);border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:16px;transition:transform .3s var(--ease);}
.xs-testi-card:hover{transform:translateY(-6px);}
.xs-testi-card .xs-top-row{display:flex;justify-content:space-between;align-items:center;}
.xs-testi-card .xs-stars{color:var(--yellow);font-size:13px;letter-spacing:2px;}
.xs-avatar-stub{width:34px;height:34px;border-radius:50%;background:rgba(242,194,48,0.14);color:var(--yellow);display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:11px;}
.xs-testi-card .xs-slot{border:1px dashed var(--line-strong);border-radius:10px;padding:20px;text-align:center;font-size:12.5px;color:var(--muted);font-family:'JetBrains Mono',monospace;flex:1;display:flex;align-items:center;justify-content:center;}
@media(max-width:900px){.xs-testi-grid{grid-template-columns:1fr;}}

/* ---------- faq ---------- */
.xs-faq-item{border-top:1px solid var(--line);}
.xs-faq-item:last-child{border-bottom:1px solid var(--line);}
.xs-faq-q{
  width:100%;text-align:left;background:none;border:none;color:var(--paper);cursor:pointer;
  padding:24px 0;display:flex;justify-content:space-between;align-items:center;font-size:16.5px;font-family:'Fraunces',serif;font-weight:500;
}
.xs-faq-q .xs-plus{font-family:'JetBrains Mono',monospace;color:var(--yellow);transition:transform .3s;font-size:18px;}
.xs-faq-item.xs-open .xs-plus{transform:rotate(45deg);}
.xs-faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease);}
.xs-faq-a p{padding-bottom:22px;color:var(--paper-dim);font-size:15px;max-width:760px;line-height:1.7;}

/* ---------- final CTA + form ---------- */
.xs-cta-final{background:linear-gradient(180deg,var(--ink) 0%, var(--ink-2) 100%);}
.xs-cta-final-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;}
.xs-cta-final h2{font-size:clamp(30px,4vw,48px);}
.xs-cta-final .xs-sub{color:var(--paper-dim);margin-top:20px;font-size:16.5px;max-width:460px;}
.xs-cta-final .xs-ctas{display:flex;gap:16px;margin-top:34px;flex-wrap:wrap;}
form.xs-lead{display:flex;flex-direction:column;gap:16px;background:var(--ink-2);border:1px solid var(--line-strong);border-radius:18px;padding:34px;}
.xs-field{display:flex;flex-direction:column;gap:8px;}
.xs-field label{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;}
.xs-field input,.xs-field select,.xs-field textarea{
  background:transparent;border:none;border-bottom:1px solid var(--line-strong);color:var(--paper);
  padding:10px 2px;font-family:'Inter',sans-serif;font-size:15px;transition:border-color .25s;
}
.xs-field input:focus,.xs-field select:focus,.xs-field textarea:focus{outline:none;border-color:var(--yellow);}
.xs-field select option{background:var(--ink-2);}
.xs-field textarea{resize:vertical;min-height:70px;}
form.xs-lead .xs-submit{
  margin-top:10px;background:var(--yellow);color:var(--ink);border:none;padding:15px 26px;font-weight:600;
  font-family:'Inter',sans-serif;font-size:14.5px;cursor:pointer;border-radius:30px;transition:transform .25s var(--ease);align-self:flex-start;
}
form.xs-lead .xs-submit:hover{transform:translateY(-2px);}

/* ---------- footer ---------- */
footer{background:var(--ink-2);border-top:1px solid var(--line);padding:80px 0 0;position:relative;z-index:1;}
.xs-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:50px;padding-bottom:56px;border-bottom:1px solid var(--line);}
.xs-footer-brand .xs-logo{font-size:20px;margin-bottom:14px;display:inline-block;}
.xs-footer-brand p{color:var(--muted);font-size:14px;line-height:1.7;max-width:280px;}
footer h5{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);margin-bottom:18px;}
footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px;}
footer ul a{font-size:14px;color:var(--paper-dim);transition:color .25s;}
footer ul a:hover{color:var(--yellow);}
.xs-footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:26px 0;font-size:12.5px;color:var(--muted);}
.xs-footer-legal-row{border-top:1px solid var(--line);padding:20px 0 30px;display:flex;flex-wrap:wrap;gap:20px;font-size:12px;}
.xs-footer-legal-row a{color:var(--muted);}
.xs-footer-legal-row a:hover{color:var(--yellow);}
@media(max-width:900px){.xs-footer-grid{grid-template-columns:1fr 1fr;}.xs-footer-brand{grid-column:1/-1;}}
@media(max-width:560px){.xs-footer-grid{grid-template-columns:1fr;}}

/* ---------- whatsapp float ---------- */
.xs-wa-float{
  position:fixed;bottom:26px;right:26px;z-index:150;background:var(--yellow);color:var(--ink);
  padding:14px 20px;border-radius:30px;font-size:13.5px;font-weight:600;display:flex;align-items:center;gap:10px;
  box-shadow:0 10px 30px -8px rgba(0,0,0,0.5);transition:transform .25s var(--ease);
}
.xs-wa-float:hover{transform:translateY(-3px);}
.xs-wa-float .xs-pulse{width:8px;height:8px;border-radius:50%;background:var(--ink);animation:pulse 1.8s infinite;}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(11,11,12,.5);}70%{box-shadow:0 0 0 8px rgba(11,11,12,0);}100%{box-shadow:0 0 0 0 rgba(11,11,12,0);}}

/* ---------- legal pages ---------- */
.xs-legal-content{max-width:820px;}
.xs-legal-content h2{font-size:1.5rem;font-weight:700;margin:44px 0 16px;color:var(--yellow);font-family:'Fraunces',serif;}
.xs-legal-content h2:first-child{margin-top:0;}
.xs-legal-content p{color:var(--paper-dim);margin-bottom:16px;font-size:1rem;line-height:1.75;}
.xs-legal-content ul{color:var(--paper-dim);margin:0 0 16px 22px;}
.xs-legal-content li{margin-bottom:8px;}
.xs-legal-content strong{color:var(--paper);}
.xs-legal-content a{color:var(--yellow);text-decoration:underline;}
.xs-legal-content .xs-updated{font-size:0.85rem;color:var(--muted);font-style:italic;margin-bottom:40px;}
.xs-legal-badge{margin:24px 0;}
.xs-legal-badge img{height:90px;width:auto;}

@media(max-width:900px){
  .xs-hero-grid{grid-template-columns:1fr;}
  .xs-stack{height:340px;margin-top:20px;transform:scale(.86);}
  .xs-ai-grid,.xs-seo-band,.xs-cta-final-grid{grid-template-columns:1fr;gap:40px;}
  .xs-ai-badge{position:static;}
  .xs-case-grid,.xs-testi-grid{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .xs-wrap{padding:0 20px;}
  .xs-section{padding:80px 0;}
  .xs-tile ul{grid-template-columns:1fr;}
}

/* =========================================================
   MOTION SYSTEM
   ========================================================= */
.xs-bg-ambient{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;}
.xs-bg-ambient .xs-orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.16;will-change:transform;}
.xs-bg-ambient .xs-orb.xs-o1{width:520px;height:520px;background:radial-gradient(circle,var(--yellow),transparent 70%);top:-10%;left:-8%;animation:floatA 26s ease-in-out infinite;}
.xs-bg-ambient .xs-orb.xs-o2{width:420px;height:420px;background:radial-gradient(circle,#ffffff,transparent 70%);top:30%;right:-10%;opacity:.05;animation:floatB 32s ease-in-out infinite;}
.xs-bg-ambient .xs-orb.xs-o3{width:360px;height:360px;background:radial-gradient(circle,var(--yellow),transparent 70%);bottom:-6%;left:20%;opacity:.10;animation:floatC 22s ease-in-out infinite;}
.xs-bg-ambient .xs-orb.xs-o4{width:300px;height:300px;background:radial-gradient(circle,#ffffff,transparent 70%);top:62%;left:55%;opacity:.045;animation:floatA 30s ease-in-out infinite reverse;}
@keyframes floatA{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(40px,60px) scale(1.08);}}
@keyframes floatB{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(-50px,40px) scale(.94);}}
@keyframes floatC{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(30px,-40px) scale(1.06);}}
.xs-bg-ambient .xs-grid-dots{
  position:absolute;inset:0;opacity:.4;
  background-image:radial-gradient(rgba(247,245,240,0.06) 1px, transparent 1px);
  background-size:34px 34px;mask-image:radial-gradient(ellipse 80% 60% at 50% 0%, black 40%, transparent 100%);
}
main{position:relative;z-index:1;}

.xs-cursor-glow{
  position:fixed;top:0;left:0;width:420px;height:420px;border-radius:50%;pointer-events:none;z-index:2;
  background:radial-gradient(circle,rgba(242,194,48,0.06),transparent 70%);
  transform:translate(-50%,-50%);will-change:transform;transition:opacity .4s;
}
@media(max-width:900px){.xs-cursor-glow{display:none;}}

.xs-section-head h2.xs-word-reveal{opacity:1;transform:none;}
.xs-word-reveal .xs-w{display:inline-block;opacity:0;transform:translateY(0.4em);filter:blur(6px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out),filter .6s var(--ease-out);}
.xs-word-reveal.xs-in .xs-w{opacity:1;transform:translateY(0);filter:blur(0);}

.xs-blur-in{opacity:0;filter:blur(8px);transform:translateY(10px);transition:opacity .9s var(--ease-out),filter .9s var(--ease-out),transform .9s var(--ease-out);}
.xs-blur-in.xs-in{opacity:1;filter:blur(0);transform:translateY(0);}

.xs-tile-grid.xs-reveal .xs-tile,.xs-process-grid.xs-reveal .xs-process-card,.xs-case-grid.xs-reveal .xs-case-card,.xs-testi-grid.xs-reveal .xs-testi-card,.xs-agent-chain.xs-reveal .xs-agent-step{
  opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);
}
.xs-tile-grid.xs-in .xs-tile,.xs-process-grid.xs-in .xs-process-card,.xs-case-grid.xs-in .xs-case-card,.xs-testi-grid.xs-in .xs-testi-card,.xs-agent-chain.xs-in .xs-agent-step{opacity:1;transform:translateY(0);}
.xs-tile-grid .xs-tile:nth-child(1),.xs-process-grid .xs-process-card:nth-child(1),.xs-case-grid .xs-case-card:nth-child(1),.xs-testi-grid .xs-testi-card:nth-child(1),.xs-agent-chain .xs-agent-step:nth-child(1){transition-delay:0ms;}
.xs-tile-grid .xs-tile:nth-child(2),.xs-process-grid .xs-process-card:nth-child(2),.xs-case-grid .xs-case-card:nth-child(2),.xs-testi-grid .xs-testi-card:nth-child(2),.xs-agent-chain .xs-agent-step:nth-child(2){transition-delay:80ms;}
.xs-tile-grid .xs-tile:nth-child(3),.xs-process-grid .xs-process-card:nth-child(3),.xs-case-grid .xs-case-card:nth-child(3),.xs-testi-grid .xs-testi-card:nth-child(3),.xs-agent-chain .xs-agent-step:nth-child(3){transition-delay:160ms;}
.xs-tile-grid .xs-tile:nth-child(4),.xs-process-grid .xs-process-card:nth-child(4),.xs-agent-chain .xs-agent-step:nth-child(4){transition-delay:240ms;}
.xs-agent-chain .xs-agent-step:nth-child(5){transition-delay:320ms;}
.xs-agent-chain .xs-agent-step:nth-child(6){transition-delay:400ms;}

.xs-marquee-wrap{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);}
.xs-marquee-track{display:flex;gap:56px;width:max-content;animation:marquee 34s linear infinite;}
.xs-marquee-wrap:hover .xs-marquee-track{animation-play-state:paused;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.xs-marquee-item{display:flex;align-items:center;gap:10px;font-family:'JetBrains Mono',monospace;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;opacity:.8;}
.xs-marquee-item svg{width:16px;height:16px;stroke:var(--yellow);opacity:.8;}

.xs-ai-nodes{position:relative;height:360px;margin-top:60px;}
.xs-ai-nodes .xs-core-node{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:130px;height:130px;border-radius:50%;
  background:var(--ink);border:1px solid var(--yellow-dim);display:flex;align-items:center;justify-content:center;
  font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.06em;color:var(--yellow);text-align:center;z-index:3;
  box-shadow:0 0 50px rgba(242,194,48,.12);animation:pulseCore 4s ease-in-out infinite;
}
@keyframes pulseCore{0%,100%{box-shadow:0 0 40px rgba(242,194,48,.10);}50%{box-shadow:0 0 60px rgba(242,194,48,.22);}}
.xs-ai-nodes svg{position:absolute;inset:0;width:100%;height:100%;z-index:1;}
.xs-ai-nodes svg path{stroke:var(--line-strong);stroke-width:1;fill:none;}
.xs-ai-nodes svg circle.xs-dot{fill:var(--yellow);}
.xs-ai-nodes .xs-ai-leaf{
  position:absolute;background:var(--ink-2);border:1px solid var(--line-strong);border-radius:10px;padding:9px 13px;
  font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--paper-dim);z-index:2;transform:translate(-50%,-50%);
}

.xs-chat-sim{max-width:420px;margin:60px auto 0;display:flex;flex-direction:column;gap:12px;}
.xs-chat-bubble{padding:12px 16px;border-radius:14px;font-size:13.5px;line-height:1.5;max-width:82%;opacity:0;transform:translateY(10px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out);}
.xs-chat-sim.xs-in .xs-chat-bubble{opacity:1;transform:translateY(0);}
.xs-chat-sim.xs-in .xs-chat-bubble:nth-child(1){transition-delay:.1s;}
.xs-chat-sim.xs-in .xs-chat-bubble:nth-child(2){transition-delay:.9s;}
.xs-chat-sim.xs-in .xs-chat-bubble:nth-child(3){transition-delay:1.7s;}
.xs-chat-sim.xs-in .xs-chat-bubble:nth-child(4){transition-delay:2.5s;}
.xs-chat-bubble.xs-user{align-self:flex-end;background:var(--yellow);color:var(--ink);border-bottom-right-radius:4px;}
.xs-chat-bubble.xs-bot{align-self:flex-start;background:var(--ink-2);border:1px solid var(--line-strong);border-bottom-left-radius:4px;}
.xs-chat-bubble .xs-who{display:block;font-family:'JetBrains Mono',monospace;font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.6;margin-bottom:4px;}

.xs-type-cursor{display:inline-block;width:2px;background:var(--yellow);margin-left:2px;animation:blink 1s steps(1) infinite;}
@keyframes blink{0%,49%{opacity:1;}50%,100%{opacity:0;}}

@media (prefers-reduced-motion: reduce){
  .xs-bg-ambient .xs-orb{animation:none !important;}
  .xs-marquee-track{animation:none !important;}
  .xs-cursor-glow{display:none !important;}
  .xs-ai-nodes .xs-core-node{animation:none !important;}
  .xs-process-line-dot{display:none !important;}
  .xs-type-cursor{animation:none !important;}
}

/* === XS-ADDITIONS-START === */

/* =========================================================
   LOGOS OFICIALES (cabecera y pie)
   ========================================================= */
.xs-logo{display:inline-flex;align-items:center;line-height:0;}
.xs-logo-img{height:56px;width:auto;display:block;transition:transform .35s var(--ease),filter .35s var(--ease);}
.xs-logo:hover .xs-logo-img{transform:scale(1.04);filter:drop-shadow(0 6px 18px rgba(242,194,48,.28));}
.xs-footer-brand .xs-logo{display:inline-flex;margin-bottom:20px;}
.xs-footer-brand .xs-logo-img{height:88px;}
.xs-footer-badge{display:inline-block;margin-top:26px;opacity:.9;transition:opacity .25s,transform .25s var(--ease);}
.xs-footer-badge img{height:58px;width:auto;}
.xs-footer-badge:hover{opacity:1;transform:translateY(-2px);}
@media(max-width:600px){
  .xs-logo-img{height:46px;}
  .xs-footer-brand .xs-logo-img{height:72px;}
}

/* =========================================================
   WORDPRESS: barra de administración y accesibilidad
   ========================================================= */
body.admin-bar #site-header{top:32px;}
body.admin-bar .xs-mobile-menu{top:110px;}
@media(max-width:782px){
  body.admin-bar #site-header{top:46px;}
  body.admin-bar .xs-mobile-menu{top:124px;}
}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;}

/* =========================================================
   FORMULARIO DE CONTACTO (Contact Form 7)
   ========================================================= */
.xs-cf7-wrap{min-width:0;}
.xs-cf7-wrap .wpcf7{margin:0;}
.xs-cf7-wrap .wpcf7-form-control-wrap{display:block;}
.xs-cf7-wrap .wpcf7-form,
.xs-cf7-fallback{
  display:flex;flex-direction:column;gap:16px;background:var(--ink-2);
  border:1px solid var(--line-strong);border-radius:18px;padding:34px;
}
/* Cualquier formulario CF7 pegado por shortcode (sin las clases .xs-field) */
.xs-cf7-wrap .wpcf7-form p{margin:0;display:flex;flex-direction:column;gap:8px;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;}
.xs-cf7-wrap .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.xs-cf7-wrap .wpcf7-form select,
.xs-cf7-wrap .wpcf7-form textarea{
  width:100%;background:transparent;border:none;border-bottom:1px solid var(--line-strong);color:var(--paper);
  padding:10px 2px;font-family:'Inter',sans-serif;font-size:15px;text-transform:none;letter-spacing:0;transition:border-color .25s;border-radius:0;
}
.xs-cf7-wrap .wpcf7-form input:focus,
.xs-cf7-wrap .wpcf7-form select:focus,
.xs-cf7-wrap .wpcf7-form textarea:focus{outline:none;border-color:var(--yellow);}
.xs-cf7-wrap .wpcf7-form select option{background:var(--ink-2);color:var(--paper);}
.xs-cf7-wrap .wpcf7-form textarea{resize:vertical;min-height:90px;}
.xs-cf7-wrap .wpcf7-form input::placeholder,
.xs-cf7-wrap .wpcf7-form textarea::placeholder{color:rgba(247,245,240,.35);}
.xs-cf7-wrap .wpcf7-submit{
  margin-top:10px;background:var(--yellow);color:var(--ink);border:none;padding:15px 26px;font-weight:600;
  font-family:'Inter',sans-serif;font-size:14.5px;cursor:pointer;border-radius:30px;transition:transform .25s var(--ease),box-shadow .25s var(--ease);align-self:flex-start;
  width:auto;
}
.xs-cf7-wrap .wpcf7-submit:hover{transform:translateY(-2px);box-shadow:0 10px 30px -8px rgba(242,194,48,.45);}
.xs-cf7-wrap .wpcf7-submit:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none;}
.xs-cf7-wrap .wpcf7-spinner{margin:0 0 0 12px;background-color:var(--yellow);}
.xs-cf7-wrap .wpcf7-not-valid-tip{display:block;margin-top:6px;font-family:'Inter',sans-serif;font-size:12.5px;color:#ff9b8c;text-transform:none;letter-spacing:0;}
.xs-cf7-wrap .wpcf7-not-valid{border-bottom-color:#ff9b8c;}
.xs-cf7-wrap .wpcf7 form .wpcf7-response-output{
  margin:6px 0 0;padding:13px 16px;border-radius:10px;border:1px solid var(--line-strong);
  font-family:'Inter',sans-serif;font-size:13.5px;line-height:1.55;color:var(--paper-dim);text-transform:none;letter-spacing:0;
}
.xs-cf7-wrap .wpcf7 form.sent .wpcf7-response-output{border-color:rgba(74,222,128,.55);background:rgba(74,222,128,.07);color:#9be8b6;}
.xs-cf7-wrap .wpcf7 form.invalid .wpcf7-response-output,
.xs-cf7-wrap .wpcf7 form.unaccepted .wpcf7-response-output,
.xs-cf7-wrap .wpcf7 form.failed .wpcf7-response-output,
.xs-cf7-wrap .wpcf7 form.aborted .wpcf7-response-output,
.xs-cf7-wrap .wpcf7 form.spam .wpcf7-response-output{border-color:rgba(255,155,140,.55);background:rgba(255,155,140,.07);color:#ffc0b5;}
/* casilla de consentimiento (Ley N.° 29733) */
.xs-consent{font-family:'Inter',sans-serif;font-size:12.5px;line-height:1.6;color:var(--paper-dim);}
.xs-consent .wpcf7-list-item{margin:0;display:block;}
.xs-consent label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;text-transform:none;letter-spacing:0;font-family:'Inter',sans-serif;font-size:12.5px;color:var(--paper-dim);}
.xs-consent input[type=checkbox]{margin-top:3px;accent-color:var(--yellow);flex-shrink:0;width:auto;}
.xs-consent a{color:var(--yellow);text-decoration:underline;}
/* Alternativa si el plugin aún no está activo */
.xs-cf7-fallback p{color:var(--paper-dim);font-size:15px;line-height:1.7;}
.xs-cf7-fallback .xs-ctas{display:flex;gap:14px;flex-wrap:wrap;}
.xs-cf7-fallback .xs-admin-note{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--yellow);border:1px dashed var(--yellow-dim);border-radius:10px;padding:12px 14px;}
@media(max-width:600px){
  .xs-cf7-wrap .wpcf7-form,.xs-cf7-fallback{padding:24px;}
}

/* =========================================================
   VARIANTE CLARA — Libro de Reclamaciones (aloja el formulario del plugin)
   Cabecera y pie se mantienen oscuros; la zona de contenido es clara
   para que los títulos y textos del formulario (negros) se lean bien.
   ========================================================= */
.xs-legal-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;}
.xs-legal-hero-logo{height:100px;width:auto;}
body.xs-light-page{background:#f3f2ee;color:#1b1b1d;}
body.xs-light-page .xs-bg-ambient,
body.xs-light-page .xs-cursor-glow{display:none;}
body.xs-light-page #site-header,
body.xs-light-page #site-header.xs-scrolled{background:rgba(11,11,12,.96);}
body.xs-light-page main{background:#f3f2ee;}
body.xs-light-page .xs-hero{background:linear-gradient(180deg,#ffffff 0%,#f3f2ee 100%);border-bottom:1px solid rgba(0,0,0,.08);}
body.xs-light-page .xs-hero h1{color:#0b0b0c;}
body.xs-light-page .xs-hero .xs-sub{color:#4a4a4d;}
body.xs-light-page .xs-eyebrow{color:#8a6a10;}
body.xs-light-page .xs-eyebrow::before{background:#8a6a10;}
body.xs-light-page .xs-section{background:#f3f2ee;border-top:none;}
body.xs-light-page .xs-legal-content{
  max-width:920px;background:#ffffff;color:#1b1b1d;border:1px solid #e3e1da;border-radius:16px;
  padding:40px;box-shadow:0 24px 60px -36px rgba(0,0,0,.28);
}
body.xs-light-page .xs-legal-content h1,
body.xs-light-page .xs-legal-content h2,
body.xs-light-page .xs-legal-content h3,
body.xs-light-page .xs-legal-content h4,
body.xs-light-page .xs-legal-content h5,
body.xs-light-page .xs-legal-content h6{color:#0b0b0c;}
body.xs-light-page .xs-legal-content p,
body.xs-light-page .xs-legal-content ul,
body.xs-light-page .xs-legal-content ol,
body.xs-light-page .xs-legal-content li,
body.xs-light-page .xs-legal-content label,
body.xs-light-page .xs-legal-content legend,
body.xs-light-page .xs-legal-content th,
body.xs-light-page .xs-legal-content td,
body.xs-light-page .xs-legal-content span{color:#2b2b2e;}
body.xs-light-page .xs-legal-content strong{color:#000000;}
body.xs-light-page .xs-legal-content a{color:#8a6a10;}
body.xs-light-page .xs-legal-content .xs-updated{color:#77777a;}
body.xs-light-page .xs-legal-content input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),
body.xs-light-page .xs-legal-content select,
body.xs-light-page .xs-legal-content textarea{
  background:#ffffff;color:#1b1b1d;border:1px solid #c9c7c0;border-radius:8px;padding:10px 12px;
  font-family:'Inter',sans-serif;font-size:15px;max-width:100%;
}
body.xs-light-page .xs-legal-content input:focus,
body.xs-light-page .xs-legal-content select:focus,
body.xs-light-page .xs-legal-content textarea:focus{outline:none;border-color:#c79f2a;box-shadow:0 0 0 3px rgba(242,194,48,.25);}
body.xs-light-page .xs-legal-content button,
body.xs-light-page .xs-legal-content input[type=submit]{cursor:pointer;}
@media(max-width:600px){
  body.xs-light-page .xs-legal-content{padding:24px;}
  .xs-legal-hero-logo{height:72px;}
}

/* =========================================================
   AJUSTES DE ALINEACIÓN Y CONTRASTE
   ========================================================= */
/* el contenedor del héroe no debe encogerse dentro del flex (quedaba centrado, desalineado con el logo y el resto) */
.xs-hero > .xs-wrap{width:100%;}
/* botón "Hablemos" del menú: texto oscuro sobre amarillo, también al pasar el cursor */
.xs-links a.xs-cta-btn{color:var(--ink);}
.xs-links a.xs-cta-btn:hover{background:var(--yellow);color:var(--ink);}

/* =========================================================
   PROYECTOS EN LÍNEA (Inicio) — tarjetas con captura y enlace al sitio
   ========================================================= */
.xs-proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.xs-proj-card{
  display:flex;flex-direction:column;background:var(--ink-2);border:1px solid var(--line-strong);border-radius:18px;overflow:hidden;
  transition:transform .35s var(--ease),border-color .3s,box-shadow .35s var(--ease),opacity .7s var(--ease-out);
}
.xs-proj-shot{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--ink-3);}
.xs-proj-bar{position:absolute;top:0;left:0;right:0;height:26px;background:rgba(11,11,12,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;gap:6px;padding:0 12px;z-index:1;}
.xs-proj-bar i{width:8px;height:8px;border-radius:50%;background:rgba(247,245,240,.28);display:block;}
.xs-proj-shot img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .8s var(--ease);}
.xs-proj-body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:8px;flex:1;}
.xs-proj-body .xs-tag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);}
.xs-proj-body h4{font-size:1.25rem;}
.xs-proj-body p{color:var(--paper-dim);font-size:14.5px;line-height:1.65;}
.xs-proj-body .xs-go{margin-top:auto;padding-top:10px;display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--yellow);}
.xs-proj-body .xs-go svg{width:16px;height:16px;transition:transform .3s var(--ease);}
.xs-proj-grid.xs-reveal .xs-proj-card{opacity:0;transform:translateY(18px);}
.xs-proj-grid.xs-in .xs-proj-card{opacity:1;transform:translateY(0);}
.xs-proj-grid .xs-proj-card:nth-child(2){transition-delay:80ms;}
.xs-proj-grid .xs-proj-card:nth-child(3){transition-delay:160ms;}
.xs-proj-grid.xs-in .xs-proj-card:hover{
  transform:translateY(-6px);transition-delay:0ms;border-color:var(--yellow-dim);
  box-shadow:0 26px 50px -28px rgba(0,0,0,.8),0 0 0 1px rgba(242,194,48,.25);
}
.xs-proj-card:hover .xs-proj-shot img{transform:scale(1.05);}
.xs-proj-card:hover .xs-go svg{transform:translate(3px,-3px);}
.xs-live-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;}
.xs-live-pill{
  display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border:1px solid var(--line-strong);border-radius:40px;
  font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--paper);background:rgba(247,245,240,.03);
  transition:border-color .25s,color .25s,transform .25s var(--ease);
}
.xs-live-pill:hover{border-color:var(--yellow);color:var(--yellow);transform:translateY(-2px);}
.xs-live-pill svg{width:16px;height:16px;}
.xs-live-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;animation:livePulse 2s infinite;flex-shrink:0;}
@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(74,222,128,.5);}70%{box-shadow:0 0 0 8px rgba(74,222,128,0);}100%{box-shadow:0 0 0 0 rgba(74,222,128,0);}}
@media(max-width:900px){.xs-proj-grid{grid-template-columns:1fr;}}

/* =========================================================
   LIBRO DE RECLAMACIONES — formulario propio (sin plugin)
   Hoja de Reclamación con datos del proveedor, aclaraciones legales y envío por correo.
   ========================================================= */
.xs-claims-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr);gap:44px;align-items:start;}
.xs-claims-aside h2{font-family:'Fraunces',serif;font-weight:600;font-size:1.2rem;color:#0b0b0c;margin:0 0 16px;}
.xs-provider{margin:0 0 34px;display:flex;flex-direction:column;gap:16px;}
.xs-provider dt{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#77777a;}
.xs-provider dd{margin:3px 0 0;color:#1b1b1d;font-weight:500;line-height:1.5;}
.xs-provider .xs-pending{color:#8a6a10;font-style:italic;font-weight:400;font-size:.92rem;}
.xs-claims-notes{list-style:none;padding:0;margin:0 0 22px;display:flex;flex-direction:column;gap:12px;color:#3d3d40;font-size:.95rem;line-height:1.65;}
.xs-claims-notes strong{color:#0b0b0c;}
.xs-claims-notes--legal li{font-size:.86rem;color:#66666a;border-left:2px solid #d8bd5c;padding-left:14px;}
.xs-claims-panel{background:#ffffff;border:1px solid #e3e1da;border-radius:16px;padding:38px;box-shadow:0 24px 60px -36px rgba(0,0,0,.28);color:#1b1b1d;}
.xs-form-note{font-size:13px;color:#77777a;margin:0 0 22px;}
.xs-fs{border:0;padding:0;margin:0 0 30px;min-width:0;}
.xs-fs legend{font-family:'Fraunces',serif;font-weight:600;font-size:1.12rem;color:#0b0b0c;padding:0 0 12px;margin:0 0 20px;width:100%;border-bottom:1px solid #ecebe6;}
.xs-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.xs-row--1{grid-template-columns:1fr;}
.xs-row[hidden],.xs-form-done [data-number][hidden]{display:none;}
.xs-row--amount{grid-template-columns:1.3fr .7fr;}
.xs-cf{display:flex;flex-direction:column;gap:7px;min-width:0;}
.xs-cf > label,.xs-cf > .xs-cf-label{font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:#2b2b2e;}
.xs-req{color:#b4531a;}
.xs-cf input:not([type=checkbox]):not([type=radio]),.xs-cf select,.xs-cf textarea{
  width:100%;background:#fff;color:#1b1b1d;border:1px solid #c9c7c0;border-radius:10px;padding:11px 13px;
  font-family:'Inter',sans-serif;font-size:15px;line-height:1.5;transition:border-color .2s,box-shadow .2s;
}
.xs-cf textarea{min-height:110px;resize:vertical;}
.xs-cf input:focus,.xs-cf select:focus,.xs-cf textarea:focus{outline:none;border-color:#c79f2a;box-shadow:0 0 0 3px rgba(242,194,48,.25);}
.xs-cf.is-invalid input,.xs-cf.is-invalid select,.xs-cf.is-invalid textarea{border-color:#c0392b;}
.xs-cf-error{color:#b3261e;font-size:12.5px;line-height:1.4;}
.xs-cf-error:empty{display:none;}
.xs-cf-hint{font-size:12.5px;color:#77777a;line-height:1.5;}
.xs-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.6;color:#2b2b2e;cursor:pointer;}
.xs-check input{margin-top:4px;accent-color:#c79f2a;flex-shrink:0;width:auto;}
.xs-check a{color:#8a6a10;text-decoration:underline;}
.xs-cf > label.xs-check{font-size:14px;font-weight:400;}
.xs-radios{display:flex;gap:12px;flex-wrap:wrap;}
.xs-radio{flex:1 1 220px;border:1px solid #c9c7c0;border-radius:12px;padding:14px 16px;display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:14px;line-height:1.5;color:#2b2b2e;transition:border-color .2s,background .2s;}
.xs-radio input{margin-top:3px;accent-color:#c79f2a;width:auto;}
.xs-radio:has(input:checked){border-color:#c79f2a;background:#fff8e1;}
.xs-radio strong{display:block;color:#0b0b0c;}
.xs-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.xs-form-alert{border-radius:10px;padding:13px 16px;font-size:14px;line-height:1.55;margin:0 0 22px;}
.xs-form-alert p{margin:4px 0 0;}
.xs-form-alert--error{background:#fdecea;color:#8a1c14;border:1px solid #f3b8b3;}
.xs-form-alert--warn{background:#fff6dc;color:#6b4e00;border:1px solid #ecd48a;}
.xs-claims-form .xs-cta-btn.xs-submit-claims{border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:15px;padding:15px 30px;margin-top:6px;}
.xs-claims-form .xs-submit-claims[aria-disabled="true"]{opacity:.6;pointer-events:none;}
.xs-form-done{text-align:center;padding:26px 8px 10px;outline:none;}
.xs-form-done h3{font-family:'Fraunces',serif;font-size:1.5rem;color:#0b0b0c;margin:0 0 12px;}
.xs-form-done p{color:#3d3d40;line-height:1.7;margin:0 0 14px;}
.xs-form-done [data-number]{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:14px;letter-spacing:.06em;color:#8a6a10;background:#fff8e1;border:1px solid #ecd48a;border-radius:30px;padding:8px 18px;margin-bottom:18px;}
.xs-form-done .xs-cta-btn{border:1px solid #c9c7c0;background:transparent;color:#1b1b1d;cursor:pointer;font-family:'Inter',sans-serif;font-size:14px;}
.xs-form-done .xs-cta-btn:hover{border-color:#c79f2a;box-shadow:none;}
@media(max-width:900px){
  .xs-claims-grid{grid-template-columns:1fr;gap:34px;}
}
@media(max-width:600px){
  .xs-row,.xs-row--amount{grid-template-columns:1fr;}
  .xs-claims-panel{padding:24px;}
}

/* === XS-ADDITIONS-END === */
