:root {
    --landing-bg: #050b19;
    --landing-card: rgba(10,24,51,.76);
    --landing-line: rgba(111,180,255,.18);
    --landing-text: #f4f8ff;
    --landing-muted: #a7b7d4;
    --landing-cyan: #19d8ff;
    --landing-purple: #bd4cff;
    --landing-pink: #ff4fd8;
    --landing-green: #5ef29f;
    --landing-yellow: #ffd65c;
    --landing-shadow: 0 30px 90px rgba(0,0,0,.38);
}

/* Portada operativa: conserva la identidad de arduinet.org y prioriza accesos reales. */
.landing-body>.unified-site-header{position:sticky;top:0}.landing-main{padding-top:0}.landing-hero{min-height:auto;padding-bottom:clamp(28px,4vw,52px);padding-top:clamp(32px,5vw,70px)}
.landing-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.landing-button-secondary{background:transparent!important;border:1px solid rgba(92,225,247,.45)!important;color:#d9f8ff!important}
.landing-live-grid{display:grid;gap:1px;grid-template-columns:repeat(5,minmax(0,1fr));margin:0 auto;max-width:1480px;padding:0 clamp(18px,4vw,72px) clamp(42px,6vw,78px)}
.landing-live-grid a{background:rgba(10,29,55,.78);border:1px solid rgba(105,184,225,.16);color:#eaf8ff;display:grid;gap:5px;min-height:128px;padding:20px;text-decoration:none;transition:.2s ease}.landing-live-grid a:first-child{border-radius:14px 0 0 14px}.landing-live-grid a:last-child{border-radius:0 14px 14px 0}.landing-live-grid a:hover{background:rgba(14,54,79,.92);border-color:#32d4ef;transform:translateY(-3px)}.landing-live-grid span{color:#50e3f5;font:900 13px ui-monospace,monospace}.landing-live-grid strong{font-size:17px}.landing-live-grid small{color:#8faec4;line-height:1.35}
.landing-features,.landing-vision,.landing-community{padding-bottom:clamp(54px,7vw,90px);padding-top:clamp(54px,7vw,90px)}
@media(max-width:1000px){.landing-live-grid{grid-template-columns:repeat(3,1fr)}.landing-live-grid a:first-child{border-radius:14px 0 0 0}.landing-live-grid a:nth-child(3){border-radius:0 14px 0 0}.landing-live-grid a:nth-child(4){border-radius:0 0 0 14px}.landing-live-grid a:last-child{border-radius:0 0 14px 0}}
@media(max-width:600px){.landing-live-grid{grid-template-columns:1fr 1fr}.landing-live-grid a{border-radius:0!important;min-height:112px}.landing-live-grid a:first-child{border-radius:12px 0 0 0!important}.landing-live-grid a:nth-child(2){border-radius:0 12px 0 0!important}.landing-live-grid a:nth-last-child(2){border-radius:0 0 0 12px!important}.landing-live-grid a:last-child{border-radius:0 0 12px 0!important}}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
.landing-body {
    background:
        radial-gradient(circle at 74% 16%,rgba(63,54,255,.22),transparent 30%),
        radial-gradient(circle at 12% 9%,rgba(0,206,255,.12),transparent 24%),
        linear-gradient(145deg,#030713 0%,#071126 47%,#05091a 100%);
    color: var(--landing-text);
    font-family: Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
}

.landing-body::before {
    background: linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px);
    background-size: 100% 4px;
    content: "";
    inset: 0;
    opacity: .35;
    pointer-events: none;
    position: fixed;
    z-index: 20;
}

.landing-body a { color: inherit; text-decoration: none; }
.landing-body svg { display: block; }
.landing-body h1,.landing-body h2,.landing-body h3 { letter-spacing: -.035em; margin-top: 0; }
.landing-backdrop { inset: 0; pointer-events: none; position: fixed; z-index: 0; }
.landing-backdrop::before {
    background-image: linear-gradient(rgba(36,132,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(36,132,255,.05) 1px,transparent 1px);
    background-size: 72px 72px;
    content: "";
    inset: 0;
    mask-image: linear-gradient(to bottom,rgba(0,0,0,.85),transparent 82%);
    position: absolute;
}
.landing-backdrop i { background: var(--landing-cyan); border-radius: 50%; filter: blur(110px); height: 430px; left: -250px; opacity: .16; position: absolute; top: 12%; width: 430px; }
.landing-backdrop i:last-child { background: var(--landing-purple); left: auto; right: -240px; top: 36%; }
.landing-header,.landing-main,.landing-footer { position: relative; z-index: 1; }

.landing-header {
    align-items: center;
    border-bottom: 1px solid var(--landing-line);
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    min-height: 90px;
    width: min(1180px,calc(100% - 40px));
}
.landing-brand { align-items: center; display: inline-flex; gap: 12px; }
.landing-brand-mark { color: var(--landing-cyan); filter: drop-shadow(0 0 14px rgba(25,216,255,.5)); width: 52px; }
.landing-brand-mark path { fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 4; }
.landing-brand strong,.landing-brand small { display: block; }
.landing-brand strong { font-size: 1.25rem; line-height: 1; }
.landing-brand small { color: var(--landing-muted); font-size: .7rem; margin-top: 5px; }
.landing-header nav { align-items: center; color: #dfe9ff; display: flex; font-size: .86rem; gap: 25px; }
.landing-header nav a { transition: color .2s ease; }
.landing-header nav a:hover { color: var(--landing-cyan); }
.landing-status { background: rgba(189,76,255,.08); border: 1px solid rgba(189,76,255,.5); border-radius: 99px; color: #f4ddff; padding: 9px 13px; }
.landing-status i { animation: landing-blink 1.8s infinite; background: var(--landing-pink); border-radius: 50%; box-shadow: 0 0 12px var(--landing-pink); display: inline-block; height: 8px; margin-right: 7px; width: 8px; }

.landing-main { margin: 0 auto; width: min(1180px,calc(100% - 40px)); }
.landing-hero { align-items: center; display: grid; gap: 22px; grid-template-columns: 1.1fr .9fr; min-height: 430px; padding: 14px 0 10px; }
.landing-eyebrow { color: var(--landing-cyan); display: inline-block; font-size: .72rem; font-weight: 800; letter-spacing: .13em; margin-bottom: 21px; text-transform: uppercase; }
.landing-hero h1 { font-size: clamp(3rem,5.4vw,5rem); letter-spacing: -.06em; line-height: .98; margin-bottom: 20px; }
.landing-hero h1 span { background: linear-gradient(90deg,var(--landing-cyan),#7da7ff 46%,var(--landing-pink)); background-clip: text; color: transparent; display: block; -webkit-background-clip: text; }
.landing-hero-copy > p { color: var(--landing-muted); font-size: 1.06rem; line-height: 1.78; max-width: 650px; }
.landing-actions { align-items: center; display: flex; gap: 20px; margin: 24px 0 28px; }
.landing-button { align-items: center; background: linear-gradient(100deg,var(--landing-cyan),#417dff 54%,var(--landing-purple)); border-radius: 14px; box-shadow: 0 14px 35px rgba(43,115,255,.3); display: inline-flex; font-weight: 800; gap: 13px; padding: 15px 20px; transition: transform .2s ease,box-shadow .2s ease; }
.landing-button:hover { box-shadow: 0 18px 45px rgba(43,115,255,.45); transform: translateY(-3px); }
.landing-actions > span { color: #8294b4; font-size: .78rem; line-height: 1.5; }
.landing-collaboration { align-items: center; color: var(--landing-muted); display: flex; font-size: .83rem; gap: 14px; line-height: 1.45; }
.landing-collaboration > span { display: flex; }
.landing-collaboration b { align-items: center; background: linear-gradient(145deg,#183e66,#1cb8e5); border: 2px solid #0a1430; border-radius: 50%; display: flex; font-size: .7rem; height: 40px; justify-content: center; margin-left: -7px; width: 40px; }
.landing-collaboration b:first-child { margin: 0; }
.landing-collaboration b:last-child { background: linear-gradient(145deg,#65258f,#d94cba); }
.landing-collaboration p { margin: 0; }
.landing-collaboration strong { color: var(--landing-text); }

.landing-visual { display: grid; isolation: isolate; min-height: 370px; place-items: center; position: relative; transform:scale(.82); }
.landing-visual::before { background: radial-gradient(circle,rgba(31,142,255,.21),transparent 68%); border-radius: 50%; content: ""; height: 460px; position: absolute; width: 460px; }
.landing-scan { animation: landing-scan 5s linear infinite; background: linear-gradient(90deg,transparent,rgba(65,220,255,.8),transparent); box-shadow: 0 0 22px var(--landing-cyan); height: 2px; position: absolute; width: 88%; z-index: 5; }
.landing-ring { border: 1px solid rgba(26,210,255,.42); border-radius: 50%; bottom: 55px; box-shadow: inset 0 0 24px rgba(25,216,255,.12),0 0 28px rgba(25,216,255,.08); height: 185px; position: absolute; transform: rotateX(68deg); width: 420px; }
.landing-ring-two { animation: landing-pulse 2.5s infinite; bottom: 84px; height: 130px; width: 300px; }
.landing-board { animation:landing-board-hover 6s ease-in-out infinite; background: linear-gradient(90deg,transparent 49%,rgba(90,200,255,.08) 50%,transparent 51%),linear-gradient(rgba(90,200,255,.06) 1px,transparent 1px),linear-gradient(145deg,#0b5790,#05385f 58%,#072d4d); background-size: 80px 100%,100% 34px,100% 100%; border: 2px solid rgba(80,214,255,.75); border-radius: 18px; box-shadow: 0 30px 55px rgba(0,0,0,.45),0 0 40px rgba(25,216,255,.2); height: 255px; position: relative; transform: perspective(900px) rotateX(10deg) rotateY(-9deg) rotateZ(-2deg); width: 405px; z-index: 2; }
.landing-board::before,.landing-board::after { background: #082843; border: 3px solid #7edfff; border-radius: 50%; box-shadow: 352px 0 #082843,352px 0 0 3px #7edfff; content: ""; height: 14px; left: 17px; position: absolute; top: 17px; width: 14px; }
.landing-board::after { bottom: 17px; top: auto; }
.landing-usb { background: linear-gradient(180deg,#dce6ef,#73869a 50%,#d8e6ef); border: 3px solid #253b50; border-radius: 9px 3px 3px 9px; box-shadow: -18px 0 0 #1578ac; height: 72px; left: -68px; position: absolute; top: 62px; width: 86px; }
.landing-chip { background: linear-gradient(145deg,#121b2a,#03070c); border: 1px solid #52657e; border-radius: 8px; box-shadow: 0 0 0 8px rgba(4,15,27,.3),0 0 20px rgba(0,0,0,.5); height: 80px; left: 168px; position: absolute; top: 88px; width: 108px; }
.landing-chip::before,.landing-chip::after { background: repeating-linear-gradient(90deg,#a8bccb 0 5px,transparent 5px 14px); content: ""; height: 5px; left: -13px; position: absolute; right: -13px; top: 8px; }
.landing-chip::after { bottom: 8px; top: auto; }
.landing-board-logo { bottom: 49px; left: 43px; position: absolute; }
.landing-board-logo span,.landing-board-logo strong,.landing-board-logo small { display: block; }
.landing-board-logo span { color: var(--landing-cyan); font-size: 2rem; line-height: .8; }
.landing-board-logo small { color: #8ee9ff; font-size: .52rem; letter-spacing: .18em; margin-top: 4px; }
.landing-pins { background: repeating-linear-gradient(90deg,#09111c 0 12px,#a9bfca 12px 15px,transparent 15px 20px); height: 15px; left: 72px; position: absolute; right: 35px; top: 10px; }
.landing-pins-bottom { bottom: 10px; top: auto; }
.landing-led { border-radius: 50%; height: 10px; position: absolute; right: 54px; top: 48px; width: 10px; }
.landing-led.green { background: #54ff9b; box-shadow: 0 0 18px #54ff9b; }
.landing-led.blue { background: #45c8ff; box-shadow: 0 0 18px #45c8ff; top: 70px; }
.landing-float { align-items: center; animation: landing-float 4.5s ease-in-out infinite; backdrop-filter: blur(12px); background: rgba(8,21,46,.8); border: 1px solid rgba(111,190,255,.28); border-radius: 15px; box-shadow: 0 15px 35px rgba(0,0,0,.25); display: flex; gap: 11px; padding: 12px 15px; position: absolute; z-index: 6; }
.landing-float b { color: var(--landing-cyan); }
.landing-float strong,.landing-float small { display: block; }
.landing-float strong { font-size: .78rem; }
.landing-float small { color: var(--landing-muted); font-size: .62rem; margin-top: 3px; }
.landing-float-code { left: 12px; top: 42px; }
.landing-float-circuit { animation-delay: -1.3s; right: -8px; top: 92px; }
.landing-float-community { animation-delay: -2.3s; bottom: 50px; right: 18px; }

.landing-features { padding: 20px 0 16px; }
.landing-section-heading { margin-bottom: 35px; max-width: 780px; }
.landing-section-heading > span { color: var(--landing-cyan); font-size: .7rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.landing-section-heading h2,.landing-vision h2 { font-size: clamp(2rem,4vw,3.3rem); margin: 11px 0 0; }
.landing-section-heading > p { color: var(--landing-muted); line-height: 1.75; }
.landing-feature-grid { display: grid; gap: 18px; grid-template-columns: repeat(4,1fr); }
.landing-feature-grid article { background: linear-gradient(160deg,rgba(13,31,62,.84),rgba(7,17,37,.8)); border: 1px solid var(--landing-line); border-radius: 23px; box-shadow: var(--landing-shadow); min-height: 235px; overflow: hidden; padding: 24px; position: relative; transition: border-color .25s ease,transform .25s ease; }
.landing-feature-grid article:hover { border-color: currentColor; transform: translateY(-7px); }
.landing-feature-grid article > i { align-items: center; background: rgba(255,255,255,.05); border-radius: 14px; display: flex; font-size: 1.45rem; font-style: normal; font-weight: 800; height: 50px; justify-content: center; width: 50px; }
.landing-feature-grid article h3 { color: var(--landing-text); margin: 20px 0 11px; }
.landing-feature-grid article p { color: var(--landing-muted); font-size: .88rem; line-height: 1.65; }
.landing-feature-grid article > b { bottom: 5px; font-size: 3.3rem; opacity: .06; position: absolute; right: 16px; }
.landing-feature-grid .cyan { color: var(--landing-cyan); }.landing-feature-grid .yellow { color: var(--landing-yellow); }.landing-feature-grid .purple { color: var(--landing-purple); }.landing-feature-grid .green { color: var(--landing-green); }
.landing-progress { background: rgba(8,21,46,.7); border: 1px solid var(--landing-line); border-radius: 18px; display: grid; gap: 1px; grid-template-columns: repeat(3,1fr); margin-top: 24px; overflow: hidden; }
.landing-progress span { color: var(--landing-muted); display: grid; padding: 20px 24px; }
.landing-progress span + span { border-left: 1px solid var(--landing-line); }
.landing-progress strong { color: var(--landing-cyan); font-size: 1.45rem; }

.landing-vision { align-items: center; display: grid; gap: 42px; grid-template-columns: 1.05fr .95fr; margin: 44px 0 42px; }
.landing-vision > div p { color: var(--landing-muted); line-height: 1.85; }
.landing-vision blockquote { background: radial-gradient(circle at 50% 0%,rgba(65,125,255,.18),transparent 42%),rgba(8,21,46,.74); border: 1px solid rgba(111,190,255,.25); border-radius: 28px; box-shadow: var(--landing-shadow); margin: 0; padding: 40px; }
.landing-vision blockquote > div { align-items: center; display: flex; font-size: .7rem; font-weight: 800; justify-content: space-between; letter-spacing: .08em; text-transform: uppercase; }
.landing-vision blockquote i { background: linear-gradient(90deg,transparent,var(--landing-cyan),transparent); box-shadow: 0 0 12px var(--landing-cyan); height: 1px; width: 55px; }
.landing-vision blockquote p { font-size: clamp(1.45rem,3vw,2.2rem); font-weight: 750; line-height: 1.35; margin: 40px 0 26px; }
.landing-vision blockquote footer { color: var(--landing-cyan); font-size: .75rem; }

.landing-community { background: radial-gradient(circle at 8% 0%,rgba(25,216,255,.1),transparent 30%),radial-gradient(circle at 92% 18%,rgba(189,76,255,.12),transparent 28%),linear-gradient(155deg,rgba(10,25,54,.92),rgba(5,13,31,.88)); border: 1px solid var(--landing-line); border-radius: 32px; box-shadow: var(--landing-shadow); margin-bottom: 68px; overflow: hidden; padding: clamp(30px,4vw,52px); position: relative; }
.landing-community > div { display: grid; gap: 18px; grid-template-columns: repeat(3,1fr); }
.landing-community article { background: rgba(6,16,38,.55); border: 1px solid var(--landing-line); border-radius: 20px; padding: 25px; }
.landing-community article i { color: var(--landing-cyan); font-size: .7rem; font-style: normal; font-weight: 800; letter-spacing: .1em; }
.landing-community article h3 { margin: 18px 0 10px; }
.landing-community article p { color: var(--landing-muted); line-height: 1.7; margin: 0; }

.landing-footer { align-items: center; border-top: 1px solid var(--landing-line); color: var(--landing-muted); display: grid; font-size: .76rem; gap: 28px; grid-template-columns: 1fr 1.5fr auto; margin: 0 auto; padding: 34px 0 42px; width: min(1180px,calc(100% - 40px)); }
.landing-footer .landing-brand-mark { width: 38px; }

@keyframes landing-blink { 0%,100% { opacity:.45;transform:scale(.85) } 50% { opacity:1;transform:scale(1.1) } }
@keyframes landing-float { 0%,100% { transform:translateY(0) } 50% { transform:translateY(-10px) } }
@keyframes landing-scan { 0% { opacity:0;top:11% } 12%,88% { opacity:1 } 100% { opacity:0;top:88% } }
@keyframes landing-pulse { 0%,100% { opacity:.35;transform:rotateX(68deg) scale(.92) } 50% { opacity:.9;transform:rotateX(68deg) scale(1.04) } }
@keyframes landing-board-hover { 0%,100% { translate:0 0 } 50% { translate:0 -6px } }

@media (max-width: 1000px) {
    .landing-header nav a:nth-child(-n+3) { display: none; }
    .landing-hero,.landing-vision { grid-template-columns: 1fr; }
    .landing-hero-copy { max-width: 780px; }
    .landing-feature-grid { grid-template-columns: repeat(2,1fr); }
}

@media (max-width: 720px) {
    .landing-header { min-height: 76px; }.landing-brand small { display: none; }
    .landing-header nav { gap: 9px; }.landing-header nav a { display: none; }.landing-status { font-size: .68rem;padding:8px 10px; }
    .landing-main,.landing-header,.landing-footer { width:min(100% - 28px,1180px); }
    .landing-hero { gap: 0; min-height: auto; padding: 28px 0 14px; }
    .landing-hero h1 { font-size:clamp(2.8rem,14vw,4.2rem); }
    .landing-actions { align-items:flex-start;flex-direction:column; }
    .landing-visual { margin:-95px -70px -105px;transform:scale(.66); }
    .landing-features { padding:38px 0 20px; }.landing-feature-grid { grid-template-columns:1fr; }
    .landing-feature-grid article { min-height:195px; }
    .landing-progress { grid-template-columns:1fr; }.landing-progress span + span { border-left:0;border-top:1px solid var(--landing-line); }
    .landing-vision { gap:28px;margin:48px 0 44px; }.landing-vision blockquote { padding:27px; }
    .landing-community > div { grid-template-columns:1fr; }
    .landing-footer { grid-template-columns:1fr;justify-items:center;text-align:center; }
}

@media (max-width: 470px) { .landing-visual { margin:-122px -115px -130px;transform:scale(.55); } }
@media (prefers-reduced-motion: reduce) { .landing-body *,.landing-body *::before,.landing-body *::after { animation-duration:.001ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important; } }

.landing-feature-link{color:inherit;display:block;text-decoration:none}.landing-feature-link article{height:100%}.landing-feature-link:hover article,.landing-feature-link:focus-visible article{border-color:currentColor;transform:translateY(-7px)}.landing-feature-link:focus-visible{border-radius:23px;outline:3px solid var(--landing-cyan);outline-offset:4px}.landing-feature-link article>span{bottom:22px;color:currentColor;font-size:.75rem;font-weight:850;left:24px;position:absolute}.landing-body .site-footer{background:rgba(4,12,28,.82);border-color:var(--landing-line);color:var(--landing-muted)}.landing-body .site-footer a{color:var(--landing-cyan)}
