:root {
  --night: #051526; --navy: #08213a; --gold: #cfa046; --gold-light: #f2cb69;
  --ivory: #f7f4ec; --steel: #d4dce6; --forest: #2f4a32; --copper: #8a5a24;
  --ink: #091827; --muted: #9aa8b7; --surface: #0b1d30; --surface-2: #10283f;
  --line: rgba(255,255,255,.12); --text: #f7f4ec; --paper: #f7f4ec;
  --shadow: 0 30px 80px rgba(0,0,0,.28); --serif: "Playfair Display", Georgia, serif; --sans: "DM Sans", Arial, sans-serif;
}
:root[data-theme="light"] { --night:#f7f4ec; --navy:#e8edf2; --ink:#071827; --surface:#fffdf8; --surface-2:#edf1f4; --line:rgba(5,21,38,.13); --text:#071827; --muted:#5c6975; --shadow:0 24px 70px rgba(5,21,38,.12); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--night); }
body { margin: 0; color: var(--text); background: var(--night); font-family: var(--sans); line-height: 1.6; overflow-x: hidden; transition: color .25s, background .25s; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.22; z-index:50; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E"); }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
.skip-link { position:fixed; left:1rem; top:-5rem; z-index:200; background:var(--gold-light); color:#051526; padding:.65rem 1rem; border-radius:.5rem; }
.skip-link:focus { top:1rem; }
.section-shell { width:min(1180px, calc(100% - 48px)); margin-inline:auto; }
.section-pad { padding-block: 130px; }
.section-pad-tight { padding-block: 20px 110px; }
.site-header { height:84px; position:sticky; top:0; z-index:100; background:color-mix(in srgb, var(--night) 86%, transparent); backdrop-filter:blur(18px); border-bottom:1px solid var(--line); }
.nav-shell { width:min(1280px, calc(100% - 48px)); height:100%; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:12px; min-width:max-content; }
.brand img { width:42px; height:42px; object-fit:contain; }
:root[data-theme="light"] .brand img { content:url('assets/escudo-oscuro-premium.png'); }
.brand span { display:grid; line-height:1; letter-spacing:.22em; }
.brand strong { font:700 1.08rem/1 var(--serif); color:var(--gold-light); }
.brand small { font-size:.55rem; margin-top:5px; color:var(--text); }
.main-nav { display:flex; align-items:center; gap:34px; margin-left:auto; }
.main-nav a { font-size:.84rem; color:var(--muted); transition:.2s; }
.main-nav a:hover { color:var(--gold-light); }
.nav-actions { display:flex; gap:10px; align-items:center; }
.language-switcher { display:inline-grid; grid-template-columns:repeat(3, 34px); align-items:center; gap:2px; padding:3px; border:1px solid var(--line); border-radius:999px; background:color-mix(in srgb, var(--surface) 72%, transparent); }
.language-switcher a { display:grid; place-items:center; min-width:0; height:30px; border-radius:999px; color:var(--muted); font-size:.68rem; font-weight:800; letter-spacing:0; }
.language-switcher a:hover { color:var(--gold-light); }
.language-switcher a[aria-current="true"] { background:var(--gold-light); color:#071827; }
.icon-button { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--line); background:transparent; color:var(--text); border-radius:50%; cursor:pointer; }
.theme-toggle .sun, :root[data-theme="light"] .theme-toggle .moon { display:none; }
:root[data-theme="light"] .theme-toggle .sun { display:inline; }
.menu-toggle { display:none; }
.menu-toggle span { display:block; width:17px; height:1px; background:currentColor; margin:3px auto; }
.button { border:0; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:14px; border-radius:999px; padding:14px 23px; font-weight:700; font-size:.88rem; transition:transform .2s, box-shadow .2s, background .2s; }
.button:hover { transform:translateY(-2px); }
.button-small { padding:10px 18px; font-size:.8rem; }
.button-primary { background:var(--gold-light); color:#071827; box-shadow:0 12px 34px rgba(207,160,70,.2); }
.button-primary:hover { box-shadow:0 16px 42px rgba(207,160,70,.32); }
.button-ghost { border:1px solid var(--line); background:transparent; color:var(--text); }
.button-light { background:#f7f4ec; color:#071827; }
.text-link { color:var(--gold-light); font-weight:700; font-size:.9rem; }
.eyebrow, .section-kicker { letter-spacing:.16em; font-size:.68rem; font-weight:700; color:var(--gold-light); }
.eyebrow { display:flex; align-items:center; gap:10px; }
.eyebrow span { width:30px; height:1px; background:currentColor; }
.hero { min-height:calc(100vh - 84px); display:grid; grid-template-columns:1.05fr .8fr; align-items:center; gap:7vw; padding-block:80px; position:relative; }
.hero::before { content:""; position:absolute; width:520px; height:520px; left:-270px; top:5%; border:1px solid rgba(207,160,70,.12); border-radius:50%; box-shadow:0 0 0 80px rgba(207,160,70,.025),0 0 0 160px rgba(207,160,70,.018); }
h1,h2,h3,p { margin-top:0; }
.hero h1, .section-heading h2, .portfolio-head h2, .portal-copy h2, .cta h2, .apps-hero h1 { font-family:var(--serif); letter-spacing:-.045em; line-height:.98; }
.hero h1 { font-size:clamp(3.7rem, 7vw, 7.2rem); margin:24px 0 30px; max-width:820px; }
h1 em,h2 em { color:var(--gold-light); font-weight:600; }
.hero-lead { color:var(--muted); font-size:clamp(1.05rem, 1.5vw, 1.3rem); max-width:640px; line-height:1.7; }
.hero-actions { display:flex; align-items:center; gap:28px; margin:38px 0 52px; }
.hero-metrics { display:flex; gap:0; padding-top:24px; border-top:1px solid var(--line); max-width:650px; }
.hero-metrics div { display:grid; min-width:150px; padding-right:25px; margin-right:25px; border-right:1px solid var(--line); }
.hero-metrics div:last-child { border-right:0; }
.hero-metrics strong { color:var(--gold-light); font:600 1.3rem/1 var(--serif); }
.hero-metrics span { color:var(--muted); font-size:.7rem; margin-top:8px; }
.portrait-stage { min-height:620px; display:grid; place-items:center; position:relative; overflow:hidden; }
.portrait-frame { width:min(430px, 80%); aspect-ratio:3/4; margin:0; overflow:hidden; border-radius:210px 210px 22px 22px; box-shadow:var(--shadow); position:relative; z-index:2; border:1px solid rgba(242,203,105,.35); }
.portrait-frame::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 50%, rgba(5,21,38,.38)); }
.portrait-frame img { width:100%; height:100%; object-fit:cover; object-position:center; }
.portrait-orbit { position:absolute; border:1px solid rgba(242,203,105,.22); border-radius:50%; }
.orbit-one { width:560px; height:560px; }
.orbit-two { width:450px; height:450px; border-style:dashed; animation:spin 30s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
.floating-note { position:absolute; z-index:3; background:color-mix(in srgb, var(--surface) 90%, transparent); backdrop-filter:blur(15px); border:1px solid var(--line); box-shadow:var(--shadow); border-radius:12px; padding:14px 18px; font-size:.75rem; }
.note-top { right:-5%; top:20%; display:flex; align-items:center; gap:8px; }
.status-dot,.live-dot { width:8px; height:8px; display:inline-block; border-radius:50%; background:#57c787; box-shadow:0 0 0 5px rgba(87,199,135,.12); }
.note-bottom { left:-2%; bottom:16%; display:grid; }
.note-bottom small { color:var(--muted); letter-spacing:.14em; font-size:.55rem; }.note-bottom strong { color:var(--gold-light); font-family:var(--serif); font-size:1.1rem; }
.logo-rail { border-block:1px solid var(--line); background:color-mix(in srgb, var(--surface) 66%, transparent); }
.logo-rail-inner { padding-block:32px; display:grid; grid-template-columns:180px 1fr; align-items:center; gap:40px; }
.logo-rail-inner>p { color:var(--muted); text-transform:uppercase; letter-spacing:.12em; font-size:.64rem; margin:0; }
.logo-list { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; align-items:center; }
.logo-item { min-height:68px; display:grid; place-items:center; align-content:center; filter:grayscale(1); opacity:.72; transition:.25s; }
.logo-item:hover { filter:none; opacity:1; }
.logo-item img { width:130px; max-height:33px; object-fit:contain; }
.logo-item span { color:var(--muted); font-size:.6rem; margin-top:8px; text-align:center; }
.logo-item-text { position:relative; min-height:64px; border-radius:9px; overflow:hidden; background:linear-gradient(rgba(5,21,38,.7),rgba(5,21,38,.9)),url('assets/moncloa-connect-cover.webp') center/cover; }
.logo-item-text strong { position:relative; font-size:.82rem; letter-spacing:.16em; line-height:1.1; text-align:center; color:#fff; }.logo-item-text span{position:relative;display:block;color:#d4dce6;}
.logo-item-word strong { font:700 1.15rem/1 var(--serif); letter-spacing:.12em; color:var(--text); }
.about-grid,.journey-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:11vw; }
.section-heading h2,.portfolio-head h2,.portal-copy h2,.cta h2 { font-size:clamp(3rem,5.5vw,5.7rem); margin:22px 0; }
.about-copy { color:var(--muted); max-width:650px; }
.large-copy { color:var(--text); font:600 clamp(1.45rem,2.3vw,2.15rem)/1.45 var(--serif); }
.principles { display:flex; flex-wrap:wrap; gap:10px; margin-top:34px; }
.principles span,.tag-list li { list-style:none; border:1px solid var(--line); border-radius:999px; padding:7px 13px; color:var(--muted); font-size:.7rem; }
.identity-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
.trust { border-top:1px solid var(--line); }
.trust-head,.cv-head { display:flex; justify-content:space-between; align-items:flex-end; gap:48px; margin-bottom:54px; }
.trust-head h2,.cv-head h2 { font-size:clamp(3rem,5.4vw,5.5rem); margin:22px 0 0; font-family:var(--serif); letter-spacing:-.045em; line-height:.98; }
.trust-head>p { max-width:440px; color:var(--muted); margin:0 0 10px; }
.trust-grid { display:grid; grid-template-columns:1.18fr .82fr; gap:28px; }
.brand-story,.origin-card,.cv-card { border:1px solid var(--line); background:var(--surface); border-radius:16px; }
.brand-story { display:grid; grid-template-columns:250px 1fr; gap:34px; align-items:center; padding:34px; }
.origin-card { padding:36px; }
.crest-card { min-height:300px; display:grid; place-items:center; border-radius:14px; background:radial-gradient(circle at 50% 35%, rgba(242,203,105,.22), transparent 54%), linear-gradient(145deg,#071827,#10283f); border:1px solid rgba(242,203,105,.18); }
.crest-card img { width:min(170px,70%); filter:drop-shadow(0 22px 30px rgba(0,0,0,.35)); }
.trust-label,.cv-card>span { display:inline-flex; color:var(--gold-light); font-size:.58rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; margin-bottom:14px; }
.brand-story h3,.origin-card h3,.value-intro h3,.cv-card h3 { font:600 clamp(1.45rem,2.1vw,2rem)/1.18 var(--serif); margin:0 0 15px; }
.brand-story p,.origin-card p,.value-list p,.cv-card p { color:var(--muted); font-size:.88rem; margin-bottom:0; }
.values-strip { margin-top:28px; border:1px solid var(--line); background:color-mix(in srgb,var(--surface) 72%,transparent); border-radius:16px; padding:32px; display:grid; grid-template-columns:240px 1fr; gap:30px; align-items:start; }
.value-list { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; }
.value-list>div { min-height:170px; border:1px solid var(--line); border-radius:12px; padding:20px; background:var(--night); }
.value-list strong { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:var(--gold-light); color:#071827; font:800 1rem var(--sans); margin-bottom:18px; }
.value-list span { display:block; color:var(--text); font-weight:800; margin-bottom:8px; }
.capabilities { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.capability { position:relative; padding:52px 42px 12px; border-right:1px solid var(--line); }
.capability:last-child { border-right:0; }.cap-number { color:var(--gold-light); font-size:.6rem; letter-spacing:.15em; }.cap-icon { font:500 2.1rem var(--serif); color:var(--gold-light); margin:32px 0 24px; }.capability h3 { font:600 1.6rem var(--serif); }.capability p { color:var(--muted); font-size:.9rem; }
.portfolio { background:var(--surface); border-block:1px solid var(--line); }
.portfolio-head { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:62px; }
.portfolio-intro { max-width:420px; color:var(--muted); font-size:.9rem; margin:0 0 18px; }
.filter-row { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; padding-bottom:26px; }
.filter { border:1px solid var(--line); color:var(--muted); background:transparent; border-radius:999px; padding:8px 14px; cursor:pointer; font-size:.7rem; }
.filter.active,.filter:hover { color:#071827; border-color:var(--gold-light); background:var(--gold-light); }
.project-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:32px; }
.project-card { background:var(--night); border:1px solid var(--line); overflow:hidden; border-radius:16px; transition:transform .25s, box-shadow .25s; }
.project-card:hover { transform:translateY(-6px); box-shadow:var(--shadow); }.project-card[hidden]{display:none;}
.project-featured,.project-wide { grid-column:1/-1; display:grid; grid-template-columns:1.25fr .75fr; }
.project-wide { grid-template-columns:1.08fr .92fr; }
.project-image { min-height:310px; overflow:hidden; position:relative; background:#0b1722; }
.project-featured .project-image,.project-wide .project-image { min-height:440px; }
.browser-shot { padding-top:34px; }.browser-bar { position:absolute; top:0; inset-inline:0; height:34px; display:flex; align-items:center; gap:6px; padding:0 12px; background:#162435; z-index:2; color:#8ea0b3; font-size:.55rem; }.browser-bar i { width:7px;height:7px;border-radius:50%;background:#45586a; }.browser-bar span { margin-left:8px; }.browser-shot>img { width:100%;height:100%;object-fit:cover;object-position:top; transition:transform .5s; }.project-card:hover .browser-shot>img { transform:scale(1.025); }
.project-copy { padding:34px; display:flex; flex-direction:column; justify-content:center; }.project-meta { display:flex; justify-content:space-between; color:var(--gold-light); letter-spacing:.14em; font-size:.59rem; }.project-copy h3 { font:600 clamp(1.8rem,3vw,3rem)/1.1 var(--serif); margin:18px 0 16px; }.project-copy p { color:var(--muted); font-size:.88rem; }.tag-list { display:flex; flex-wrap:wrap; gap:7px; padding:0; margin:18px 0 0; }
.project-case-button { min-height:62px; margin-top:30px; align-self:flex-start; padding-inline:30px; font-size:.94rem; }
.project-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.project-actions .button { min-height:46px; padding:11px 17px; font-size:.75rem; }
.portfolio-footer { display:flex; justify-content:center; margin-top:54px; }
.projects-main { padding-top:0; }
.projects-intro { padding-block:100px 90px; }
.projects-intro h1 { font:600 clamp(3.5rem,6.6vw,6.8rem)/.98 var(--serif); letter-spacing:-.045em; margin:24px 0 36px; max-width:1050px; }
.projects-intro-copy { display:grid; grid-template-columns:minmax(0,720px) auto; justify-content:space-between; gap:40px; align-items:end; border-top:1px solid var(--line); padding-top:28px; }
.projects-intro-copy p { color:var(--muted); font-size:1rem; margin:0; }
.projects-intro-copy strong { color:var(--gold-light); font:600 1.12rem var(--serif); white-space:nowrap; }
.projects-catalog { background:var(--surface); border-block:1px solid var(--line); }
.catalog-toolbar { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; margin-bottom:54px; }
.catalog-toolbar h2 { font:600 clamp(2.2rem,4vw,3.6rem)/1 var(--serif); margin:14px 0 0; }
.website-project .project-image img { object-position:center; }
.website-project .project-copy { justify-content:flex-start; }
.visual-luz { background:linear-gradient(145deg,#122d3d,#0d3e46 58%,#e9b84f); display:grid; place-items:center; }.sun-disc { width:170px;height:170px;border-radius:50%;background:#f4c753;position:absolute;right:-25px;top:-35px;box-shadow:0 0 70px rgba(244,199,83,.45); }.bill-card { position:relative; z-index:2; display:grid; width:64%; padding:30px;border-radius:16px;background:rgba(255,255,255,.93);box-shadow:0 28px 50px rgba(0,0,0,.25);color:#0d2d38;transform:rotate(-3deg); }.bill-card small{font-size:.58rem;letter-spacing:.12em}.bill-card strong{font:700 3.6rem var(--serif);color:#1b7c73}.bill-card span{font-size:.7rem}.energy-line{position:absolute;border:1px solid rgba(255,255,255,.35);border-radius:50%;width:360px;height:180px;transform:rotate(-15deg)}.line-two{width:450px;height:240px;}
.visual-manager { padding:42px; background:linear-gradient(145deg,#0a1725,#122a3b); }.manager-top { display:flex;align-items:center;justify-content:space-between;color:white;font:600 1.4rem var(--serif);margin-bottom:28px}.manager-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.manager-grid>span{display:grid;grid-template-columns:10px 1fr;align-items:center;gap:9px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:9px;padding:16px;color:#eef4f6;font-size:.7rem}.manager-grid>span i{width:7px;height:7px;background:#57c787;border-radius:50%}.manager-grid small{grid-column:2;color:#7f91a2;font-size:.56rem}
.journey-grid .section-heading p { color:var(--muted); max-width:360px; }.timeline { border-left:1px solid var(--line); }.timeline-item { padding:0 0 54px 48px; position:relative; }.timeline-item::before { content:""; position:absolute; left:-5px; top:7px; width:9px; height:9px; background:var(--gold-light); border-radius:50%; box-shadow:0 0 0 8px color-mix(in srgb,var(--gold-light) 12%,transparent); }.timeline-item span{color:var(--gold-light);font-size:.6rem;letter-spacing:.14em}.timeline-item h3{font:600 1.7rem var(--serif);margin:8px 0}.timeline-item p{color:var(--muted);font-size:.88rem;max-width:580px}
.cv-section { background:var(--surface); border-block:1px solid var(--line); }
.cv-actions { display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-end; padding-bottom:12px; }
.cv-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.cv-card { padding:30px; min-height:260px; display:flex; flex-direction:column; }
.cv-card-feature { grid-column:span 2; background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2) 76%,transparent),var(--night)); }
.cv-card .tag-list { margin-top:auto; padding-top:20px; }
.deep-hero,.cv-hero { min-height:calc(100vh - 84px); display:grid; grid-template-columns:.92fr 1.08fr; gap:7vw; align-items:center; padding-block:90px; }
.deep-hero-copy h1,.cv-hero-copy h1,.deep-section-head h2,.cv-board-head h2 { font-family:var(--serif); letter-spacing:-.045em; line-height:.98; }
.deep-hero-copy h1,.cv-hero-copy h1 { font-size:clamp(3.5rem,6.6vw,6.8rem); margin:24px 0 28px; }
.deep-hero-copy p,.cv-hero-copy p { color:var(--muted); max-width:650px; font-size:1.08rem; }
.deep-logo-panel { border:1px solid rgba(242,203,105,.2); border-radius:18px; overflow:hidden; background:#04101d; box-shadow:var(--shadow); }
.deep-logo-panel img { width:100%; height:100%; object-fit:cover; }
.belief-strip { border-block:1px solid var(--line); background:var(--surface); }
.belief-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; }
.belief-grid>div { padding:28px; border-right:1px solid var(--line); }
.belief-grid>div:last-child { border-right:0; }
.belief-grid strong { display:block; color:var(--gold-light); font:600 1.35rem var(--serif); margin-bottom:8px; }
.belief-grid span { color:var(--muted); font-size:.82rem; }
.logo-meaning { display:grid; grid-template-columns:.82fr 1.18fr; gap:6vw; align-items:center; }
.meaning-visual { border:1px solid var(--line); border-radius:20px; background:radial-gradient(circle at center, rgba(242,203,105,.18), transparent 56%), var(--surface); padding:40px; box-shadow:var(--shadow); }
.meaning-visual img { width:min(520px,100%); margin:auto; filter:drop-shadow(0 30px 42px rgba(0,0,0,.34)); }
.meaning-copy h2,.deep-section-head h2,.cv-board-head h2 { font-size:clamp(3rem,5.4vw,5.5rem); margin:22px 0 34px; }
.meaning-list { display:grid; gap:16px; }
.meaning-list article,.origin-note,.adila-card,.learning-card { border:1px solid var(--line); background:var(--surface); border-radius:14px; padding:26px; }
.meaning-list span,.origin-note span,.learning-card span { color:var(--gold-light); font-size:.58rem; font-weight:800; letter-spacing:.16em; }
.meaning-list h3,.origin-note h3,.learning-card h3 { font:600 1.45rem var(--serif); margin:8px 0 10px; }
.meaning-list p,.deep-section-head p,.origin-note p,.adila-card p,.learning-card p { color:var(--muted); font-size:.88rem; margin-bottom:0; }
.adila-section,.cv-notion { background:var(--surface); border-block:1px solid var(--line); }
.deep-section-head,.cv-board-head { display:flex; justify-content:space-between; align-items:flex-end; gap:44px; margin-bottom:44px; }
.deep-section-head p { max-width:470px; }
.adila-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.adila-card { min-height:260px; display:flex; flex-direction:column; }
.adila-card strong { width:46px; height:46px; display:grid; place-items:center; border-radius:50%; color:#071827; background:var(--gold-light); font-weight:900; margin-bottom:22px; }
.adila-card span { color:var(--text); font:600 1.35rem var(--serif); margin-bottom:10px; }
.adila-pending { border-style:dashed; background:color-mix(in srgb,var(--surface) 58%,transparent); }
.origin-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.pending-section { border-top:1px solid var(--line); }
.pending-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.pending-grid-wide { grid-template-columns:repeat(4,1fr); }
.empty-slot { min-height:180px; display:grid; place-items:center; text-align:center; border:1px dashed color-mix(in srgb,var(--gold-light) 45%,transparent); border-radius:14px; color:var(--muted); background:color-mix(in srgb,var(--surface) 64%,transparent); padding:24px; font-weight:700; font-size:.82rem; }
.cv-hero { grid-template-columns:1fr .72fr; }
.cv-profile-card { border:1px solid var(--line); border-radius:22px; background:var(--surface); overflow:hidden; box-shadow:var(--shadow); }
.cv-profile-card img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center; }
.cv-profile-card div { padding:28px; display:grid; gap:8px; }
.cv-profile-card strong { font:600 2rem var(--serif); }
.cv-profile-card span,.cv-profile-card a { color:var(--muted); font-size:.86rem; }
.cv-profile-card a { color:var(--gold-light); font-weight:700; }
.experience-block { display:grid; grid-template-columns:.88fr 1.12fr; gap:26px; padding:28px; border:1px solid var(--line); border-radius:18px; background:var(--night); margin-bottom:22px; }
.experience-main span { color:var(--gold-light); letter-spacing:.16em; font-size:.58rem; font-weight:800; }
.experience-main h3 { font:600 clamp(1.8rem,3vw,3rem)/1.05 var(--serif); margin:14px 0; }
.experience-main p { color:var(--muted); font-size:.92rem; }
.evidence-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.evidence-grid .empty-slot { min-height:230px; }
.learning-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.portal-section { padding-block:130px; background:#05111e; color:#f7f4ec; overflow:hidden; position:relative; }.portal-section::after{content:"";position:absolute;width:650px;height:650px;border-radius:50%;background:rgba(207,160,70,.08);filter:blur(80px);right:-250px;top:-200px}.portal-grid { display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center;position:relative;z-index:2 }.portal-copy p{color:#9aa8b7}.section-kicker.light{color:#f2cb69}.access-legend{display:flex;gap:20px;flex-wrap:wrap;margin:28px 0}.access-legend span{display:flex;align-items:center;gap:8px;font-size:.72rem;color:#9aa8b7}.demo-dot,.private-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.demo-dot{background:#57c787}.private-dot{background:#f2cb69}.portal-window{border:1px solid rgba(255,255,255,.14);border-radius:18px;overflow:hidden;background:#0b1d30;box-shadow:0 40px 100px rgba(0,0,0,.45);transform:perspective(1200px) rotateY(-4deg)}.portal-window-top{height:54px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);padding:0 18px;color:#94a4b5;font-size:.62rem}.portal-window-top span{display:flex;gap:6px}.portal-window-top span i{width:7px;height:7px;border-radius:50%;background:#33485b}.portal-window-top small{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#cfa046;color:#071827;font-weight:800}.portal-window-body{min-height:430px;display:grid;grid-template-columns:70px 1fr}.portal-window aside{border-right:1px solid rgba(255,255,255,.08);padding:20px 16px;display:flex;align-items:center;flex-direction:column;gap:24px}.portal-window aside img{width:36px}.portal-window aside span{width:24px;height:5px;border-radius:5px;background:#263a4d}.portal-content{padding:38px}.portal-welcome{display:grid;margin-bottom:28px}.portal-welcome small{font-size:.54rem;letter-spacing:.16em;color:#f2cb69}.portal-welcome strong{font:600 1.8rem var(--serif)}.portal-apps{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.portal-apps>div{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);border-radius:10px}.portal-apps b{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;background:#152d43;color:#f2cb69;font-size:.64rem}.portal-apps span{display:grid;margin-right:auto}.portal-apps strong{font-size:.72rem}.portal-apps small{color:#74879a;font-size:.53rem}.lock-mark{color:#f2cb69;font-style:normal}
.cta { text-align:center; position:relative; overflow:hidden; }.cta-mark { width:100px;margin:0 auto 26px;opacity:.16 }.cta .eyebrow{justify-content:center}.cta>p:not(.eyebrow){color:var(--muted);max-width:560px;margin:0 auto 30px}.contact-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 auto 28px}.contact-card{max-width:880px;margin:34px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.contact-card>div{display:grid;gap:8px;text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:22px}.contact-card span{color:var(--muted);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800}.contact-card a{color:var(--gold-light);font-weight:800}.contact-band{margin-block:0 100px;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:34px;display:flex;align-items:center;justify-content:space-between;gap:24px}.contact-band h2{font:600 clamp(1.8rem,3vw,3rem)/1.05 var(--serif);margin:8px 0 0}.contact-band-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.footer{background:#030d18;color:#f7f4ec;border-top:1px solid rgba(255,255,255,.1);padding-block:52px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:30px}.footer p,.footer small{color:#8998a8;font-size:.7rem;margin:0}.footer-links{display:flex;gap:20px;font-size:.72rem;color:#b0bcc7;flex-wrap:wrap}
.apps-main{padding-block:90px 120px}.back-link{margin-left:auto;color:var(--muted);font-size:.8rem}.apps-hero{max-width:840px;margin-bottom:70px}.apps-hero h1{font-size:clamp(3.4rem,7vw,6.8rem);margin:22px 0 28px}.apps-hero>p:last-of-type{color:var(--muted);font-size:1.1rem;max-width:740px}.apps-dashboard{border:1px solid var(--line);background:var(--surface);border-radius:20px;padding:38px;box-shadow:var(--shadow)}.apps-dashboard-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.apps-dashboard-head small{color:var(--gold-light);font-size:.56rem;letter-spacing:.15em}.apps-dashboard-head h2{font:600 2.3rem var(--serif);margin:2px 0}.preview-user{display:flex;align-items:center;gap:10px}.preview-user>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--gold-light);color:#071827;font-weight:800}.preview-user div{display:grid}.preview-user strong{font-size:.72rem}.preview-user small{color:var(--muted);font-size:.58rem}.app-directory{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.app-tile{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--night)}.app-thumb{height:230px;overflow:hidden}.app-thumb>img{width:100%;height:100%;object-fit:cover;object-position:top}.app-thumb.visual-luz{min-height:0}.app-thumb .bill-card{padding:20px}.app-thumb .bill-card strong{font-size:2.4rem}.app-thumb.visual-manager{padding:26px}.app-tile-copy{padding:26px}.access-pill{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:.52rem;letter-spacing:.13em;font-weight:800}.access-pill.demo{background:rgba(87,199,135,.13);color:#57c787}.access-pill.private{background:rgba(242,203,105,.12);color:var(--gold-light)}.access-pill.admin{background:rgba(190,94,94,.13);color:#e78080}.app-tile h3{font:600 1.6rem var(--serif);margin:12px 0 8px}.app-tile p{color:var(--muted);font-size:.78rem;min-height:50px}.app-tile .button{margin-top:8px}.apps-note{margin-top:80px;padding:46px 0;border-block:1px solid var(--line);display:grid;grid-template-columns:.75fr 1.25fr auto;align-items:center;gap:50px}.apps-note span{font-size:.56rem;letter-spacing:.16em;color:var(--gold-light)}.apps-note h2{font:600 2rem var(--serif);margin:8px 0}.apps-note p{color:var(--muted);font-size:.85rem;margin:0}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,120px);opacity:0;z-index:300;background:var(--gold-light);color:#071827;padding:13px 20px;border-radius:999px;box-shadow:var(--shadow);font-weight:700;font-size:.76rem;transition:.3s}.toast.show{transform:translate(-50%,0);opacity:1}
.project-link{display:inline-flex;align-items:center;gap:10px;margin-top:24px;color:var(--gold-light);font-weight:800;font-size:.82rem}.project-link:hover span{transform:translateX(4px)}.project-link span{transition:transform .2s}
.button-disabled{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#a8b3bd;cursor:not-allowed;box-shadow:none}.button-disabled:hover{transform:none}.button-large{min-height:54px;padding-inline:26px}
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.js .reveal.visible{opacity:1;transform:none}.reveal-delay{transition-delay:.12s}.reveal-delay-2{transition-delay:.24s}
@media (max-width: 980px){.main-nav{position:absolute;top:84px;left:24px;right:24px;display:none;flex-direction:column;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.menu-toggle{display:block}.desktop-cta{display:none}.hero{grid-template-columns:1fr;padding-top:70px}.hero-copy{position:relative;z-index:4}.portrait-stage{min-height:580px}.logo-rail-inner{grid-template-columns:1fr}.logo-list{grid-template-columns:repeat(2,1fr)}.about-grid,.journey-grid,.portal-grid,.deep-hero,.logo-meaning,.cv-hero,.experience-block{grid-template-columns:1fr;gap:48px}.belief-grid,.origin-grid,.pending-grid,.pending-grid-wide,.contact-card{grid-template-columns:repeat(2,1fr)}.deep-section-head,.cv-board-head,.trust-head,.cv-head{align-items:flex-start;flex-direction:column}.trust-grid,.brand-story,.values-strip{grid-template-columns:1fr}.value-list,.adila-grid{grid-template-columns:repeat(2,1fr)}.cv-grid,.learning-grid{grid-template-columns:repeat(2,1fr)}.cv-card-feature{grid-column:1/-1}.capabilities{grid-template-columns:1fr}.capability{border-right:0;border-bottom:1px solid var(--line);padding-inline:0}.project-featured,.project-wide{grid-template-columns:1fr}.project-featured .project-image,.project-wide .project-image{min-height:360px}.catalog-toolbar{align-items:flex-start;flex-direction:column}.filter-row{justify-content:flex-start;padding:0}.portal-window{transform:none}.contact-band{align-items:flex-start;flex-direction:column}.contact-band-actions{justify-content:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.apps-note{grid-template-columns:1fr}.apps-note .text-link{justify-self:start}}
@media (max-width: 700px){.section-shell,.nav-shell{width:min(100% - 32px,1180px)}.section-pad{padding-block:88px}.site-header{height:72px}.main-nav{top:72px}.brand img{width:36px;height:36px}.hero,.deep-hero,.cv-hero{min-height:auto;padding-block:58px}.hero h1,.deep-hero-copy h1,.cv-hero-copy h1{font-size:clamp(3.2rem,17vw,5rem)}.hero-actions{align-items:flex-start;flex-direction:column}.hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.hero-metrics div{min-width:0;padding-right:10px;margin-right:10px}.hero-metrics span{font-size:.58rem}.portrait-stage{min-height:470px}.portrait-frame{width:76%;}.orbit-one{width:340px;height:340px}.orbit-two{width:290px;height:290px}.note-top{right:0}.note-bottom{left:0}.sun-disc{right:-12px}.energy-line{width:310px;height:150px}.line-two{width:350px;height:190px}.logo-list{grid-template-columns:1fr 1fr;gap:20px}.logo-rail-inner{gap:16px}.section-heading h2,.portfolio-head h2,.portal-copy h2,.cta h2,.trust-head h2,.cv-head h2,.meaning-copy h2,.deep-section-head h2,.cv-board-head h2{font-size:3.25rem}.trust-head,.cv-head{gap:22px}.brand-story,.origin-card,.values-strip,.cv-card,.meaning-list article,.adila-card,.learning-card,.experience-block{padding:24px}.crest-card{min-height:220px}.value-list,.cv-grid,.belief-grid,.adila-grid,.origin-grid,.pending-grid,.pending-grid-wide,.learning-grid,.evidence-grid,.contact-card{grid-template-columns:1fr}.contact-actions{align-items:stretch;flex-direction:column}.contact-actions .button{width:100%}.contact-card>div{text-align:center}.contact-band{padding:24px;margin-bottom:72px}.contact-band-actions{width:100%;flex-direction:column}.contact-band-actions .button{width:100%}.cv-actions{justify-content:flex-start}.portfolio-head{align-items:flex-start;flex-direction:column}.filter-row{justify-content:flex-start;padding:0}.project-grid{grid-template-columns:1fr}.project-featured,.project-wide{grid-column:auto}.project-featured .project-image,.project-wide .project-image,.project-image{min-height:280px}.project-copy{padding:26px}.project-case-button,.project-actions,.project-actions .button,.portfolio-footer .button{width:100%}.project-actions{flex-direction:column}.projects-intro{padding-block:64px}.projects-intro h1{font-size:clamp(3rem,15vw,4.5rem)}.projects-intro-copy{grid-template-columns:1fr;gap:18px}.projects-intro-copy strong{white-space:normal}.catalog-toolbar{margin-bottom:40px}.portal-apps{grid-template-columns:1fr}.portal-window-body{grid-template-columns:48px 1fr}.portal-window aside{padding-inline:8px}.portal-content{padding:24px 18px}.footer-grid{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.app-directory{grid-template-columns:1fr}.apps-dashboard{padding:20px}.apps-dashboard-head{align-items:flex-start}.preview-user div{display:none}.apps-main{padding-top:60px}.apps-note{gap:16px}.back-link{font-size:.65rem}.apps-page .brand span{display:none}.deep-logo-panel img{min-height:260px}.empty-slot{min-height:150px}}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.orbit-two{animation:none}.project-card,.browser-shot>img{transition:none}}

/* ERP Pulpo case study v2 */
.erp-case-page{--erp-green:#3ca777;--erp-green-soft:rgba(60,167,119,.14);--erp-purple:#7248b9;--erp-blue:#4285f4;--erp-red:#e95c4b}
.erp-case-page .icon-button{width:44px;height:44px}
.erp-hero{min-height:calc(100vh - 84px);display:flex;align-items:center;border-bottom:1px solid var(--line);background:var(--night);position:relative;overflow:hidden}
.erp-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:72px 72px;opacity:.16;mask-image:linear-gradient(to right,black,transparent 70%)}
.erp-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:72px;align-items:center;padding-block:76px;position:relative;z-index:1}
.erp-back{display:inline-block;color:var(--muted);font-size:.75rem;margin-bottom:34px}
.erp-hero h1{font:700 6.2rem/1 var(--serif);letter-spacing:0;margin:20px 0 26px}
.erp-hero-lead{max-width:700px;color:var(--muted);font-size:1.14rem;line-height:1.72}
.erp-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:34px 0 40px}
.erp-hero-proof{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}
.erp-hero-proof>div{padding:20px 20px 20px 0;border-right:1px solid var(--line)}
.erp-hero-proof>div:nth-child(n+2){padding-left:20px}.erp-hero-proof>div:last-child{border-right:0}
.erp-hero-proof strong{display:block;color:var(--gold-light);font:600 1.22rem var(--serif)}
.erp-hero-proof span{display:block;color:var(--muted);font-size:.64rem;margin-top:5px}
.erp-product-shot{margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#0b1722;box-shadow:var(--shadow)}
.erp-product-shot>img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top}
.erp-product-shot figcaption{display:flex;align-items:center;gap:9px;padding:14px 16px;color:var(--muted);font-size:.68rem;border-top:1px solid var(--line)}
.erp-product-shot figcaption span{width:8px;height:8px;border-radius:50%;background:var(--erp-green);box-shadow:0 0 0 5px var(--erp-green-soft)}
.erp-section-head{max-width:920px;margin-bottom:58px}
.erp-section-head h2,.erp-generation-head h2,.erp-cta h2{font:600 4.6rem/1.03 var(--serif);letter-spacing:0;margin:20px 0}
.erp-origin-grid{display:grid;grid-template-columns:1fr 1fr;gap:88px}
.erp-large-copy{font:600 1.58rem/1.48 var(--serif);color:var(--text)}
.erp-origin-story>p:not(.erp-large-copy){color:var(--muted);font-size:.95rem}.erp-origin-story strong{color:var(--text)}
.erp-before{border-top:1px solid var(--line)}
.erp-before>div{display:grid;grid-template-columns:42px 180px 1fr;gap:18px;padding:23px 0;border-bottom:1px solid var(--line);align-items:start}
.erp-before span,.erp-v1-detail span,.erp-value-grid span{color:var(--gold-light);font-size:.58rem;font-weight:800;letter-spacing:.14em}
.erp-before strong{font:600 1.13rem var(--serif)}.erp-before p{color:var(--muted);font-size:.78rem;margin:0}
.erp-generation{border-block:1px solid var(--line)}.erp-generation-one{background:var(--surface)}.erp-generation-two{background:var(--night)}
.erp-generation-head{display:grid;grid-template-columns:1.08fr .92fr;gap:90px;align-items:end;margin-bottom:70px}
.erp-generation-head>p{color:var(--muted);font-size:.98rem;margin-bottom:14px}
.erp-version-label{display:inline-flex;border:1px solid var(--gold);border-radius:999px;padding:7px 11px;color:var(--gold-light);font-size:.57rem;font-weight:800;letter-spacing:.14em}
.erp-flow-title{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px}
.erp-flow-title span{color:var(--erp-green);font-size:.58rem;font-weight:800;letter-spacing:.14em}.erp-flow-title strong{font:600 1.35rem var(--serif)}
.erp-flow-image{display:block;margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#071827}
.erp-flow-image img{display:block;width:100%;height:auto}
.erp-flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:14px}
.erp-flow-step{position:relative;min-width:0;padding:22px 14px;border:1px solid var(--line);border-radius:8px;background:var(--night)}
.erp-generation-two .erp-flow-step{background:var(--surface)}
.erp-flow-step:not(:last-child)::after{content:"→";position:absolute;right:-14px;top:56px;z-index:3;width:14px;text-align:center;color:var(--erp-green);font-weight:800}
.erp-step-number{display:block;color:var(--gold-light);font-size:.6rem;font-weight:800;letter-spacing:.12em;margin-bottom:15px}
.erp-tool-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:8px;margin-bottom:17px;background:var(--surface-2);color:var(--text)}
.erp-generation-two .erp-tool-icon{background:var(--night)}
.erp-tool-icon svg{width:37px;height:37px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.erp-tool-icon b{font:800 1.1rem var(--sans);letter-spacing:0}
.icon-paper{color:#dfe5eb}.icon-forms{background:rgba(114,72,185,.18);color:#9d7adb}.icon-forms svg path:first-child{fill:#7248b9;stroke:#7248b9}.icon-forms svg path:not(:first-child),.icon-forms svg circle{stroke:#fff}
.icon-sheets{background:rgba(52,168,83,.16);color:#55bd72}.icon-sheets svg path:first-child{fill:#34a853;stroke:#34a853}.icon-sheets svg path:not(:first-child){stroke:#fff}
.icon-data{color:#69b98f}.icon-script{color:#f2cb69}.icon-dashboard{color:#66a4ef}.icon-looker{background:rgba(66,133,244,.13)}.icon-looker circle:first-child{stroke:#fbbc04}.icon-looker circle:nth-child(2){stroke:#4285f4}.icon-looker path{stroke:#34a853}
.icon-camera{color:#dfe5eb}.icon-whatsapp{background:rgba(37,211,102,.14);color:#25d366}.icon-agent{color:#e59762}.icon-ocr{color:#66a4ef}.icon-review{color:#60bd88}.icon-django{background:#092e20;color:#fff}.icon-postgres{background:#4169e1;color:#fff}
.erp-flow-step>strong{display:block;min-height:42px;font-size:.84rem;line-height:1.35}.erp-flow-step>p{color:var(--muted);font-size:.69rem;line-height:1.5;margin:7px 0 0}
.erp-v1-detail{display:grid;grid-template-columns:repeat(3,1fr);margin-top:76px;border-top:1px solid var(--line)}
.erp-v1-detail article{padding:30px 30px 34px 0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.erp-v1-detail article:nth-child(3n+2){padding-left:30px}.erp-v1-detail article:nth-child(3n){padding-left:30px;border-right:0}
.erp-v1-detail h3,.erp-current-copy h3,.erp-value-grid h3{font:600 1.42rem var(--serif);margin:12px 0 9px}.erp-v1-detail p,.erp-current-copy p,.erp-value-grid p{color:var(--muted);font-size:.8rem;margin:0}
.erp-achievement{background:#071827;color:#f7f4ec;border-bottom:1px solid rgba(255,255,255,.12)}
.erp-achievement-grid{padding-block:68px;display:grid;grid-template-columns:220px 1fr;gap:70px;align-items:start}.erp-achievement span{color:#66c294;font-size:.58rem;font-weight:800;letter-spacing:.15em}.erp-achievement p{font:600 2rem/1.45 var(--serif);margin:0;max-width:900px}
.erp-output-flow{margin-top:60px;padding-block:28px;border-block:1px solid var(--line);display:grid;grid-template-columns:1.1fr repeat(5,1fr);gap:0}
.erp-output-flow>span{color:var(--gold-light);font-size:.58rem;font-weight:800;letter-spacing:.14em;padding-right:24px}
.erp-output-flow>div{padding:0 18px;border-left:1px solid var(--line)}.erp-output-flow strong{display:block;font-size:.78rem}.erp-output-flow p{color:var(--muted);font-size:.66rem;margin:6px 0 0}
.erp-current-copy{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:76px}.erp-current-copy>div{border-top:1px solid var(--line);padding-top:26px}.erp-current-copy span{color:var(--erp-green);font-size:.57rem;font-weight:800;letter-spacing:.14em}
.erp-impact-grid{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}
.erp-impact-grid>div{padding:34px 26px;border-right:1px solid var(--line)}.erp-impact-grid>div:first-child{padding-left:0}.erp-impact-grid>div:last-child{border-right:0}
.erp-impact-grid strong{display:block;color:var(--gold-light);font:700 3.4rem/1 var(--serif)}.erp-impact-grid span{display:block;color:var(--muted);font-size:.72rem;max-width:190px;margin-top:12px}
.erp-impact-story{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:44px}.erp-impact-story p{color:var(--muted);font-size:.92rem}
.erp-value{background:var(--surface);border-block:1px solid var(--line)}
.erp-value-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.erp-value-grid article{padding:30px 28px 0;border-right:1px solid var(--line)}.erp-value-grid article:first-child{padding-left:0}.erp-value-grid article:last-child{border-right:0}
.erp-cta{padding-block:110px;background:#04101d;color:#f7f4ec}.erp-cta-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:center}.erp-cta h2{font-size:3.7rem}.erp-cta p{color:#9eacb8;max-width:700px}.erp-cta-actions{display:grid;gap:12px}.erp-cta-actions .button{width:100%;white-space:normal;text-align:center}
@media(max-width:1220px){.erp-hero-grid{grid-template-columns:1fr;gap:48px}.erp-product-shot{max-width:760px}.erp-flow{grid-template-columns:repeat(4,1fr)}.erp-flow-step:nth-child(4)::after{display:none}.erp-flow-step:nth-child(n+5){margin-top:0}.erp-v1-detail{grid-template-columns:repeat(2,1fr)}.erp-v1-detail article:nth-child(n){padding:28px;border-right:1px solid var(--line)}.erp-v1-detail article:nth-child(even){border-right:0}.erp-output-flow{grid-template-columns:repeat(3,1fr);row-gap:24px}.erp-output-flow>span{grid-column:1/-1}.erp-output-flow>div:nth-child(2),.erp-output-flow>div:nth-child(5){border-left:0;padding-left:0}}
@media(max-width:980px){.erp-origin-grid,.erp-generation-head{grid-template-columns:1fr;gap:34px}.erp-section-head h2,.erp-generation-head h2{font-size:4rem}}
@media(max-width:760px){.erp-hero{min-height:auto}.erp-hero-grid{padding-block:54px}.erp-hero h1{font-size:4rem}.erp-hero-lead{font-size:1rem}.erp-hero-actions{flex-direction:column}.erp-hero-actions .button{width:100%;white-space:normal;text-align:center}.erp-hero-proof{grid-template-columns:1fr}.erp-hero-proof>div:nth-child(n){padding:16px 0;border-right:0;border-bottom:1px solid var(--line)}.erp-hero-proof>div:last-child{border-bottom:0}.erp-section-head h2,.erp-generation-head h2,.erp-cta h2{font-size:3rem}.erp-origin-grid,.erp-generation-head,.erp-impact-story,.erp-cta-grid{grid-template-columns:1fr;gap:34px}.erp-before>div{grid-template-columns:36px 1fr}.erp-before p{grid-column:2}.erp-flow-title{display:block}.erp-flow-title strong{display:block;margin-top:8px}.erp-flow-image{max-width:520px;margin-inline:auto}.erp-v1-detail,.erp-current-copy,.erp-impact-grid,.erp-value-grid{grid-template-columns:1fr}.erp-v1-detail article:nth-child(n),.erp-value-grid article:nth-child(n){padding:24px 0;border-right:0}.erp-achievement-grid{grid-template-columns:1fr;gap:18px}.erp-achievement p{font-size:1.45rem}.erp-output-flow{grid-template-columns:1fr}.erp-output-flow>div:nth-child(n){border-left:0;border-top:1px solid var(--line);padding:16px 0}.erp-current-copy{gap:24px;margin-top:54px}.erp-impact-grid>div:nth-child(n){padding:24px 0;border-right:0;border-bottom:1px solid var(--line)}.erp-impact-grid>div:last-child{border-bottom:0}.erp-cta{padding-block:76px}}
