/* Propuesta 02 · Minimal. Una copia local independiente, sin publicación. */
:root { --shell:min(1200px,calc(100% - 96px)); --radius:24px; --minimal-font:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif; --studio-serif:var(--minimal-font); }
body { font-family:var(--minimal-font);-webkit-font-smoothing:antialiased; }
h1,h2,h3,h4,button,input,textarea,select { font-family:var(--minimal-font); }
h1,h2,h3 { text-wrap:balance; }
.site-header,.site-header.scrolled,.page-header { background:rgba(250,250,252,.94);border-bottom:1px solid #e8e8ed; }
.nav-wrap { min-height:64px;gap:32px; }
.brand-mark { width:26px;height:26px;flex-basis:26px;border-radius:7px;filter:grayscale(1); }
.brand-type strong { font-size:17px;letter-spacing:.025em;font-weight:650; }
.brand-type small { font-size:6px;letter-spacing:.25em;margin-top:3px; }
.primary-nav { gap:26px; }.primary-nav a { font-size:11px;font-weight:450; }
.header-cta { color:#0066cc;border:0;font-size:11px; }
.button { min-height:44px;padding:12px 23px;border-radius:100px;font-size:14px;font-weight:400;transition:background .18s; }
.button-primary { background:#0071e3;border-color:#0071e3; }.button-primary:hover { background:#0077ed;border-color:#0077ed; }
.button-ghost { color:#0066cc;border-color:#0066cc; }.button-ghost:hover { background:#eaf3ff; }
.eyebrow { letter-spacing:.025em;font-size:12px!important;font-weight:600!important;text-transform:none; }
.minimal-hero { padding:65px 0 30px;overflow:hidden;background:#f5f5f7;text-align:center; }
.minimal-eyebrow { margin:0 0 15px;font-size:12px;letter-spacing:.17em;font-weight:600;color:#626267; }
.minimal-hero h1 { font-size:clamp(50px,5.65vw,82px);line-height:1.025;font-weight:650;letter-spacing:-.057em;margin:0;color:#1d1d1f; }
.minimal-lead { margin:22px auto 24px;color:#626267;font-size:23px;line-height:1.4;font-weight:400;letter-spacing:-.022em; }
.minimal-actions { display:flex;align-items:center;justify-content:center;gap:28px; }
.minimal-text-link { color:#0066cc;font-size:17px;font-weight:400; }.minimal-text-link span { margin-left:5px;font-size:23px;vertical-align:-1px; }.minimal-text-link:hover { text-decoration:underline; }
.minimal-product { width:min(980px,calc(100% - 80px));margin:55px auto 0; }
.minimal-devices { position:relative;padding:0 76px 16px 0;text-align:left; }
.minimal-desktop { padding:8px;border:1px solid #c7c7cc;background:#e5e5e9;border-radius:20px;box-shadow:0 30px 70px -36px #22223855; }
.minimal-browser { height:29px;background:#fafafa;border-bottom:1px solid #e4e4e8;border-radius:12px 12px 0 0;display:flex;align-items:center;justify-content:space-between;padding:0 14px;color:#737378; }
.minimal-browser > span { display:flex;gap:5px;width:43px; }.minimal-browser > span:last-child { justify-content:flex-end; }
.minimal-browser i { display:block;width:6px;height:6px;border-radius:50%;background:#d4d4d8; }.minimal-browser small { font-size:8px;letter-spacing:.03em; }
.minimal-website { padding:22px 30px 18px;background:#fff;border-radius:0 0 12px 12px;overflow:hidden; }
.minimal-site-nav { display:flex;align-items:center;justify-content:space-between;color:#4f504d;margin-bottom:22px; }
.minimal-site-nav strong { font-size:26px;letter-spacing:-.07em;color:#33372e; }.minimal-site-nav strong span { color:#777d69; }
.minimal-site-nav div,.minimal-site-nav > span { font-size:8px; }.minimal-site-nav > span { padding:9px 12px;border:1px solid #d1d4cc;border-radius:2px; }
.minimal-site-content { display:grid;grid-template-columns:.86fr 1.2fr;gap:24px;align-items:center; }
.minimal-site-content small { font-size:7px;letter-spacing:.13em;color:#6c6e65; }
.minimal-site-content h2 { margin:13px 0 14px;font-family:var(--minimal-font);font-size:45px;font-weight:400;letter-spacing:-.05em;line-height:1.05;color:#33372e;text-wrap:initial; }
.minimal-site-content p { color:#6b6e65;font-size:10px;line-height:1.7;margin:0 0 19px; }
.minimal-demo-link { font-size:9px;display:inline-block;border-bottom:1px solid #777d69;padding-bottom:6px;color:#42483b; }
.minimal-site-content img { display:block;width:100%;height:285px;object-fit:cover;border-radius:1px; }
.minimal-site-bottom { display:flex;justify-content:space-between;color:#7a7c74;font-size:7px;border-top:1px solid #e9eae5;margin-top:24px;padding-top:13px; }
.minimal-phone { width:177px;height:355px;position:absolute;bottom:0;right:0;overflow:hidden;background:#fff;border:5px solid #28282a;border-radius:30px;box-shadow:0 16px 30px #1d1d1f26; }
.minimal-phone-top { height:30px;padding:0 13px;display:flex;align-items:center;justify-content:space-between;font-size:7px;color:#1d1d1f; }
.minimal-phone-top i { width:49px;height:13px;background:#202022;border-radius:20px; }
.minimal-phone-nav { display:flex;align-items:center;justify-content:space-between;padding:7px 15px 11px;color:#33372e; }.minimal-phone-nav strong { font-size:18px;letter-spacing:-.06em; }.minimal-phone-nav span { font-size:12px; }
.minimal-phone > img { width:100%;height:127px;object-fit:cover;display:block; }
.minimal-phone-copy { padding:15px; }.minimal-phone-copy small { font-size:5px;letter-spacing:.1em;color:#6b6e65; }.minimal-phone-copy h3 { font-size:24px;font-weight:400;line-height:1.08;letter-spacing:-.035em;margin:8px 0 10px;color:#33372e; }.minimal-phone-copy > span { font-size:7px;color:#42483b; }
.minimal-phone > b { position:absolute;bottom:6px;left:35%;width:30%;height:3px;background:#28282a;border-radius:5px; }
.minimal-product figcaption { margin:25px 0 0;font-size:12px;color:#626267;line-height:1.7; }.minimal-product figcaption span { display:block;font-size:10px;color:#6e6e73; }
.section { padding:100px 0;border:0; }.section h2 { font-weight:650;font-size:clamp(36px,4vw,56px);letter-spacing:-.045em;line-height:1.08;max-width:22ch; }
.section h3 { font-weight:600; }.section-intro > p:last-child { font-size:18px;line-height:1.55; }
.services { background:#fff; }.services-intro { text-align:center;margin:0 auto 50px;max-width:760px; }.services-intro h2 { max-width:none; }
.service-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0; }
.service-card { display:flex;flex-direction:column;gap:0;padding:34px 30px;background:#f5f5f7;border:0;border-radius:24px; }
.service-card header { gap:10px;margin-bottom:25px; }.service-card header span { color:#0066cc;font-size:12px;font-weight:600; }.service-card header small { font-size:10px; }
.service-card h3 { font-size:28px;max-width:none;margin-bottom:18px;line-height:1.14; }
.service-card > p { font-size:14px;line-height:1.65;margin-bottom:25px; }
.service-card > ul { margin-bottom:26px;display:grid;gap:8px; }.service-card > ul li { font-size:12px;line-height:1.5;font-weight:400; }
.service-card-foot { margin-top:auto;padding-top:23px;display:flex;flex-direction:column;align-items:flex-start;gap:13px;border-top:1px solid #d2d2d7; }
.service-card-foot a,.service-card .service-detail { font-size:13px!important;font-weight:400;color:#0066cc; }.service-card-foot a:hover { text-decoration:underline; }
.service-priority-links { justify-content:center;gap:22px;border:0;margin-top:30px; }.service-priority-links a { color:#0066cc;font-size:12px;font-weight:400; }
.studio-project { background:#f5f5f7;margin:0 14px;border-radius:28px;padding:72px 0; }
.studio-project-layout { grid-template-columns:1fr 1.55fr;gap:65px; }.studio-project-copy { grid-row:1;grid-column:1; }.studio-project-image { grid-row:1;grid-column:2;border-radius:16px;box-shadow:0 15px 40px #00000012; }
.studio-project-copy h2 { font-size:44px;font-weight:650;letter-spacing:-.045em; }.studio-project-copy > p:not(.eyebrow) { font-size:16px;line-height:1.6; }.studio-project-link { border:0;padding-top:0; }.studio-project-link strong,.studio-project-link b { color:#0066cc; }
.business-sectors-heading { gap:70px; }.business-sector-carousel { gap:24px; }.business-sector-card { flex-basis:calc((100% - 48px)/3);background:#f5f5f7!important;border-radius:22px;overflow:hidden;padding:0 0 26px; }
.business-sector-image { height:240px; }.business-sector-image img { filter:none; }.business-sector-copy,.business-sector-card:hover .business-sector-copy,.business-sector-card:focus-visible .business-sector-copy { padding:24px 24px 0; }
.business-sector-copy strong,.business-sector-card:hover .business-sector-copy strong,.business-sector-card:focus-visible .business-sector-copy strong { font-size:27px;font-weight:600; }.business-sector-copy small { font-size:10px; }
.business-sector-arrow,.business-sector-card:hover .business-sector-arrow { right:18px;top:258px; }.business-sector-controls button { border:0;border-radius:50%;background:#ededf0; }
.business-sector-actions button,.sector-directory-close { border-radius:50px; }.sector-directory-dialog { border-radius:24px; }.sector-directory-grid a { border:0;border-radius:14px; }.sector-directory-shell > header h2 { font-weight:600; }
.platform,.why-rynor,.engagement { background:#f5f5f7; }
.layer-card,.why-card,.engagement-card { background:#fff;border:0;border-radius:22px;padding:30px; }.layer-card.featured { background:#fff;border:0; }.layers-grid,.why-pillars,.engagement-grid { gap:22px; }
.evolution-panel { gap:44px; }.evolution-path article { border-radius:14px; }.evolution-copy h3 { font-size:30px; }
.solution-tabs button { border-radius:100px;padding:10px 14px;font-size:12px; }.module-configurator { border-radius:22px;padding:24px; }.module-option { border-radius:12px!important; }.sector-screen { border-radius:22px;border:1px solid #424245;box-shadow:0 15px 40px #00000012; }
.ui-stat,.ui-chart,.ui-module-preview article { border-radius:12px; }
.case-browser,.case-operations { border-radius:18px; }.case-study { background:#f5f5f7; }
.process-list h3 { font-size:25px; }.process-list li { padding:28px 0; }
.security-showcase { background:#1d1d1f; }.security-copy h2 { color:#f5f5f7; }.security-control-grid { gap:26px; }.security-control { background:#272729;border:0;border-radius:20px;padding:25px; }.security-control h3 { color:#f5f5f7; }.security-statement p { font-weight:500;letter-spacing:-.025em; }
.promise { background:#1d1d1f;border-top:1px solid #424245; }.promise-card h2 { color:#f5f5f7; }.promise-card a { border-radius:100px; }
.faq-copy h2 { max-width:13ch; }.faq-list summary { font-size:17px;font-weight:500; }
.contact { background:#f5f5f7; }.contact-form { border-radius:24px;background:#fff;padding:32px; }.contact-form input,.contact-form textarea,.contact-form select { border-radius:11px; }.contact-form label > span { font-size:13px; }
.site-footer,.page-footer { background:#f5f5f7; }.footer-top > p { font-size:25px;font-weight:500;letter-spacing:-.035em; }
.page-nav { min-height:70px; }.page-brand img { filter:grayscale(1);width:28px;height:28px;border-radius:7px; }.page-brand span { font-size:14px; }
.page-hero { background:#f5f5f7;padding:80px 0; }.page-hero h1 { font-weight:650;letter-spacing:-.05em;line-height:1.06; }.page-hero h1 em { font-style:normal;color:#1d1d1f; }.page-lead { font-size:18px;line-height:1.6; }
.hero-panel { background:#fff;border:0;border-radius:24px;padding:32px; }.hero-panel h2 { font-weight:600; }
.page-section { border:0;padding:80px 0; }.section-head h2,.module-copy h2,.sector-subheading h2,.sector-dual-heading h2 { font-weight:650;letter-spacing:-.045em; }
.feature-grid { gap:22px; }.feature-card { padding:28px;border:0!important;background:#f5f5f7!important;border-radius:22px; }.page-section.light .feature-card { background:#fff!important; }.feature-card h3 { font-weight:600; }
.guide-article h2,.legal-shell h2 { font-weight:600;letter-spacing:-.035em; }.guide-toc,.guide-author,.guide-callout,.guide-questions,.guide-red-flags,.guide-next-step,.legal-notice,.privacy-control,.author-profile,.tool-group,.sector-pricing-card,.sector-security-panel { border-radius:18px; }
.sector-jump-nav a { border-radius:100px; }.project-visual,.sector-page-media,.sector-gallery-image,.sector-visual-stage { border-radius:20px; }
.page-cta { background:#f5f5f7; }.cta-card h2 { color:#1d1d1f;font-weight:650;letter-spacing:-.04em; }.cta-card p { color:#626267; }.cta-card .button { border-color:#0071e3; }
@media(min-width:921px) { .primary-nav { position:static; } }
@media(max-width:1100px) {
  :root { --shell:calc(100% - 64px); }.primary-nav { gap:16px; }.nav-wrap { gap:22px; }
  .service-card { padding:28px 23px; }.studio-project-layout { gap:35px; }.studio-project-copy h2 { font-size:38px; }
}
@media(max-width:920px) {
  .nav-wrap { min-height:60px; }.primary-nav { background:#fafafc;padding:88px 32px 40px;gap:12px; }.primary-nav a { font-size:25px; }.menu-toggle { border:0;border-radius:10px; }
  .minimal-hero { padding-top:52px; }.minimal-hero h1 { font-size:68px; }.minimal-product { width:calc(100% - 64px); }
  .minimal-site-content h2 { font-size:34px; }.minimal-site-content img { height:250px; }.minimal-site-nav div { display:none; }.minimal-website { padding:20px; }
  .service-grid { grid-template-columns:1fr; }.service-card { display:grid;grid-template-columns:1fr 1.1fr;column-gap:32px;padding:32px; }.service-card header { grid-column:1;grid-row:1; }.service-card h3 { grid-column:1;grid-row:2; }.service-card > p { grid-column:1;grid-row:3; }.service-card > ul { grid-column:2;grid-row:1/4;align-self:center; }.service-card-foot { grid-column:1/-1;flex-direction:row;justify-content:space-between; }
  .business-sector-card { flex-basis:calc((100% - 24px)/2); }.layers-grid,.why-pillars,.engagement-grid { gap:16px; }.layer-card,.why-card,.engagement-card { padding:24px; }
  .studio-project-layout { grid-template-columns:1fr; }.studio-project-copy { grid-column:1;grid-row:1;text-align:center; }.studio-project-copy > p:not(.eyebrow) { max-width:50ch;margin-left:auto;margin-right:auto; }.studio-project-link { width:260px;text-align:left;margin-left:auto;margin-right:auto; }.studio-project-image { grid-column:1;grid-row:2; }
}
@media(max-width:600px) {
  :root { --shell:calc(100% - 40px); }.brand-type strong { font-size:17px; }
  .minimal-hero { padding:44px 0 25px; }.minimal-eyebrow { font-size:10px;margin-bottom:17px; }.minimal-hero h1 { font-size:clamp(35px,11vw,46px);letter-spacing:-.055em; }.minimal-lead { font-size:19px;margin:22px 0;line-height:1.45; }.minimal-actions { gap:20px; }.minimal-actions .button { font-size:12px;padding:12px 18px; }.minimal-text-link { font-size:15px; }
  .minimal-product { width:calc(100% - 32px);margin-top:36px; }.minimal-devices { padding:0 30px 20px 0; }.minimal-desktop { padding:4px;border-radius:11px; }.minimal-browser { height:19px;padding:0 7px;border-radius:7px 7px 0 0; }.minimal-browser small { font-size:5px; }.minimal-browser i { width:3px;height:3px; }.minimal-browser > span { width:20px;gap:3px;font-size:8px; }
  .minimal-website { padding:10px 12px;border-radius:0 0 7px 7px; }.minimal-site-nav { margin-bottom:12px; }.minimal-site-nav strong { font-size:16px; }.minimal-site-nav > span { font-size:4px;padding:4px 6px; }
  .minimal-site-content { gap:9px;grid-template-columns:.9fr 1fr; }.minimal-site-content h2 { font-size:23px;margin:7px 0; }.minimal-site-content small { font-size:4px;letter-spacing:.04em; }.minimal-site-content p { font-size:5px;line-height:1.6;margin-bottom:8px; }.minimal-demo-link { font-size:5px;padding-bottom:3px; }.minimal-site-content img { height:156px; }.minimal-site-bottom { font-size:4px;margin-top:10px;padding-top:7px; }
  .minimal-phone { width:89px;height:187px;border-width:3px;border-radius:17px; }.minimal-phone-top { height:16px;padding:0 6px;font-size:4px; }.minimal-phone-top i { width:26px;height:7px; }.minimal-phone-nav { padding:3px 8px 5px; }.minimal-phone-nav strong { font-size:10px; }.minimal-phone-nav span { font-size:7px; }.minimal-phone > img { height:67px; }.minimal-phone-copy { padding:8px; }.minimal-phone-copy small { font-size:3px; }.minimal-phone-copy h3 { font-size:14px;margin:5px 0; }.minimal-phone-copy > span { font-size:4px; }.minimal-phone > b { height:2px;bottom:4px; }
  .minimal-product figcaption { margin-top:14px;font-size:10px; }.minimal-product figcaption span { font-size:9px; }
  .section { padding:64px 0; }.section h2 { font-size:37px; }.section-intro > p:last-child { font-size:16px; }.services-intro { margin-bottom:30px; }.service-card { display:flex;padding:30px 26px; }.service-card h3 { font-size:28px; }.service-card header { margin-bottom:22px; }.service-card > ul { display:grid;grid-template-columns:1fr;margin-bottom:24px; }.service-card-foot { flex-direction:column;align-items:flex-start; }.service-priority-links { gap:16px 20px; }.service-priority-links a { font-size:11px; }
  .studio-project { padding:45px 0;margin:0 10px;border-radius:22px; }.studio-project .shell { width:calc(100% - 36px); }.studio-project-copy h2 { font-size:35px; }.studio-project-copy > p:not(.eyebrow) { font-size:15px; }
  .business-sector-card { flex-basis:86%; }.business-sector-image { height:220px; }.business-sector-copy,.business-sector-card:hover .business-sector-copy,.business-sector-card:focus-visible .business-sector-copy { padding:22px 20px 0; }.business-sector-arrow,.business-sector-card:hover .business-sector-arrow { top:237px; }
  .layers-grid,.why-pillars,.engagement-grid { gap:18px; }.layer-card,.why-card,.engagement-card { padding:28px; }.module-configurator { padding:20px; }.security-control-grid { grid-template-columns:1fr;gap:16px; }.security-control { padding:24px; }.security-control h3 { font-size:22px; }.promise-card h2 { font-size:37px; }
  .contact-form { padding:24px 20px; }.contact-form input,.contact-form textarea,.contact-form select { font-size:16px; }.page-hero { padding:44px 0 54px; }.page-hero h1 { font-size:43px; }.page-lead { font-size:17px; }.hero-panel { padding:26px; }.page-section { padding:54px 0; }.feature-card { padding:26px; }.page-cta { padding:28px 0; }.cta-card h2 { font-size:35px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.button { transition:none; } }

/* Refinamiento 03: jerarquía, ejemplos navegables y detalles de interacción. */
html { scroll-padding-top:90px; }
.site-header,.site-header.scrolled { position:sticky;top:0;z-index:100;background:rgba(250,250,252,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px); }
.primary-nav a { font-size:12px;min-height:44px;display:flex;align-items:center; }
.header-cta { background:#e8f1fc;border-radius:100px;padding:10px 17px;font-size:12px;color:#0066cc; }
.header-cta:hover { background:#ddecff; }
.minimal-hero { padding-top:54px;padding-bottom:32px; }
.minimal-hero h1 { font-size:clamp(50px,5.5vw,78px);letter-spacing:-.053em; }
.minimal-product { margin-top:32px; }
.demo-tabs { display:inline-flex;gap:3px;padding:4px;border-radius:100px;border:1px solid #dfdfe4;background:#eaeaec;margin:0 auto 28px; }
.demo-tabs button { min-height:40px;border:0;border-radius:100px;background:transparent;padding:10px 20px;color:#535359;font:500 12px var(--minimal-font);cursor:pointer;transition:background .18s,color .18s,box-shadow .18s;white-space:nowrap; }
.demo-tabs button[aria-selected="true"] { background:#fff;color:#1d1d1f;box-shadow:0 2px 6px #0000000c; }
.demo-tabs button:hover { color:#0066cc; }
.demo-stage { height:480px;text-align:left; }
.minimal-demo-panel { height:100%;border-radius:20px;min-width:0; }
.minimal-demo-panel[hidden] { display:none; }
.minimal-demo-panel:focus-visible { outline:2px solid #0071e3;outline-offset:8px; }
.minimal-product figcaption { margin-top:18px;min-height:42px; }
.minimal-product figcaption .demo-description { font-size:13px;color:#4f4f54; }
.demo-console { height:100%;max-width:904px;margin:0 auto;background:#fff;border:1px solid #d2d2d7;border-radius:20px;overflow:hidden;box-shadow:0 28px 55px -35px #22223844; }
.demo-window-bar { height:39px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fafafb;border-bottom:1px solid #e9e9ec;color:#6e6e73;padding:0 20px;font-size:10px; }
.demo-window-bar small { font-size:9px; }.demo-window-dots { color:#c2c2c7;font-size:9px;letter-spacing:2px; }
.demo-workspace { display:grid;grid-template-columns:170px 1fr;height:calc(100% - 39px); }
.demo-sidebar { display:flex;flex-direction:column;gap:10px;padding:26px 16px;background:#fafafb;border-right:1px solid #e9e9ec; }
.demo-sidebar > strong { display:block;font-size:23px;font-weight:650;letter-spacing:-.05em;padding:0 12px;margin-bottom:22px; }.demo-sidebar > strong span { display:block;font-size:10px;letter-spacing:.04em;font-weight:400;color:#6e6e73;margin-top:2px; }
.demo-sidebar > span { padding:11px 12px;border-radius:8px;font-size:11px;color:#6e6e73; }.demo-sidebar .demo-side-active { color:#0066cc;background:#eaf2fe; }.demo-sidebar > small { margin-top:auto;padding:0 12px;color:#6e6e73;font-size:10px; }
.demo-agenda { padding:22px 35px; }.demo-agenda-top { display:flex;align-items:center;justify-content:space-between; }.demo-agenda-top > span:first-child { font-size:9px;color:#6e6e73;letter-spacing:.1em; }.demo-avatar { width:25px;height:25px;border-radius:50%;background:#eaf2fe;color:#0066cc;font-size:10px;display:grid;place-items:center; }
.demo-agenda h2 { font-size:30px;font-weight:600;letter-spacing:-.04em;line-height:1.2;margin:8px 0 6px;color:#1d1d1f; }.demo-agenda > p { font-size:12px;color:#6e6e73;margin:0 0 22px; }
.demo-agenda-heading { display:flex;align-items:center;justify-content:space-between;padding-bottom:13px; }.demo-agenda-heading strong { font-size:12px;font-weight:600; }.demo-agenda-heading > span { font-size:9px;color:#6e6e73; }
.demo-task { display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:14px;padding:16px 0;border-top:1px solid #eeeef0; }.demo-task time { font-size:10px;color:#6e6e73; }.demo-task strong { display:block;font-size:12px;font-weight:500; }.demo-task div > span { display:block;font-size:10px;color:#6e6e73;margin-top:5px; }.demo-task > small { font-size:9px;padding:5px 9px;border-radius:6px;background:#eaf2fe;color:#0066cc; }.demo-task .demo-task-neutral { color:#6e6e73;background:#f5f5f7; }
.demo-agenda-foot { display:flex;align-items:center;gap:9px;border-top:1px solid #eeeef0;padding-top:16px;font-size:10px;color:#6e6e73; }.demo-agenda-foot > span { color:#0066cc; }
.demo-automation { background:#1d1d1f;color:#f5f5f7; }.demo-automation .demo-window-bar { background:#252527;border-color:#353538;color:#b8b8c0; }.demo-automation .demo-window-dots { color:#72727a; }
.demo-flow-content { padding:27px 35px;text-align:center; }.demo-flow-eyebrow { font-size:9px;color:#a2cfff;letter-spacing:.14em;margin:0 0 10px; }.demo-flow-content h2 { font-size:35px;line-height:1.06;font-weight:600;letter-spacing:-.035em;margin:0;color:#f5f5f7; }.demo-flow-content > p:not(.demo-flow-eyebrow) { font-size:12px;line-height:1.5;color:#b8b8c0;margin:14px 0 24px; }
.demo-flow { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0;padding:0;list-style:none; }.demo-flow li { position:relative;padding:17px 10px 13px;background:#29292c;border:1px solid #414146;border-radius:15px; }.demo-flow li:not(:last-child)::after { content:'›';position:absolute;left:calc(100% + 7px);top:40%;color:#86868b;font-size:20px; }
.demo-flow-icon { display:grid;place-items:center;width:29px;height:29px;background:#343d49;color:#a2cfff;border-radius:9px;margin:0 auto 10px;font-size:10px; }.demo-flow strong { display:block;font-size:15px;font-weight:500; }.demo-flow li p { font-size:11px;line-height:1.5;color:#b8b8c0;margin:7px 0 0; }.demo-flow-note { display:block;margin-top:19px;font-size:10px;color:#b8b8c0; }
.minimal-assurances { background:#fff;border-bottom:1px solid #e9e9ec; }.minimal-assurances .shell { display:flex;align-items:center;justify-content:center;gap:48px;padding:25px 0; }.minimal-assurances p { display:flex;align-items:center;gap:11px;color:#626267;font-size:12px;margin:0; }.minimal-assurances span { color:#86868b;font-size:10px; }
.services-intro .eyebrow { justify-content:center; }.services-intro > p:last-child { max-width:580px;margin-left:auto;margin-right:auto; }
.service-card { border:1px solid transparent;transition:border-color .25s,box-shadow .25s; }.service-card:focus-within { border-color:#a5caff; }
.service-card header { border-bottom:0; }.service-card > p { min-height:70px; }.service-card-foot a { display:inline-flex;align-items:center;min-height:36px;gap:8px; }.service-card-foot { gap:3px; }
.section-intro h2 { max-width:20ch; }.services-intro h2 { max-width:none; }
.platform .section-intro { text-align:center;margin:0 auto 45px; }.platform .section-intro .eyebrow { justify-content:center; }.platform .section-intro h2 { max-width:none; }.platform .section-intro > p:last-child { max-width:620px;margin-left:auto;margin-right:auto; }
.platform .layers-grid { gap:0;border-top:1px solid #d2d2d7;padding-top:22px; }.platform .layer-card { padding:24px 36px;background:transparent;border-radius:0; }.platform .layer-card + .layer-card { border-left:1px solid #d2d2d7; }.platform .layer-card h3 { font-size:25px;margin-top:18px; }
.why-rynor { background:#fff; }.why-rynor .why-card { background:#f5f5f7; }.why-rynor .section-intro { max-width:840px; }.why-rynor .section-intro h2 { max-width:24ch; }
.process .section-intro { margin-bottom:0; }.process .shell { gap:70px; }.process-list li > span { display:grid;place-items:center;background:#f5f5f7;border-radius:50%;width:32px;height:32px;color:#626267; }
.process-list li { gap:22px;grid-template-columns:32px 1fr; }.process-list p { max-width:48ch;line-height:1.7; }
.control-stack article > span { color:#0066cc;background:#edf4ff;border-radius:12px; }
.engagement-card header small { line-height:1.6; }.engagement-card h3 { font-size:24px;line-height:1.15; }.engagement-card p { font-size:14px; }
.faq-list details[open] summary { color:#0066cc; }.faq-list summary { min-height:72px; }.faq-copy h2 { max-width:16ch; }
.contact-meta a { font-size:16px;font-weight:500; }.contact-form { border:1px solid #e9e9ec; }.contact-form label > span { font-weight:500; }.contact-form .form-consent span { font-weight:400;font-size:12px;line-height:1.65; }.contact-form .cf-turnstile:empty { display:none; }.form-submit { margin-top:8px; }
.hero-panel small,.local-facts small,.security-control > span,.layer-card li,.why-card li { font-weight:500; }.page-lead { max-width:62ch; }.guide-article p,.guide-article li { line-height:1.8; }
:focus-visible { outline:2px solid #0071e3;outline-offset:4px; }.skip-link:focus { z-index:150; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  .service-card:hover { border-color:#dfdfe4;box-shadow:0 10px 30px -18px #1d1d1f25!important; }
  .business-sector-image img { transition:scale .4s; }.business-sector-card:hover .business-sector-image img { scale:1.035; }
  .studio-project-image img { transition:scale .45s; }.studio-project-image:hover img { scale:1.02; }
}
@media(max-width:1100px) { .primary-nav { gap:15px; }.nav-wrap { gap:18px; }.minimal-assurances .shell { gap:28px; }.demo-agenda { padding:24px; } }
@media(min-width:921px) { .minimal-site-content img { height:270px; } }
@media(max-width:920px) {
  body.menu-open { padding-top:61px; }.menu-open .site-header { position:fixed;left:0;right:0;top:0; }
  .site-header,.site-header.scrolled { backdrop-filter:none;-webkit-backdrop-filter:none;background:#fafafc; }.primary-nav a { font-size:26px; }.primary-nav { justify-content:flex-start;padding-top:100px; }.menu-open .brand { position:relative;z-index:2; }
  .minimal-assurances .shell { gap:20px; }.minimal-assurances p { font-size:11px; }.minimal-assurances span { display:none; }
  .demo-workspace { grid-template-columns:140px 1fr; }.demo-sidebar { padding:26px 10px; }.demo-task { gap:10px; }.demo-task > small { display:none; }.demo-task { grid-template-columns:35px 1fr; }
  .platform .layer-card { padding:20px; }.service-card > p { min-height:0; }.process .shell { gap:36px; }
}
@media(max-width:700px) { .platform .layer-card + .layer-card { border-left:0;border-top:1px solid #d2d2d7; }.platform .layer-card { padding:25px 0; } }
@media(max-width:600px) {
  .minimal-hero { padding-top:38px; }.minimal-hero h1 { font-size:clamp(35px,11vw,46px); }.minimal-lead { margin:19px 0 22px; }.minimal-product { margin-top:27px; }
  .demo-tabs { padding:3px;gap:0;margin-bottom:22px;max-width:100%; }.demo-tabs button { min-height:40px;padding:10px 13px;font-size:11px; }
  .demo-stage { height:310px; }.minimal-demo-panel { border-radius:13px; }.demo-console { border-radius:13px; }.demo-window-bar { height:28px;padding:0 10px;font-size:7px;gap:6px; }.demo-window-bar small { font-size:6px; }.demo-window-dots { font-size:6px;letter-spacing:1px; }
  .demo-workspace { grid-template-columns:1fr;height:calc(100% - 28px); }.demo-sidebar { display:none; }.demo-agenda { padding:13px 17px; }.demo-agenda-top > span:first-child { font-size:7px; }.demo-avatar { width:19px;height:19px;font-size:8px; }.demo-agenda h2 { font-size:23px;margin:5px 0; }.demo-agenda > p { font-size:9px;margin:0 0 13px; }.demo-agenda-heading { padding-bottom:6px; }.demo-agenda-heading strong { font-size:9px; }.demo-agenda-heading > span { font-size:7px; }
  .demo-task { padding:10px 0;gap:10px;grid-template-columns:29px 1fr; }.demo-task time { font-size:8px; }.demo-task strong { font-size:10px; }.demo-task div > span { font-size:8px;margin-top:3px; }.demo-agenda-foot { display:none; }
  .demo-flow-content { padding:16px 12px; }.demo-flow-eyebrow { font-size:6px;margin-bottom:7px; }.demo-flow-content h2 { font-size:25px; }.demo-flow-content > p:not(.demo-flow-eyebrow) { font-size:8px;margin:9px 0 13px; }.demo-flow { gap:12px; }.demo-flow li { padding:10px 3px;border-radius:9px; }.demo-flow-icon { height:21px;width:21px;font-size:7px;margin-bottom:7px;border-radius:6px; }.demo-flow strong { font-size:10px; }.demo-flow li p { font-size:7px;margin-top:5px; }.demo-flow li:not(:last-child)::after { left:calc(100% + 3px);font-size:14px; }.demo-flow-note { font-size:7px;margin-top:12px; }
  .minimal-product figcaption .demo-description { font-size:11px; }.minimal-product figcaption { margin-top:14px;min-height:37px; }
  .minimal-assurances .shell { padding:21px 0;display:grid;gap:11px;justify-content:start; }.minimal-assurances p { font-size:12px; }.minimal-assurances span { display:inline;font-size:9px; }
  .service-card-foot a { min-height:44px; }.services-intro h2 { font-size:37px; }.section-intro > p:last-child { line-height:1.65; }.section h2 { letter-spacing:-.04em; }.why-rynor .section-intro h2 { font-size:35px; }.process .shell { gap:28px; }.contact-meta a { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) { .demo-tabs button,.service-card { transition:none; } }

/* Olimpus y catálogo de desarrollos propios. */
.olimpus-project { margin-top:18px;background:#f0f0f3; }
.olimpus-project .studio-project-image { background:#1d1d1f; }
.olimpus-visual-section { padding-top:40px;padding-bottom:55px; }
.olimpus-visual-section .project-visual { margin:0; }
.project-portfolio { display:grid;grid-template-columns:1fr 1fr;gap:28px; }
.portfolio-card { min-width:0;background:#fff;border-radius:24px;overflow:hidden; }
.portfolio-card > a { display:block;background:#1d1d1f; }
.portfolio-card img { display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover; }
.portfolio-card > div { padding:30px; }
.portfolio-card h3 { margin:12px 0 16px;font-size:34px;font-weight:600;letter-spacing:-.04em;line-height:1.15;color:#1d1d1f; }
.portfolio-card p:not(.eyebrow) { color:#626267;font-size:15px;line-height:1.7; }
.portfolio-card .minimal-text-link { display:inline-flex;align-items:center;min-height:44px;gap:5px;margin-top:12px;font-size:15px; }
.module-copy p > a { color:#0066cc;text-decoration:underline;text-underline-offset:3px; }
@media(max-width:700px) { .project-portfolio { grid-template-columns:1fr;gap:24px; }.portfolio-card > div { padding:25px; }.portfolio-card h3 { font-size:30px; }.olimpus-visual-section { padding-top:24px;padding-bottom:30px; }.olimpus-project { margin-top:12px; } }
