@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Space+Mono:wght@400;700&display=swap');

.ceo-photo{width:100%;height:100%;display:block;object-fit:cover;object-position:center top}

:root{--navy:#020b16;--navy2:#061627;--cyan:#7ce7ff;--cyan2:#28c8ee;--white:#edfaff;--muted:#8ca7b6;--line:rgba(144,220,240,.18);--coral:#ff6b5c;--paper:#ded2b8;--ink:#29271f;--amber:#d79846;--pad:clamp(24px,6vw,96px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--white);font-family:Inter,Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.noise{position:fixed;inset:0;pointer-events:none;opacity:.12;z-index:50;background:repeating-linear-gradient(87deg,transparent 0 17px,rgba(255,255,255,.025) 18px),repeating-linear-gradient(2deg,transparent 0 23px,rgba(124,231,255,.018) 24px)}.progress{position:fixed;left:0;top:0;width:100%;height:2px;z-index:100;background:transparent}.progress span{display:block;width:0;height:100%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}
.topbar{position:fixed;z-index:40;left:0;top:0;width:100%;height:76px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(2,11,22,.9),transparent);backdrop-filter:blur(8px);transition:.3s}.topbar.compact{height:62px;background:rgba(2,11,22,.92)}.brand{font-family:'Space Mono',monospace;display:flex;align-items:center;gap:12px;letter-spacing:.12em;font-weight:700}.brand-logo{width:46px;height:30px;display:block;object-fit:contain;flex:0 0 auto}.desktop-nav{display:flex;gap:34px;font-size:12px;color:#b5cad4}.desktop-nav a:hover{color:white}.nav-cta{border:1px solid rgba(124,231,255,.4);padding:11px 16px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.nav-cta:hover{background:var(--cyan);color:var(--navy)}.menu-button{display:none;background:none;border:0;color:white;text-transform:uppercase;letter-spacing:.12em}.mobile-menu{display:none}
.hero{min-height:100svh;position:relative;display:flex;align-items:center;padding:110px var(--pad) 120px;overflow:hidden}.hero-image{position:absolute;inset:0;background:url('../assets/promohero.avif') center/cover no-repeat;transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,11,22,.96) 0%,rgba(2,11,22,.7) 40%,rgba(2,11,22,.08) 70%),linear-gradient(0deg,rgba(2,11,22,.9),transparent 45%)}.hero-orbit{position:absolute;border:1px solid rgba(124,231,255,.16);border-radius:50%;right:-10vw;top:14vh;animation:rotate 28s linear infinite}.orbit-one{width:56vw;height:56vw}.orbit-two{width:45vw;height:45vw;right:-4vw;top:19vh;animation-direction:reverse}@keyframes rotate{to{transform:rotate(360deg)}}.hero-copy{position:relative;z-index:2;max-width:680px}.eyebrow,.section-index{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--cyan)}.eyebrow span{display:inline-block;width:38px;height:1px;background:currentColor;vertical-align:middle;margin-right:10px}.eyebrow.center{text-align:center}.eyebrow.center span:last-child{margin:0 0 0 10px}.hero h1,.manifesto h2,.section-head h2,.security h2,.directorate h2,.mobility h2,.faq h2,.reservation h2{font-size:clamp(54px,7.2vw,112px);line-height:.9;letter-spacing:-.065em;font-weight:300;margin:28px 0}.hero h1 em,.manifesto h2 em,.security h2 em{font-style:normal;color:var(--cyan)}.hero-lede{max-width:580px;font-size:18px;line-height:1.65;color:#bed2db}.hero-actions{display:flex;gap:12px;margin-top:38px;flex-wrap:wrap}.button{padding:15px 20px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.08em;font-size:11px;cursor:pointer;transition:.25s}.button-primary{background:var(--cyan);color:#03101c}.button-primary:hover{background:white;transform:translateY(-2px)}.button-ghost{color:#d9edf4;background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.15)}.sound-bars{font-size:8px;color:var(--cyan)}.hero-data{position:absolute;z-index:3;bottom:26px;left:var(--pad);right:var(--pad);display:flex;justify-content:flex-end;gap:48px;border-top:1px solid rgba(255,255,255,.12);padding-top:17px}.hero-data div{min-width:126px}.hero-data small{display:block;font-family:'Space Mono';font-size:8px;letter-spacing:.12em;color:#7593a3;margin-bottom:6px}.hero-data strong{font-family:'Space Mono';font-size:18px;font-weight:400}.hero-data sup{font-size:9px}.hero-data .status{font-size:11px;color:#9bf5d7}.status i{display:inline-block;width:6px;height:6px;background:#71efbb;border-radius:50%;box-shadow:0 0 8px #71efbb;margin-right:5px}
.section-pad{padding:clamp(90px,12vw,170px) var(--pad)}.manifesto{background:#f2f5f2;color:#0a1a22}.manifesto .section-index{color:#3c7585;margin-bottom:60px}.manifesto-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:9vw;align-items:end}.manifesto h2{font-size:clamp(52px,6.8vw,104px);margin:0}.manifesto h2 em{color:#149fbd}.manifesto-copy>p{font-size:17px;line-height:1.8;color:#405159}.manifesto-copy>p:first-child{font-size:22px;color:#142930}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:38px;border-top:1px solid #c7d1d2;padding-top:22px}.metric-row span{font-size:10px;text-transform:uppercase;letter-spacing:.06em}.metric-row b{display:block;font-family:'Space Mono';font-size:22px;color:#1589a0;margin-bottom:5px}
.ceo-section{display:grid;grid-template-columns:.72fr 1.2fr;gap:9vw;background:#071728;align-items:center}.ceo-portrait{height:620px;position:relative;background:radial-gradient(circle at 50% 35%,#19394d,#06111e 60%);overflow:hidden;border:1px solid var(--line)}.portrait-silhouette span{position:absolute;display:block;left:50%;transform:translateX(-50%)}.portrait-head{top:100px;width:150px;height:190px;border-radius:45% 45% 38% 38%;background:linear-gradient(120deg,#8ca0a4,#314855 48%,#172936 49%);box-shadow:0 -30px 0 -15px #1c2830}.portrait-body{top:270px;width:390px;height:440px;border-radius:45% 45% 0 0;background:linear-gradient(100deg,#1d3343,#66818c 50%,#182b39 51%);clip-path:polygon(20% 0,42% 8%,50% 30%,58% 8%,80% 0,100% 100%,0 100%)}.scanline{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 4px,rgba(124,231,255,.04) 5px);animation:scan 5s linear infinite}@keyframes scan{50%{transform:translateY(12px)}}.ceo-portrait>p{position:absolute;bottom:18px;left:18px;font:9px 'Space Mono';letter-spacing:.12em;color:#8fc4d2}.ceo-message blockquote{font-size:clamp(30px,3.3vw,52px);line-height:1.23;font-weight:300;margin:38px 0;color:#e7f5f8}.ceo-message>p:not(.eyebrow){line-height:1.8;color:#9eb5c0;max-width:680px}.signature{font-family:cursive;font-style:italic;font-size:32px;color:var(--cyan);margin-top:34px}.ceo-message small{font:9px 'Space Mono';letter-spacing:.12em;color:#647d8a}
.gallery-strip{display:grid;grid-template-columns:1.2fr .8fr 1fr .8fr;min-height:370px}.gallery-card{position:relative;overflow:hidden;border-right:1px solid rgba(255,255,255,.12)}.gallery-card img{width:100%;height:100%;position:absolute;inset:0;display:block;object-fit:cover;object-position:center}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(1,9,18,.85),transparent 65%)}.gallery-card span{position:absolute;z-index:2;left:20px;bottom:20px;font:10px 'Space Mono';text-transform:uppercase;letter-spacing:.1em}
.partners{background:#f2f5f2;color:#10232b;padding-top:80px;padding-bottom:100px}.partners .eyebrow{color:#59818b}.partner-grid{display:grid;grid-template-columns:repeat(5,1fr);margin-top:50px;border-top:1px solid #cfd8d7;border-bottom:1px solid #cfd8d7}.partner-grid>div{padding:30px;text-align:center;border-right:1px solid #cfd8d7;display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center}.partner-grid>div:last-child{border:0}.partner-grid img{display:block;width:100%;max-width:210px;height:72px;margin:0 auto 16px;object-fit:contain}.partner-grid small{font:8px 'Space Mono';letter-spacing:.16em;color:#718187}
.destinations{background:#03101e}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}
.section-head h2{font-size:clamp(48px,5.8vw,90px);margin:22px 0 0}
.section-head>p{max-width:380px;color:#90a8b3;line-height:1.7}
.city-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:#153044}
.city{min-height:520px;position:relative;overflow:hidden;padding:34px;background:#081a29;display:flex;align-items:flex-end;isolation:isolate;transition:transform .45s,outline-color .45s}
.city:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(1,8,16,.96) 0%,rgba(1,8,16,.72) 30%,rgba(1,8,16,.08) 72%);z-index:-1;pointer-events:none}
.city-image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center;z-index:-2;transition:transform .8s ease,filter .45s ease}
.city-capital{background:#071827}
.city-helvetia{background:#23494c}
.city-salama{background:#39251c}
.city-shinkei{background:#13261d}
.city:hover,.city:focus{transform:translateY(-6px);z-index:2;outline:1px solid var(--cyan)}
.city:hover .city-image,.city:focus .city-image{transform:scale(1.045);filter:saturate(1.06) contrast(1.03)}
.city-content{position:relative;z-index:2;max-width:500px}
.city-content span{font:9px 'Space Mono';color:var(--cyan);letter-spacing:.12em}
.city-content h3{font-size:48px;font-weight:300;letter-spacing:-.04em;margin:12px 0;text-shadow:0 2px 24px rgba(0,0,0,.55)}
.city-content p{color:#c6d5da;line-height:1.65;opacity:0;transform:translateY(10px);transition:.35s;text-shadow:0 1px 16px rgba(0,0,0,.75)}
.city-content b{font:10px 'Space Mono';color:var(--cyan);text-transform:uppercase}
.city:hover p,.city:focus p{opacity:1;transform:none}
.security{display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center;background:#e8eeec;color:#0b2028}.watchdogs-card{position:relative;aspect-ratio:16/10;background:#0b1c23;overflow:hidden;box-shadow:18px 18px 0 rgba(11,46,56,.12)}.watchdogs-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(2,11,22,.72));pointer-events:none}.watchdogs-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .7s ease}.watchdogs-card:hover .watchdogs-photo{transform:scale(1.025)}.watchdogs-label{position:absolute;z-index:2;left:18px;bottom:18px;font:9px 'Space Mono';letter-spacing:.12em;background:#0b1c23;color:white;padding:9px}.security h2{font-size:clamp(48px,5.6vw,86px)}.security-copy>p:not(.section-index){font-size:17px;line-height:1.75;color:#445c64}.feature-list{padding:0;list-style:none;border-top:1px solid #b8c9c8;margin-top:35px}.feature-list li{display:flex;gap:22px;padding:20px 0;border-bottom:1px solid #b8c9c8}.feature-list li>span{font:11px 'Space Mono';color:#2592a4}.feature-list b,.feature-list small{display:block}.feature-list small{color:#708287;margin-top:5px}
.directorate{background:#071728}.directorate-head{text-align:center;margin-bottom:70px}.directorate h2{font-size:clamp(48px,5.5vw,84px)}.jimmy-grid{display:grid;grid-template-columns:.75fr 1fr;max-width:1100px;margin:auto;gap:8vw;align-items:center}.jimmy-card{background:#dae1df;color:#10222a;padding:18px;box-shadow:18px 18px 0 #0d2b3c;transition:.25s}.jimmy-photo{height:470px;background:linear-gradient(150deg,#bed7d8,#58727a);position:relative;overflow:hidden}.jimmy-photo>span{position:absolute;display:block}.jimmy-face{left:50%;top:80px;transform:translateX(-50%);width:190px;height:245px;border-radius:48% 48% 40% 40%;background:linear-gradient(110deg,#c9946f,#e1b18c 48%,#b77958 49%)}.jimmy-hair{left:50%;top:48px;transform:translateX(-50%);width:205px;height:130px;border-radius:55% 45% 25% 20%;background:#46382f;z-index:2;clip-path:polygon(0 0,100% 0,90% 75%,65% 45%,44% 80%,20% 55%,5% 100%)}.jimmy-glasses{left:50%;top:155px;transform:translateX(-50%);width:205px;height:55px;z-index:3;background:linear-gradient(90deg,transparent 0 3%,#223842 4% 43%,transparent 44% 56%,#223842 57% 96%,transparent 97%);clip-path:polygon(0 0,45% 0,44% 75%,38% 100%,12% 100%,4% 75%,55% 75%,56% 0,100% 0,97% 74%,90% 100%,64% 100%,56% 76%,44% 76%,43% 0)}.jimmy-suit{left:50%;top:300px;transform:translateX(-50%);width:390px;height:250px;background:#203848;clip-path:polygon(22% 0,42% 15%,50% 48%,58% 15%,78% 0,100% 100%,0 100%)}.id-scan{position:absolute;top:12px;right:12px;border:1px solid #0b4958;padding:6px;font:8px 'Space Mono';color:#0b4958}.jimmy-meta{padding:20px 6px 5px}.jimmy-meta span,.jimmy-meta small{display:block;font:9px 'Space Mono';letter-spacing:.1em}.jimmy-meta strong{display:block;font:25px 'Space Mono';margin:8px 0}.jimmy-message h3{font-size:clamp(30px,3.2vw,48px);font-weight:300;line-height:1.25}.jimmy-message>p:not(.eyebrow,.jimmy-answer){color:#9ab0bb;line-height:1.8}.directorate-functions{display:grid;grid-template-columns:repeat(3,1fr);margin:30px 0;border-block:1px solid var(--line)}.directorate-functions span{padding:18px 8px;font-size:12px;border-right:1px solid var(--line)}.directorate-functions span:last-child{border:0}.directorate-functions b{display:block;color:var(--cyan);font:10px 'Space Mono';margin-bottom:5px}.text-button{border:0;background:none;color:var(--cyan);padding:8px 0;cursor:pointer;border-bottom:1px solid var(--cyan)}.jimmy-answer{min-height:20px;font:10px 'Space Mono';color:var(--coral)!important}.jimmy-card.corrupt{transform:translate(4px,-2px) skewX(-1deg);filter:hue-rotate(135deg) contrast(1.2)}
.mobility{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;background:#e9efed;color:#0a2029;align-items:center}.mobility-visual{height:510px;position:relative;overflow:hidden;background:linear-gradient(155deg,#d9e3de,#8eb6b4);border-radius:50% 50% 5px 5px}.route-line{position:absolute;left:8%;right:8%;top:50%;height:3px;background:#0a6c7d;transform:rotate(-10deg);box-shadow:0 0 0 10px rgba(255,255,255,.3)}.route-node{position:absolute;width:38px;height:38px;background:#0b2e38;border:4px solid #7ed9e5;color:white;border-radius:50%;display:grid;place-items:center;font:9px 'Space Mono';z-index:2}.n1{left:10%;top:58%}.n2{left:35%;top:48%}.n3{left:64%;top:38%}.n4{right:8%;top:30%}.train{position:absolute;left:26%;top:43%;width:260px;height:72px;border-radius:55px 16px 16px 55px;background:#f4faf8;box-shadow:0 18px 35px #254f5477;padding:28px 32px;font:10px 'Space Mono';letter-spacing:.14em}.train span{position:absolute;top:16px;right:20px;width:80px;height:18px;background:#154c5b;border-radius:4px}.mobility h2{font-size:clamp(48px,5vw,80px)}.mobility-copy>p:not(.section-index){line-height:1.8;color:#52686f}.mobility-stats{display:flex;gap:35px;margin-top:30px}.mobility-stats span{font-size:10px;text-transform:uppercase}.mobility-stats b{display:block;font:28px 'Space Mono';color:#197f91}
.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:10vw;background:#04111e}.faq h2{font-size:clamp(48px,5vw,78px)}.faq-intro>p:last-child{color:#829ba7;line-height:1.7}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{padding:26px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-size:17px}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{color:var(--cyan);font:20px 'Space Mono';transition:.2s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{color:#93aab4;line-height:1.7;margin:0 0 26px;max-width:650px}.faq-corrupt{position:relative}.faq-corrupt:after{content:"ERROR 0xCLC";position:absolute;right:0;top:6px;color:transparent;font:8px 'Space Mono'}body.degrading .faq-corrupt:after{color:var(--coral)}
.reservation{display:grid;grid-template-columns:1fr .75fr;gap:10vw;background:linear-gradient(125deg,#0a2d3e,#052032 45%,#06111e)}.reservation h2{font-size:clamp(52px,5.8vw,90px)}.reservation-copy>p:last-child{max-width:620px;color:#9ab4bf;line-height:1.8}.reservation-form{display:flex;flex-direction:column;gap:18px;background:rgba(255,255,255,.05);border:1px solid var(--line);padding:35px}.reservation-form label{font:9px 'Space Mono';letter-spacing:.1em;text-transform:uppercase;color:#8db2bf}.reservation-form input,.reservation-form select{display:block;width:100%;margin-top:9px;background:#061521;color:white;border:1px solid #294959;padding:14px;outline:none}.reservation-form input:focus,.reservation-form select:focus{border-color:var(--cyan)}.consent{display:flex;align-items:center;gap:10px;text-transform:none!important;line-height:1.5}.consent input{width:auto;margin:0}.submit-button{border:0}.form-status{font:10px 'Space Mono';color:var(--cyan);min-height:15px}
.breach{height:100svh;min-height:700px;display:grid;place-items:center;position:relative;background:#010306;overflow:hidden}.breach-lines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 5px,rgba(71,192,222,.04) 6px),linear-gradient(90deg,transparent 49.8%,rgba(255,90,70,.2) 50%,transparent 50.2%)}.breach-content{text-align:center;width:min(760px,85vw);position:relative;z-index:2}.system-message{font:10px 'Space Mono';letter-spacing:.15em;color:#7599a6}.integrity{height:2px;background:#18262c;margin:25px auto 10px;max-width:420px}.integrity span{display:block;width:100%;height:100%;background:var(--cyan);transition:width 1.2s,background .3s}.breach-content>strong{font:12px 'Space Mono';color:#88b9c6}.breach-title{font:clamp(48px,8vw,120px) 'Space Mono';letter-spacing:-.08em;margin:55px 0 20px}.breach-hidden{color:#71838a}.breach-button{margin-top:35px;border:1px solid #63342f;background:transparent;color:#67403d;padding:14px 22px;font:10px 'Space Mono';letter-spacing:.1em}.breach-button:not(:disabled){border-color:var(--coral);color:var(--coral);cursor:pointer;box-shadow:0 0 25px #ff5b4622;animation:pulse 1.5s infinite}@keyframes pulse{50%{box-shadow:0 0 45px #ff5b4655}}.breach.active .breach-title{color:var(--coral);animation:glitch .2s infinite}.breach.active .breach-title:before,.breach.active .breach-title:after{content:attr(data-text);position:absolute;left:0;right:0}.breach.active .breach-title:before{color:var(--cyan);transform:translate(-4px,2px);clip-path:inset(20% 0 55% 0)}.breach.active .breach-title:after{color:#fff;transform:translate(4px,-2px);clip-path:inset(68% 0 12% 0)}@keyframes glitch{25%{transform:translate(2px,-1px)}75%{transform:translate(-2px,1px)}}body.degrading .topbar{filter:saturate(.4)}body.degrading .brand span:last-child::after{content:"_CLC";color:var(--coral)}
.campo{display:none;background:#cfc3a8;color:var(--ink);min-height:100vh;font-family:'Space Mono',monospace}.campo.open{display:block}.archive-header{height:64px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #645e50;font-size:9px;letter-spacing:.1em}.archive-brand{font-weight:700}.archive-header button{border:1px solid #6d685a;background:transparent;padding:8px 11px;cursor:pointer;color:var(--ink)}.campo-hero{min-height:100svh;position:relative;display:flex;align-items:center;padding:100px var(--pad);overflow:hidden}.campo-image{position:absolute;inset:0;background:url('../assets/campo-la-carrera-hero.png') center/cover no-repeat;filter:sepia(.7) contrast(1.08)}.campo-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(31,28,21,.1),rgba(31,28,21,.8) 60%,rgba(31,28,21,.95))}.campo-copy{margin-left:auto;position:relative;width:min(580px,50vw);color:#eee3cc}.campo-copy>p:first-child{font-size:10px;letter-spacing:.16em;color:#ddb26c}.campo-copy h2{font-family:Georgia,serif;font-size:clamp(65px,8.5vw,130px);font-weight:400;line-height:.79;letter-spacing:-.06em;margin:30px 0}.campo-lede{font-family:Georgia,serif;font-size:22px;line-height:1.55}.campo-copy a{display:inline-block;margin-top:25px;border-bottom:1px solid #ddb26c;color:#ddb26c;font-size:10px;text-transform:uppercase}.archive-stamp{position:absolute;left:6vw;bottom:10vh;border:4px double #b64030;color:#b64030;padding:12px 18px;transform:rotate(-8deg);font-weight:700;text-align:center;opacity:.7}.field-section{display:grid;grid-template-columns:150px 1fr;padding:130px var(--pad);border-bottom:1px solid #807866}.field-section>aside{border-right:1px solid #8e846e}.field-section>aside span{font-size:54px;font-family:Georgia,serif}.field-section>aside p{font-size:9px;writing-mode:vertical-rl;letter-spacing:.15em;margin-top:25px}.field-section>article,.character-area{padding-left:8vw}.field-kicker,.field-title>p{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#8a3f31}.history h3,.field-title h3{font:clamp(42px,5.5vw,82px)/1.03 Georgia,serif;letter-spacing:-.04em;margin:24px 0 55px}.history h3 em{color:#8a3f31}.story-columns{display:grid;grid-template-columns:1fr 1fr;gap:5vw;max-width:980px}.story-columns p{font-family:Georgia,serif;font-size:18px;line-height:1.8}.redacted-note{margin-top:60px;border:1px solid #8e846e;padding:22px;max-width:700px;color:#8a3f31;transform:rotate(-.5deg)}.character-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.character-grid article{border:1px solid #8d836e;padding:12px;position:relative}.character-code{font-size:8px;letter-spacing:.1em}.char-portrait{height:280px;margin:12px 0;background-color:#756d5f;filter:sepia(.5);position:relative;overflow:hidden}.char-portrait:before{content:"";position:absolute;left:50%;top:35px;transform:translateX(-50%);width:110px;height:145px;border-radius:45%;background:#baa78c}.char-portrait:after{content:"";position:absolute;left:50%;top:155px;transform:translateX(-50%);width:210px;height:170px;border-radius:50% 50% 0 0;background:#514c43}.ana{background:linear-gradient(140deg,#a49375,#4d5f56)}.teo{background:linear-gradient(140deg,#81705c,#3d4a44)}.jimmy{background:linear-gradient(140deg,#a28f77,#294b54)}.cielo{background:linear-gradient(#827b6d 0 45%,#b99f72 46%)}.cielo:before{width:85px;height:85px;background:#dad0ae;box-shadow:0 0 0 14px #97896c,0 0 0 18px #d7c69d}.cielo:after{display:none}.character-grid h4{font:32px Georgia,serif;margin:18px 0 8px}.character-grid p{font-family:Georgia,serif;line-height:1.55;min-height:120px}.character-grid small{font-size:8px;color:#8a3f31}.field-footer{padding:55px var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:9px}.field-footer p{font:28px Georgia,serif}.toast{position:fixed;right:24px;bottom:24px;z-index:120;background:#0b2936;border:1px solid var(--cyan);padding:15px 20px;font:10px 'Space Mono';color:white;transform:translateY(120px);opacity:0;transition:.3s}.toast.show{transform:none;opacity:1}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}.reveal-field{opacity:0;transform:translateY(18px);transition:.8s .2s}.campo.open .reveal-field{opacity:1;transform:none}
@media(max-width:900px){.desktop-nav,.nav-cta{display:none}.menu-button{display:block}.mobile-menu{position:fixed;inset:0;z-index:90;background:#04101e;padding:100px 30px 30px;flex-direction:column;gap:22px}.mobile-menu.open{display:flex}.mobile-menu a{font-size:26px;border-bottom:1px solid var(--line);padding-bottom:18px}.menu-close{position:absolute;right:25px;top:20px;background:none;color:white;border:0;font-size:38px}.hero{padding-bottom:160px}.hero-data{justify-content:flex-start;gap:22px;overflow:auto}.manifesto-grid,.ceo-section,.security,.mobility,.faq,.reservation{grid-template-columns:1fr}.ceo-portrait,.dog-card{min-height:520px;height:520px}.gallery-strip{grid-template-columns:1fr 1fr}.gallery-card{min-height:280px}.partner-grid{grid-template-columns:1fr 1fr}.partner-grid>div{border-bottom:1px solid #cfd8d7}.partner-grid>div:last-child{grid-column:1/-1}.section-head{display:block}.section-head>p{margin-top:20px}.jimmy-grid{grid-template-columns:1fr}.jimmy-card{max-width:480px;margin:auto}.mobility-visual{order:2}.character-grid{grid-template-columns:1fr 1fr}.campo-copy{width:80vw}.field-section{grid-template-columns:70px 1fr}.field-section>article,.character-area{padding-left:5vw}}
@media(max-width:600px){:root{--pad:20px}.topbar{height:62px}.hero h1{font-size:55px}.hero-lede{font-size:15px}.hero-data div{min-width:110px}.hero-data{gap:10px}.manifesto-grid{gap:45px}.metric-row{grid-template-columns:1fr}.city-grid{grid-template-columns:1fr}.city{min-height:480px}.city-content p{opacity:1;transform:none}.gallery-strip{display:flex;overflow:auto}.gallery-card{min-width:80vw}.partner-grid{grid-template-columns:1fr}.partner-grid>div:last-child{grid-column:auto}.section-pad{padding-top:85px;padding-bottom:85px}.dog-portrait{transform:translateX(-50%) scale(.8);transform-origin:bottom}.jimmy-photo{height:420px}.directorate-functions{grid-template-columns:1fr}.directorate-functions span{border-right:0;border-bottom:1px solid var(--line)}.mobility-visual{height:380px}.train{transform:scale(.65);transform-origin:left}.faq{gap:35px}.reservation-form{padding:22px}.archive-header span{display:none}.campo-hero{align-items:flex-end;padding-bottom:90px}.campo-copy{width:100%;margin:0}.campo-copy h2{font-size:62px}.archive-stamp{display:none}.field-section{display:block}.field-section>aside{border:0;border-bottom:1px solid #8e846e;display:flex;align-items:center;justify-content:space-between;margin-bottom:45px}.field-section>aside p{writing-mode:initial}.field-section>article,.character-area{padding:0}.story-columns,.character-grid{grid-template-columns:1fr}.character-grid p{min-height:auto}.field-footer{align-items:flex-start;gap:20px;flex-direction:column}}

/* Thomas — enlace institucional del Directorio */
.thomas-grid{display:grid;grid-template-columns:.75fr 1fr;max-width:1100px;margin:auto;gap:8vw;align-items:center}
.thomas-card{background:#dae1df;color:#10222a;padding:18px;box-shadow:18px 18px 0 #0d2b3c;transition:.25s}
.thomas-photo{height:470px;background:#06111e;position:relative;overflow:hidden}
.thomas-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center top}
.thomas-meta{padding:20px 6px 5px}
.thomas-meta span,.thomas-meta small{display:block;font:9px 'Space Mono';letter-spacing:.1em}
.thomas-meta strong{display:block;font:25px 'Space Mono';margin:8px 0}
.thomas-message h3{font-size:clamp(30px,3.2vw,48px);font-weight:300;line-height:1.25}
.thomas-message>p:not(.eyebrow,.thomas-answer){color:#9ab0bb;line-height:1.8}
.thomas-answer{min-height:20px;font:10px 'Space Mono';color:var(--coral)!important}
.thomas-card.corrupt{transform:translate(4px,-2px) skewX(-1deg);filter:hue-rotate(135deg) contrast(1.2)}
.char-portrait.thomas{background:linear-gradient(140deg,#a28f77,#294b54)}
@media(max-width:900px){.thomas-grid{grid-template-columns:1fr}.thomas-card{max-width:480px;margin:auto}}
@media(max-width:600px){.thomas-photo{height:420px}}

/* Red visual de movilidad */
.mobility-visual{height:auto;min-height:440px;aspect-ratio:16/9;margin:0;border-radius:2px;background:#0a2029;isolation:isolate;box-shadow:0 28px 70px rgba(4,25,35,.18)}
.mobility-visual>img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center 48%}
.mobility-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(2,14,22,.88));pointer-events:none;z-index:1}
.mobility-legend{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;color:#fff;font:9px 'Space Mono';letter-spacing:.08em;text-transform:uppercase}
.mobility-legend span{padding-top:10px;border-top:1px solid rgba(255,255,255,.38)}
.mobility-legend b{display:block;margin-bottom:5px;color:var(--cyan);font-weight:400}
@media(max-width:900px){.mobility-visual{width:100%;min-height:0;aspect-ratio:16/9}}
@media(max-width:600px){.mobility-visual{height:auto;min-height:340px;aspect-ratio:auto}.mobility-visual>img{object-position:55% center}.mobility-legend{left:14px;right:14px;bottom:12px;grid-template-columns:1fr 1fr;gap:7px 14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Formulario de solicitud y consentimiento */
.reservation-form>input[type="hidden"],.form-honey{display:none!important}
.consent-group{display:grid;gap:12px;padding-top:2px}
.reservation-form .consent{align-items:flex-start;margin:0;color:#a8c2cb}
.reservation-form .consent input{flex:0 0 auto;width:17px;height:17px;margin:1px 0 0;accent-color:var(--cyan)}
.reservation-form .consent span{font:10px/1.55 'Inter',sans-serif;letter-spacing:0;text-transform:none}
.reservation-form .consent.optional{color:#7f9ca7}
.reservation-form .consent em{color:#c8e1e8}
.form-privacy{margin:0;border-top:1px solid rgba(255,255,255,.1);padding-top:12px;color:#6f8c97}
.form-privacy summary{cursor:pointer;color:#8db2bf;font:9px 'Space Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.form-privacy p{margin:10px 0 0;font:9px/1.65 'Space Mono',monospace}
.form-privacy strong{color:#8da8b2;font-weight:400}
.form-privacy a{color:var(--cyan);border-bottom:1px solid rgba(124,231,255,.35)}
.submit-button:disabled{cursor:wait;opacity:.58}
.submit-button.sending span{animation:submitPulse .8s ease-in-out infinite alternate}
.form-status.error{color:var(--coral)}
@keyframes submitPulse{to{opacity:.2}}
