:root { --apps-ink:#080706; --apps-paper:#f7f4ec; --apps-white:#fffdf7; --apps-text:#181510; --apps-muted:#716b60; --apps-line:#ddd4c4; --apps-gold:#f7bd20; --apps-gold-bright:#ffda58; --apps-gold-deep:#c98308; --apps-blue:#1b3550; --apps-green:#38c66b; --font-title:"Barlow Condensed",Impact,sans-serif; --font-body:"DM Sans",Arial,sans-serif; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; scroll-padding-top:90px; } body { margin:0; font-family:var(--font-body); background:var(--apps-ink); color:var(--apps-white); overflow-x:hidden; } a { color:inherit; text-decoration:none; } button,input,select { font:inherit; } img { display:block; max-width:100%; } h1,h2,h3,p { margin-top:0; } h1,h2,h3 { font-family:var(--font-title); letter-spacing:.01em; } input,select { color:var(--apps-text); } a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible { outline:3px solid var(--apps-gold-bright); outline-offset:4px; }.apps-shell { width:min(1180px,calc(100% - 40px)); margin:0 auto; }.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }.skip-link { position:fixed; z-index:99; top:-100px; left:20px; padding:10px 15px; color:#1a1100; background:var(--apps-gold-bright); border-radius:0 0 7px 7px; font-weight:700; }.skip-link:focus { top:0; }

.apps-header { position:relative; z-index:10; background:#fffdf9; color:#1c1a17; border-bottom:1px solid #e5dfd2; }.apps-nav { min-height:92px; display:flex; align-items:center; justify-content:space-between; gap:24px; }.apps-brand { display:flex; align-items:center; gap:11px; font-size:1.02rem; font-weight:700; }.apps-brand img { width:55px; height:55px; object-fit:cover; object-position:center; border-radius:13px; background:#050506; }.apps-menu { display:flex; align-items:center; gap:23px; font-size:.84rem; color:#625c52; }.apps-menu a { white-space:nowrap; }.apps-menu a:hover,.apps-menu .is-active { color:#17130e; font-weight:700; }.apps-menu .is-active { border-bottom:2px solid var(--apps-gold-deep); padding-bottom:6px; }.apps-menu-toggle { display:none; padding:8px; border:0; background:transparent; }.apps-menu-toggle span:not(.sr-only) { display:block; width:24px; height:2px; margin:5px; background:#3b3428; }

.apps-intro { position:relative; isolation:isolate; overflow:hidden; padding:98px 0 104px; color:var(--apps-white); background:radial-gradient(circle at 74% 35%,rgba(247,189,32,.22),transparent 18%),radial-gradient(circle at 15% 100%,rgba(48,79,112,.32),transparent 30%),linear-gradient(130deg,#102c49,#183755 48%,#0e233a); }.apps-grid { position:absolute; z-index:-1; inset:0; opacity:.3; background-image:linear-gradient(rgba(226,242,250,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(226,242,250,.16) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(110deg,#000,transparent 77%); }.apps-intro-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:74px; align-items:center; }.apps-kicker { display:flex; align-items:center; gap:9px; margin-bottom:16px; color:#ffcf52; font-size:.7rem; line-height:1.25; font-weight:700; text-transform:uppercase; letter-spacing:.14em; }.apps-kicker span { display:inline-grid; place-items:center; min-width:25px; height:25px; color:#251400; background:var(--apps-gold); border-radius:50%; font-size:.7rem; }.apps-intro h1 { max-width:630px; margin-bottom:18px; font-size:clamp(4rem,6.2vw,6.9rem); line-height:.88; text-transform:uppercase; }.apps-intro h1 em,.apps-section h2 em,.coti-hero h1 em,.coti-section-heading h2 em,.coti-buy h2 em { color:var(--apps-gold-bright); font-style:normal; }.apps-intro-copy > p:not(.apps-kicker) { max-width:610px; color:#e4edf3; font-size:1.05rem; line-height:1.72; }.apps-tags { display:flex; flex-wrap:wrap; gap:8px; margin:26px 0; }.apps-tags span { padding:8px 10px; color:#e7edf1; border:1px solid rgba(255,255,255,.25); border-radius:99px; font-size:.71rem; }.apps-button { display:inline-flex; justify-content:center; align-items:center; gap:12px; min-height:50px; padding:13px 18px; border:1px solid transparent; border-radius:8px; font-size:.88rem; font-weight:700; cursor:pointer; transition:transform .2s ease,box-shadow .2s ease; }.apps-button:hover { transform:translateY(-2px); }.apps-button-primary { color:#281600; background:linear-gradient(110deg,#ffe069,#efa900); box-shadow:0 12px 28px rgba(0,0,0,.2),0 0 20px rgba(251,191,37,.18); }.apps-button-ghost { color:#fffdf6; border-color:rgba(255,255,255,.35); background:rgba(1,6,12,.22); }

.catalog-window { position:relative; padding:16px; color:#1b1a17; border:1px solid rgba(255,255,255,.24); border-radius:20px; background:#f8f6f0; box-shadow:0 26px 70px rgba(0,0,0,.38); }.catalog-window-bar { display:flex; align-items:center; gap:6px; padding:2px 3px 14px; border-bottom:1px solid #e5dfd2; color:#7d766b; font-size:.63rem; letter-spacing:.1em; }.catalog-window-bar span { width:8px; height:8px; border-radius:50%; background:#d8d1c4; }.catalog-window-bar b { margin-left:8px; font-size:.62rem; }.catalog-product { position:relative; display:flex; gap:16px; margin-top:12px; padding:21px; overflow:hidden; border:1px solid #e2d8c5; border-radius:13px; background:#fffdf7; }.catalog-product-featured { border-color:#edc258; box-shadow:inset 0 0 0 1px rgba(255,216,86,.25); }.catalog-symbol { display:grid; place-items:center; width:54px; height:54px; flex:0 0 auto; color:#865500; border-radius:15px; background:#ffe39b; font-size:1.7rem; }.catalog-product small { display:block; color:#a77619; font-size:.62rem; text-transform:uppercase; letter-spacing:.12em; }.catalog-product h2 { margin:5px 0; font-family:var(--font-body); font-size:1.16rem; }.catalog-product p { margin:0; color:#716b60; font-size:.8rem; }.catalog-product a { position:relative; z-index:1; display:inline-flex; gap:9px; margin-top:13px; color:#6e4700; font-size:.76rem; font-weight:700; }.catalog-glow { position:absolute; top:-80px; right:-60px; width:180px; height:180px; border-radius:50%; background:rgba(255,214,74,.38); filter:blur(12px); }.catalog-product-muted { opacity:.75; }.catalog-status { align-self:center; margin-left:auto; padding:6px 9px; color:#6e675c; border:1px solid #dbd3c6; border-radius:99px; font-size:.66rem; }

.apps-section { padding:105px 0; }.apps-why { color:#181510; background:#f7f4ec; }.apps-section-heading { max-width:720px; }.apps-section h2,.coti-section-heading h2 { margin-bottom:17px; font-size:clamp(3rem,4.7vw,4.8rem); line-height:.9; text-transform:uppercase; }.apps-section h2 em,.coti-section-heading h2 em { color:#a86c00; }.apps-section-heading > p:not(.apps-kicker),.product-spotlight-copy > p:not(.apps-kicker) { color:#6c665d; line-height:1.7; }.apps-why .apps-kicker,.apps-section .apps-kicker { color:#8f5a00; }.apps-why .apps-kicker span,.apps-section .apps-kicker span { color:#2b1b00; background:#ffd766; }.apps-values { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:44px; }.apps-values article { padding:26px; border:1px solid #ddd5c8; border-top:3px solid #e6ab2f; background:#fffdf7; }.apps-values article > span,.coti-feature-grid article > span { color:#ad6d00; font-family:var(--font-title); font-size:1.25rem; }.apps-values h3,.coti-feature-grid h3 { margin:18px 0 9px; font-size:1.8rem; text-transform:uppercase; }.apps-values p,.coti-feature-grid p { margin:0; color:#6d675e; font-size:.85rem; line-height:1.65; }

.apps-product-spotlight { background:linear-gradient(125deg,#090907,#1c1609); }.apps-product-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }.product-board { position:relative; min-height:350px; padding:26px; overflow:hidden; color:#f8f4e9; border:1px solid rgba(255,211,89,.45); border-radius:16px; background:radial-gradient(circle at 80% 20%,rgba(255,194,24,.27),transparent 23%),linear-gradient(140deg,#1d180d,#070807); box-shadow:0 25px 45px rgba(0,0,0,.28); }.product-board::after { content:""; position:absolute; right:-55px; bottom:-75px; width:210px; height:210px; border:1px solid rgba(255,220,112,.45); border-radius:50%; box-shadow:inset 0 0 38px rgba(255,199,28,.17); }.board-head { display:flex; justify-content:space-between; color:#ffdc70; font-size:.7rem; letter-spacing:.13em; }.board-head small { color:#bcb49e; }.board-line { margin-top:38px; padding:18px; border:1px solid rgba(255,255,255,.15); border-radius:9px; background:rgba(255,255,255,.04); }.board-line span,.board-line b { display:block; }.board-line span,.board-stats small,.board-total span { color:#aaa28f; font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }.board-line b { margin-top:6px; font-size:1rem; }.board-stats { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:10px; }.board-stats div { padding:15px; border:1px solid rgba(255,255,255,.12); border-radius:9px; }.board-stats small,.board-stats b { display:block; }.board-stats b { margin-top:6px; color:#f9d66d; font-size:.9rem; }.board-total { position:absolute; z-index:1; right:25px; bottom:22px; width:min(240px,70%); padding:15px; color:#2a1900; border-radius:9px; background:linear-gradient(110deg,#ffe36f,#eaa800); }.board-total span,.board-total strong { display:block; }.board-total strong { margin-top:4px; font-size:.95rem; }.product-spotlight-copy h2 { margin-bottom:16px; font-size:clamp(3.2rem,4.8vw,5rem); line-height:.89; text-transform:uppercase; }.product-spotlight-copy > p:not(.apps-kicker) { color:#d1cbbb; }.product-spotlight-copy ul { padding:0; margin:26px 0; list-style:none; }.product-spotlight-copy li { display:flex; gap:10px; margin:12px 0; color:#efebe1; font-size:.9rem; }.product-spotlight-copy li span { color:#ffce43; }

.apps-next { color:#1c1914; background:#efe9dc; }.apps-next-card { display:grid; grid-template-columns:1fr .75fr; gap:60px; align-items:end; padding:43px; border-left:4px solid #e3aa22; background:#fffdf7; box-shadow:0 15px 34px rgba(73,52,15,.08); }.apps-next-card h2 { margin:0; }.apps-next-card p { margin:0; color:#696258; line-height:1.7; }

.apps-footer { color:#bdb5a3; background:#080806; }.apps-footer-top { display:flex; justify-content:space-between; gap:25px; align-items:center; min-height:118px; }.apps-footer-top b,.apps-footer-top span { display:block; }.apps-footer-top b { color:#fff7dc; font-size:.95rem; }.apps-footer-top span { margin-top:6px; font-size:.76rem; }.apps-footer-top > div:last-child { display:flex; flex-wrap:wrap; gap:18px; font-size:.78rem; }.apps-footer-top a:hover,.apps-footer-bottom a:hover { color:#ffda63; }.apps-footer-bottom { display:flex; justify-content:space-between; gap:20px; padding:18px 0; border-top:1px solid rgba(255,255,255,.12); font-size:.68rem; }

/* Página de producto CotiObra360 */
.cotiobra-site { background:#070605; }.coti-hero { position:relative; isolation:isolate; overflow:hidden; color:#fffdf7; background:radial-gradient(circle at 70% 40%,rgba(218,139,0,.17),transparent 24%),radial-gradient(circle at 16% 85%,rgba(61,71,84,.16),transparent 28%),#070605; }.coti-noise { position:absolute; z-index:-1; inset:0; opacity:.2; background-image:linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px); background-size:58px 58px; mask-image:linear-gradient(100deg,#000,transparent 80%); }.coti-hero-layout { display:grid; grid-template-columns:.93fr 1.07fr; gap:62px; align-items:center; min-height:685px; padding:85px 0 70px; }.coti-hero .apps-kicker { margin-bottom:19px; }.coti-brand { margin-bottom:11px; color:#fffdf7; font-family:var(--font-title); font-size:clamp(2.5rem,4vw,4.3rem); font-weight:800; line-height:.8; text-transform:uppercase; }.coti-brand span { color:#ffce3c; }.coti-hero h1 { max-width:660px; margin-bottom:19px; font-size:clamp(3.8rem,5.7vw,6.3rem); line-height:.88; text-transform:uppercase; }.coti-lead { max-width:610px; color:#d0cbc0; line-height:1.68; }.coti-chip-row { display:flex; flex-wrap:wrap; gap:8px; margin:23px 0; }.coti-chip-row span { padding:7px 9px; color:#e5decf; border:1px solid rgba(255,255,255,.16); border-radius:99px; font-size:.68rem; }.coti-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:25px; }.coti-availability { margin:16px 0 0; color:#b7ae9c; font-size:.72rem; }

.coti-dashboard-wrap { position:relative; min-height:450px; }.coti-dashboard { position:absolute; top:23px; right:0; width:min(535px,100%); min-height:387px; padding:14px; overflow:hidden; border:1px solid rgba(255,219,118,.34); border-radius:15px; background:linear-gradient(145deg,#242421,#11120f); box-shadow:0 30px 70px rgba(0,0,0,.6),inset 0 0 30px rgba(255,206,47,.05); transform:rotate(1.8deg); }.coti-topbar { display:flex; align-items:center; gap:12px; padding:6px 8px 14px; border-bottom:1px solid rgba(255,255,255,.12); }.coti-topbar b { font-family:var(--font-title); font-size:1.5rem; text-transform:uppercase; }.coti-topbar b span { color:#ffc837; }.coti-topbar small { color:#aaa38f; font-size:.67rem; }.coti-topbar i { width:9px; height:9px; margin-left:auto; border-radius:50%; background:#44c866; box-shadow:0 0 12px #44c866; }.coti-dashboard-body { padding:17px 7px; }.coti-project-card { padding:16px; border:1px solid rgba(255,255,255,.12); border-left:3px solid #efb01b; border-radius:8px; background:#1b1b18; }.coti-project-card span,.coti-project-card b,.coti-project-card small { display:block; }.coti-project-card span { color:#c4bca8; font-size:.63rem; text-transform:uppercase; letter-spacing:.08em; }.coti-project-card b { margin:5px 0; font-size:.87rem; }.coti-project-card small { color:#71ce89; font-size:.65rem; }.coti-stat-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:9px; }.coti-stat-grid div { padding:12px; border:1px solid rgba(255,255,255,.1); border-radius:8px; background:#171815; }.coti-stat-grid span,.coti-stat-grid b { display:block; }.coti-stat-grid span { color:#aaa38f; font-size:.61rem; }.coti-stat-grid b { margin-top:5px; color:#f6d56f; font-size:.82rem; }.coti-table { margin-top:9px; overflow:hidden; border:1px solid rgba(255,255,255,.1); border-radius:8px; }.coti-table div { display:grid; grid-template-columns:1.2fr .55fr .7fr; gap:8px; padding:10px; color:#eee9dd; border-bottom:1px solid rgba(255,255,255,.08); font-size:.65rem; }.coti-table div:first-child { color:#99927f; background:#191a17; font-size:.58rem; text-transform:uppercase; }.coti-table div:last-child { border-bottom:0; }.coti-table strong { color:#f3ce5e; }.coti-total { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:9px; padding:12px; color:#2a1a00; border-radius:8px; background:linear-gradient(110deg,#ffe471,#e8a200); font-size:.67rem; }.coti-total b { font-size:.7rem; }.coti-float-card { position:absolute; z-index:2; display:flex; align-items:center; gap:9px; padding:12px; color:#f5efe0; border:1px solid rgba(255,215,96,.37); border-radius:9px; background:rgba(29,29,25,.92); box-shadow:0 13px 28px rgba(0,0,0,.34); }.coti-float-card span { display:grid; place-items:center; width:30px; height:30px; color:#2d1c00; border-radius:8px; background:#ffcf41; }.coti-float-card p { margin:0; font-size:.62rem; line-height:1.4; }.coti-float-card b { color:#fff1b2; }.coti-float-one { top:0; right:9%; }.coti-float-two { bottom:7px; left:-10px; }.coti-demo-label { position:absolute; right:5px; bottom:-24px; color:#958c7b; font-size:.62rem; letter-spacing:.11em; text-transform:uppercase; }

.coti-steps { padding:92px 0; color:#1a1712; background:#f6f1e7; }.coti-section-heading { max-width:700px; }.coti-section-heading > p:not(.apps-kicker) { color:#696257; line-height:1.7; }.coti-step-list { display:grid; grid-template-columns:repeat(4,1fr); gap:0; padding:0; margin:43px 0 0; list-style:none; border:1px solid #dcd3c4; background:#fffcf5; }.coti-step-list li { position:relative; min-height:150px; padding:22px; border-right:1px solid #ded5c6; }.coti-step-list li:last-child { border-right:0; }.coti-step-list li::after { content:""; position:absolute; right:-5px; top:45px; z-index:1; width:9px; height:9px; border-radius:50%; background:#e3ad24; }.coti-step-list li:last-child::after { display:none; }.coti-step-list span,.coti-step-list strong,.coti-step-list small { display:block; }.coti-step-list span { color:#a76b00; font-family:var(--font-title); font-size:1.45rem; }.coti-step-list strong { margin-top:18px; font-size:1.03rem; }.coti-step-list small { margin-top:5px; color:#736b60; font-size:.75rem; line-height:1.4; }

.coti-features { color:#f8f4eb; background:linear-gradient(125deg,#100f0b,#1b170e); }.coti-features .apps-kicker { color:#ffd564; }.coti-features-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:86px; align-items:start; }.coti-features-layout > div > p:not(.apps-kicker) { color:#c6bfae; line-height:1.75; }.coti-feature-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; }.coti-feature-grid article { min-height:182px; padding:22px; border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.035); }.coti-feature-grid article > span { color:#ffce47; }.coti-feature-grid h3 { font-size:1.55rem; }.coti-feature-grid p { color:#c5beaf; }

.coti-showcase { padding:103px 0; background:#ede7da; }.coti-showcase-grid { display:grid; grid-template-columns:1.18fr .82fr; gap:16px; }.coti-showcase-card { min-height:368px; padding:30px; overflow:hidden; border:1px solid #d8cebc; color:#1d1912; background:#fcfaf5; }.coti-showcase-budget { background:radial-gradient(circle at 90% 15%,rgba(243,183,28,.18),transparent 30%),#fcfaf5; }.coti-showcase-card h2 { max-width:380px; font-size:2.55rem; line-height:.92; text-transform:uppercase; }.coti-showcase-label { display:block; color:#a36b05; font-size:.66rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }.budget-paper { width:min(400px,88%); margin:32px auto 0; padding:20px; border:1px solid #d8cebd; border-top:4px solid #e9ad1d; box-shadow:0 17px 32px rgba(58,42,11,.1); background:white; transform:rotate(-2deg); }.budget-paper div span,.budget-paper div b { display:block; }.budget-paper div span { color:#847c70; font-size:.62rem; text-transform:uppercase; }.budget-paper div b { margin-top:5px; font-size:.88rem; }.budget-paper p { margin:19px 0 8px; color:#8b806e; font-size:.65rem; text-transform:uppercase; }.budget-paper i { display:block; height:7px; margin:8px 0; border-radius:99px; background:linear-gradient(90deg,#e6dfd2 75%,transparent 75%); }.budget-paper footer { display:flex; justify-content:space-between; margin-top:17px; padding-top:12px; border-top:1px solid #e7e0d6; font-size:.68rem; }.budget-paper footer strong { color:#936000; }.coti-showcase-list { color:#f8f1df; background:linear-gradient(145deg,#22211b,#12120f); }.coti-showcase-list .coti-showcase-label { color:#f9ce5d; }.coti-showcase-list h2 { max-width:320px; }.materials-list { margin-top:45px; border-top:1px solid rgba(255,255,255,.16); }.materials-list p,.materials-list div { display:flex; justify-content:space-between; margin:0; padding:14px 0; border-bottom:1px solid rgba(255,255,255,.14); font-size:.77rem; }.materials-list p b { color:#ffd260; }.materials-list div { margin-top:15px; padding:14px; color:#2c1b00; border:0; border-radius:7px; background:#ffd460; }.materials-list div span,.materials-list div b { font-size:.68rem; }

.coti-reviews { color:#1c1913; background:#f9f6ee; }.coti-review-intro { max-width:800px; text-align:center; }.coti-review-intro .apps-kicker { justify-content:center; }.coti-review-intro p:last-child { max-width:640px; margin:0 auto; color:#6b655b; line-height:1.7; }

.coti-buy { padding:110px 0; color:#f9f3e7; background:radial-gradient(circle at 24% 42%,rgba(255,194,21,.18),transparent 25%),#0c0c09; }.coti-buy-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:85px; align-items:start; }.coti-buy h2 { font-size:clamp(3.2rem,4.7vw,4.9rem); line-height:.9; text-transform:uppercase; }.coti-buy-copy > p:not(.apps-kicker) { color:#cec5b3; line-height:1.75; }.coti-buy-copy ul { display:grid; gap:14px; padding:0; margin:27px 0 0; list-style:none; }.coti-buy-copy li { display:flex; align-items:center; gap:11px; color:#e4ddcd; font-size:.84rem; }.coti-buy-copy li span { display:grid; place-items:center; width:28px; height:28px; color:#2b1a00; border-radius:50%; background:#ffc831; font-weight:700; }.coti-buy-form { padding:29px; border:1px solid rgba(255,215,99,.42); border-radius:13px; background:#fdfaf3; color:#211d16; box-shadow:0 25px 55px rgba(0,0,0,.32); }.coti-form-heading { display:flex; justify-content:space-between; gap:20px; padding-bottom:18px; margin-bottom:16px; border-bottom:1px solid #dfd7c9; font-family:var(--font-title); font-size:1.45rem; text-transform:uppercase; }.coti-form-heading small { color:#9b6a0c; font-family:var(--font-body); font-size:.65rem; font-weight:700; letter-spacing:.1em; }.coti-buy-form label { display:block; margin:14px 0; color:#4d483e; font-size:.76rem; font-weight:700; }.coti-buy-form input:not([type="radio"]):not([type="checkbox"]),.coti-buy-form select { display:block; width:100%; margin-top:7px; padding:12px; border:1px solid #d8cfc0; border-radius:6px; background:#fffefb; outline:0; font-size:.86rem; }.coti-buy-form input:not([type="radio"]):not([type="checkbox"]):focus,.coti-buy-form select:focus { border-color:#d49616; box-shadow:0 0 0 3px rgba(238,174,25,.16); }.coti-buy-form fieldset { padding:0; margin:18px 0 15px; border:0; }.coti-buy-form legend { margin-bottom:9px; color:#4d483e; font-size:.76rem; font-weight:700; }.coti-choice-row { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.coti-choice { display:flex !important; align-items:center; gap:8px; min-height:46px; padding:11px; margin:0 !important; border:1px solid #d8cfc0; border-radius:6px; background:#fffefb; cursor:pointer; }.coti-choice input { accent-color:#c98400; }.coti-consent { display:flex !important; gap:9px; align-items:flex-start; color:#6e675c !important; font-size:.69rem !important; font-weight:500 !important; line-height:1.5; }.coti-consent input { margin-top:2px; accent-color:#c98400; }.coti-buy-form .apps-button { width:100%; margin-top:8px; }.coti-form-note { margin:12px 0 0; color:#776f63; font-size:.67rem; line-height:1.45; text-align:center; }

.coti-faq { color:#1c1913; background:#f6f0e5; }.coti-faq .apps-kicker { color:#946000; }.coti-faq-list { max-width:840px; border-top:1px solid #d6ccbc; }.coti-faq-list details { padding:19px 0; border-bottom:1px solid #d6ccbc; }.coti-faq-list summary { display:flex; justify-content:space-between; gap:20px; align-items:center; list-style:none; cursor:pointer; font-family:var(--font-title); font-size:1.55rem; text-transform:uppercase; }.coti-faq-list summary::-webkit-details-marker { display:none; }.coti-faq-list summary span { color:#af7200; font-family:var(--font-body); font-size:1.35rem; }.coti-faq-list details[open] summary span { transform:rotate(45deg); }.coti-faq-list p { max-width:700px; margin:14px 34px 0 0; color:#6d665b; font-size:.87rem; line-height:1.65; }

.coti-price-card { margin:24px 0 27px; padding:19px; border:1px solid rgba(255,210,85,.46); border-left:4px solid #ffc632; border-radius:8px; background:rgba(255,255,255,.055); }.coti-price-card span,.coti-price-card strong,.coti-price-card small { display:block; }.coti-price-card span { color:#d9cdb6; font-size:.7rem; font-weight:700; }.coti-price-card strong { margin:4px 0 5px; color:#ffcf45; font-family:var(--font-title); font-size:2.45rem; line-height:.9; }.coti-price-card small { color:#bdb3a3; font-size:.72rem; }.coti-payment-methods { margin:20px 0 16px; padding:0; border:0; }.coti-payment-methods legend { margin-bottom:9px; color:#4d483e; font-size:.76rem; font-weight:700; }.coti-payment-option { display:flex !important; align-items:flex-start; gap:10px; padding:13px; margin:9px 0 !important; border:1px solid #ddd3c3; border-radius:8px; background:#fffefb; cursor:pointer; transition:border-color .2s ease,box-shadow .2s ease; }.coti-payment-option:has(input:checked) { border-color:#e2a114; box-shadow:0 0 0 3px rgba(238,174,25,.13); }.coti-payment-option input { width:15px; height:15px; margin:3px 0 0; flex:0 0 auto; accent-color:#c98400; }.coti-payment-icon { display:grid; place-items:center; width:30px; height:30px; flex:0 0 auto; color:#583900; border-radius:8px; background:#ffe4a0; font-size:1rem; }.coti-payment-option > span:last-child { display:block; }.coti-payment-option b,.coti-payment-option small,.coti-payment-option em { display:block; }.coti-payment-option b { color:#2f2a22; font-size:.82rem; }.coti-payment-option small { margin-top:4px; color:#726b60; font-size:.72rem; font-weight:400; line-height:1.45; }.coti-payment-option em { margin-top:7px; padding:7px 9px; color:#5e4b20; border-radius:5px; background:#f5f1e8; font-size:.73rem; font-style:normal; }.coti-payment-option em strong { color:#513700; }.coti-payment-link { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; margin:10px 0 2px; padding:13px 14px; color:#281900; border-radius:8px; background:linear-gradient(110deg,#ffd252,#efa914); box-shadow:0 8px 16px rgba(192,126,0,.18); font-size:.79rem; font-weight:800; }.coti-payment-link:hover { color:#281900; filter:brightness(1.04); }.coti-payment-link[hidden] { display:none; }

.coti-license-summary { color:#1b1812; background:#f4eee2; }.coti-license-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:85px; align-items:start; }.coti-license-layout > div > p:not(.apps-kicker) { color:#6f675b; line-height:1.75; }.coti-license-points { padding:0; margin:0; list-style:none; border-top:1px solid #d9cdb9; }.coti-license-points li { display:grid; grid-template-columns:44px 1fr; gap:15px; padding:18px 0; border-bottom:1px solid #d9cdb9; }.coti-license-points > li > span { color:#a86c00; font-family:var(--font-title); font-size:1.35rem; }.coti-license-points strong { display:block; margin-bottom:5px; font-size:.93rem; }.coti-license-points p { margin:0; color:#70685c; font-size:.84rem; line-height:1.55; }.coti-consent a { color:#8f5d00; text-decoration:underline; }

.license-page { color:#1c1811; background:#f6f0e5; }.license-hero { padding:88px 0 80px; color:#faf3e5; background:radial-gradient(circle at 78% 34%,rgba(255,196,30,.21),transparent 25%),linear-gradient(128deg,#0d0d09,#211909); }.license-back { display:inline-flex; margin-bottom:41px; color:#f8d773; font-size:.82rem; font-weight:700; }.license-back:hover { color:#fff4c5; }.license-hero h1 { margin-bottom:15px; font-size:clamp(4rem,6.5vw,6.6rem); line-height:.86; text-transform:uppercase; }.license-hero h1 em { color:#ffcf40; font-style:normal; }.license-hero > .apps-shell > p:last-child { max-width:540px; margin:0; color:#d2c9b7; line-height:1.7; }.license-content { background:#f6f0e5; }.license-layout { display:grid; grid-template-columns:.82fr 1.18fr; gap:82px; align-items:start; }.license-layout aside { position:sticky; top:25px; }.license-layout aside h2 { font-size:clamp(3rem,4.4vw,4.5rem); line-height:.9; text-transform:uppercase; }.license-layout aside > p:not(.apps-kicker) { color:#6d6559; line-height:1.7; }.license-list { border-top:1px solid #d8cebc; }.license-list article { display:grid; grid-template-columns:60px 1fr; gap:19px; padding:24px 0; border-bottom:1px solid #d8cebc; }.license-list article > span { color:#ae7100; font-family:var(--font-title); font-size:1.55rem; }.license-list h3 { margin:0 0 7px; font-size:1.55rem; text-transform:uppercase; }.license-list p { margin:0; color:#6c6559; font-size:.89rem; line-height:1.65; }.license-note { padding:52px 0; color:#ede4cf; background:#11100c; }.license-note p { max-width:760px; margin:0; line-height:1.65; font-size:.9rem; }.license-note b { color:#ffd75d; }

@media (max-width:980px) { .apps-intro-layout,.apps-product-layout,.coti-hero-layout,.coti-features-layout,.coti-buy-layout,.coti-license-layout,.license-layout { grid-template-columns:1fr; gap:48px; }.apps-intro { padding-top:75px; }.apps-intro-copy { max-width:700px; }.coti-hero-layout { padding-top:70px; }.coti-dashboard-wrap { max-width:650px; width:100%; margin:0 auto; }.apps-values { grid-template-columns:repeat(3,1fr); }.apps-next-card { grid-template-columns:1fr; gap:18px; }.coti-buy-copy { max-width:650px; }.coti-feature-grid { max-width:700px; }.coti-showcase-grid { grid-template-columns:1fr 1fr; }.license-layout aside { position:static; } }
@media (max-width:720px) { .apps-shell { width:min(100% - 30px,1180px); }.apps-nav { min-height:75px; }.apps-brand img { width:47px; height:47px; }.apps-brand span { font-size:.9rem; }.apps-menu-toggle { display:block; }.apps-menu { position:absolute; top:75px; left:0; display:none; width:100%; padding:16px; flex-direction:column; align-items:stretch; gap:15px; background:#fffdf9; border-bottom:1px solid #e4dbcd; box-shadow:0 14px 24px rgba(46,36,13,.11); }.apps-menu.is-open { display:flex; }.apps-menu .is-active { padding-bottom:0; border-bottom:0; }.apps-intro,.apps-section,.coti-buy,.coti-showcase { padding:72px 0; }.apps-intro h1,.coti-hero h1 { font-size:clamp(3.65rem,15vw,5rem); }.catalog-window { padding:12px; }.catalog-product { padding:16px; }.catalog-status { display:none; }.apps-values,.coti-step-list,.coti-showcase-grid { grid-template-columns:1fr; }.apps-values { margin-top:32px; }.apps-values article { padding:22px; }.product-board { min-height:320px; }.apps-next-card { padding:28px; }.apps-footer-top,.apps-footer-bottom { display:block; padding:24px 0; }.apps-footer-top > div:last-child { margin-top:18px; }.apps-footer-bottom { line-height:1.7; }.apps-footer-bottom a { display:block; margin-top:5px; }.coti-hero-layout { min-height:0; padding:64px 0 68px; }.coti-dashboard-wrap { min-height:390px; }.coti-dashboard { top:12px; min-height:345px; transform:none; }.coti-table div { padding:8px; font-size:.57rem; }.coti-float-one { right:-2px; }.coti-float-two { left:-3px; }.coti-demo-label { bottom:0; }.coti-step-list li { min-height:0; padding:19px; border-right:0; border-bottom:1px solid #ded5c6; }.coti-step-list li:last-child { border-bottom:0; }.coti-step-list li::after { top:auto; right:auto; bottom:-5px; left:35px; }.coti-feature-grid { grid-template-columns:1fr; }.coti-showcase-card { min-height:300px; }.coti-showcase-card h2 { font-size:2.2rem; }.coti-buy-form { padding:22px 18px; }.coti-choice-row { grid-template-columns:1fr; }.coti-faq-list summary { font-size:1.3rem; }.coti-faq-list p { margin-right:0; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }

/* Catálogo TecnoWorksSolutions360 Apps. Estas reglas están limitadas a la página del catálogo. */
.works-catalog { color:#10254a; background:#f5f8fd; }.works-catalog .apps-header { color:#10254a; border-bottom:1px solid #dbe5f2; background:#fff; }.works-catalog .apps-brand { color:#10254a; }.works-catalog .apps-brand img { width:58px; height:58px; border-radius:10px; }.works-catalog .apps-brand span { font-size:1.05rem; font-weight:800; }.works-catalog .apps-menu { gap:16px; color:#263a5c; font-size:.78rem; font-weight:700; }.works-catalog .apps-menu .is-active { padding:10px 13px; color:#fff; border:0; border-radius:9px; background:linear-gradient(120deg,#07428d,#115ebc); box-shadow:inset 0 -3px 0 #ef7a16; }.works-catalog .apps-menu a:hover { color:#ed6a12; }.works-catalog .apps-menu .is-active:hover { color:#fff; }.works-hero { position:relative; isolation:isolate; min-height:528px; overflow:hidden; color:#fff; background:linear-gradient(122deg,#042f68 0%,#075da6 58%,#1c89c8 100%); }.works-hero::after { content:""; position:absolute; z-index:-1; inset:0; opacity:.75; background:linear-gradient(120deg,rgba(0,24,65,.88) 0%,rgba(0,55,119,.82) 46%,rgba(0,66,140,.3) 76%,rgba(3,54,93,.1)); }.works-hero-photo { position:absolute; z-index:-2; inset:0 0 0 41%; background:linear-gradient(105deg,rgba(0,55,121,.74),rgba(0,64,136,.05) 58%),url("../assets/images/detalle-proyectos-planos.png") center/cover no-repeat; }.works-hero-layout { position:relative; display:grid; grid-template-columns:1.08fr .92fr; gap:42px; align-items:center; min-height:528px; padding:56px 0; }.works-hero-copy { max-width:675px; }.works-breadcrumb { display:inline-flex; gap:9px; align-items:center; margin:0 0 23px; padding:8px 13px; border:1px solid rgba(255,255,255,.33); border-radius:999px; background:rgba(0,35,83,.32); font-size:.72rem; font-weight:700; }.works-breadcrumb span { color:#ff9b34; font-size:1.1em; }.works-kicker { display:flex; align-items:center; gap:9px; margin:0 0 12px; color:#1260aa; font-size:.7rem; font-weight:800; letter-spacing:.11em; }.works-hero .works-kicker { color:#ffb260; }.works-kicker > span { display:grid; place-items:center; width:24px; height:24px; color:#fff; border-radius:6px; background:#f2781b; font-size:.8rem; }.works-hero h1 { max-width:640px; margin:0; font-family:var(--font-body); font-size:clamp(2.75rem,5vw,4.9rem); line-height:.99; letter-spacing:-.055em; }.works-hero h1 em,.works-section-heading h2 em,.works-grow h2 em { color:#ff871b; font-style:normal; }.works-hero h2 { max-width:580px; margin:17px 0 13px; font-family:var(--font-body); font-size:clamp(1.16rem,1.7vw,1.52rem); line-height:1.35; }.works-hero-copy > p:not(.works-breadcrumb):not(.works-kicker) { max-width:620px; margin-bottom:24px; color:#e4f2ff; font-size:.96rem; line-height:1.65; }.works-hero-actions { display:flex; flex-wrap:wrap; gap:13px; }.works-button { display:inline-flex; align-items:center; justify-content:center; gap:13px; min-height:51px; padding:13px 19px; border:1px solid transparent; border-radius:10px; font-size:.84rem; font-weight:800; transition:transform .18s ease,box-shadow .18s ease; }.works-button:hover { transform:translateY(-2px); }.works-button-primary { color:#fff; background:linear-gradient(115deg,#f18b1d,#fa510c); box-shadow:0 10px 22px rgba(12,22,69,.28); }.works-button-ghost { color:#fff; border-color:rgba(255,255,255,.55); background:rgba(3,41,91,.34); }.works-product-showcase { position:relative; min-height:385px; }.works-coti-card { position:absolute; z-index:2; top:26px; left:0; width:246px; padding:20px; color:#112449; border:1px solid rgba(255,255,255,.75); border-radius:18px; background:rgba(255,255,255,.94); box-shadow:0 20px 42px rgba(0,20,58,.34); }.works-coti-brand { display:flex; align-items:center; gap:9px; }.works-coti-brand > span { display:grid; place-items:center; width:41px; height:41px; color:#fff; border-radius:11px; background:#102f5c; font-size:1.35rem; }.works-coti-brand strong { font-size:1.25rem; }.works-coti-brand em,.works-card-content h3 span { color:#ed6c17; font-style:normal; }.works-coti-card p { margin:16px 0 11px; font-size:.81rem; line-height:1.45; }.works-coti-card ul { padding:0; margin:0 0 15px; list-style:none; }.works-coti-card li { margin:6px 0; color:#344d72; font-size:.68rem; }.works-coti-card li::before { content:"✓"; margin-right:7px; color:#ef7419; font-weight:900; }.works-coti-card a { display:inline-flex; gap:8px; color:#e7600e; font-size:.74rem; font-weight:800; }.works-screen { position:absolute; right:-5%; bottom:17px; width:73%; min-height:282px; overflow:hidden; color:#192d4c; border:8px solid #142339; border-radius:14px; background:#f9fcff; box-shadow:0 21px 43px rgba(0,13,48,.45); transform:perspective(1000px) rotateY(-5deg) rotateX(2deg); }.works-screen-top { display:flex; align-items:center; justify-content:space-between; padding:12px 14px; color:#f5f9ff; background:#123969; font-size:.68rem; }.works-screen-top span { color:#c0d8ef; font-size:.59rem; }.works-screen-layout { display:grid; grid-template-columns:25% 1fr; min-height:238px; }.works-screen-layout aside { display:flex; flex-direction:column; gap:8px; padding:13px 9px; color:#c3d9ef; background:#102d52; font-size:.54rem; }.works-screen-layout aside span:first-child { padding:7px; color:#fff; border-radius:5px; background:#f0781b; }.works-screen-data { padding:14px; background:#f7fbff; }.data-welcome { margin-bottom:12px; font-size:.78rem; font-weight:800; }.data-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }.data-stats span { min-height:54px; padding:8px; color:#104782; border:1px solid #d7e4f2; border-radius:7px; background:#fff; font-size:.9rem; font-weight:800; }.data-stats small { display:block; margin-top:5px; color:#7185a0; font-size:.47rem; font-weight:600; }.data-list { display:grid; gap:6px; margin-top:14px; font-size:.58rem; }.data-list b { margin-bottom:2px; }.data-list span { display:flex; justify-content:space-between; gap:5px; padding:8px; border-radius:5px; background:#edf4fb; }.data-list i { color:#1667a9; font-style:normal; font-weight:700; }.works-filter-bar { border-bottom:1px solid #d9e4f1; background:#fff; }.works-filter-inner { display:flex; align-items:center; gap:23px; min-height:75px; }.works-filter-inner > p { flex:0 0 auto; margin:0; color:#152d50; font-size:.8rem; font-weight:800; }.works-filter-inner > p span { margin-right:7px; color:#f36c15; font-size:1.25rem; }.works-filters { display:flex; flex-wrap:wrap; gap:9px; }.works-filters button { padding:8px 12px; color:#2c4770; border:1px solid #cedceb; border-radius:999px; background:#f9fcff; font-size:.7rem; font-weight:700; cursor:pointer; transition:background .18s ease,color .18s ease,border-color .18s ease; }.works-filters button:hover { border-color:#7fa8d4; }.works-filters button.is-selected { color:#fff; border-color:#0755a5; background:#0755a5; }.works-catalog { padding:68px 0 82px; }.works-section-heading { max-width:760px; }.works-section-heading h2,.works-grow h2 { margin:0 0 13px; font-family:var(--font-body); font-size:clamp(2rem,3.6vw,3.25rem); line-height:1.04; letter-spacing:-.04em; }.works-section-heading > p:not(.works-kicker) { margin-bottom:33px; color:#5b7090; line-height:1.65; }.works-app-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:19px; }.works-app-card { overflow:hidden; border:1px solid #dbe4ef; border-radius:14px; background:#fff; box-shadow:0 10px 22px rgba(35,66,107,.1); transition:transform .2s ease,box-shadow .2s ease; }.works-app-card:hover { transform:translateY(-4px); box-shadow:0 18px 30px rgba(35,66,107,.16); }.works-app-card.is-filtered-out { display:none; }.works-card-image { position:relative; height:178px; overflow:hidden; background:#163f6c; }.works-card-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(7,29,65,.63),transparent 60%); }.works-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }.works-app-card:hover .works-card-image img { transform:scale(1.05); }.works-card-icon { position:absolute; z-index:1; bottom:14px; left:16px; display:grid; place-items:center; width:49px; height:49px; color:#fff; border:3px solid #fff; border-radius:12px; background:#123761; box-shadow:0 6px 13px rgba(0,22,56,.22); font-size:1.55rem; }.works-card-state { position:absolute; z-index:1; top:12px; right:12px; padding:6px 9px; color:#fff; border-radius:999px; background:#0a5ca5; font-size:.59rem; font-weight:800; }.works-card-coti .works-card-state { background:#ec6813; }.works-card-solar .works-card-state { background:#687891; }.works-card-content { padding:18px; }.works-category { display:inline-block; padding:5px 8px; color:#245788; border-radius:999px; background:#eaf4ff; font-size:.62rem; font-weight:800; }.works-card-content h3 { margin:11px 0 8px; font-family:var(--font-body); font-size:1.42rem; letter-spacing:-.04em; }.works-card-content p { min-height:61px; margin:0; color:#49617e; font-size:.78rem; line-height:1.55; }.works-card-content ul { display:flex; flex-wrap:wrap; gap:7px 12px; padding:0; margin:15px 0; list-style:none; color:#2a4265; font-size:.64rem; font-weight:700; }.works-card-content li::before { content:"✓"; margin-right:4px; color:#f06e17; }.works-card-content > div:last-child { display:flex; gap:8px; align-items:center; }.works-card-action,.works-card-secondary { display:inline-flex; align-items:center; justify-content:center; min-height:37px; padding:9px 11px; border-radius:7px; font-size:.69rem; font-weight:800; }.works-card-action { flex:1; gap:8px; color:#fff; background:linear-gradient(115deg,#f58a1d,#f6580a); }.works-card-secondary { color:#27507d; border:1px solid #bcd0e5; }.works-card-notice { display:inline-flex; min-height:37px; align-items:center; padding:9px 11px; color:#62728a; border:1px solid #ccd8e5; border-radius:7px; background:#f6f9fd; font-size:.69rem; font-weight:800; }.works-grow { padding:0 0 78px; background:#f5f8fd; }.works-grow-card { display:grid; grid-template-columns:1fr .9fr; gap:55px; align-items:end; padding:39px; color:#fff; border-radius:17px; background:linear-gradient(118deg,#062e62,#0c5ca9); box-shadow:0 16px 30px rgba(19,68,124,.18); }.works-grow .works-kicker { color:#ffb468; }.works-grow h2 { margin:0; color:#fff; }.works-grow-card > p { margin:0; color:#d7eaff; line-height:1.65; }.works-catalog .apps-footer { color:#c7d8ed; background:#061c3d; }.works-catalog .apps-footer-top b { color:#fff; }.works-catalog .apps-footer-top span { color:#a8bfd9; }.works-catalog .apps-footer-top a:hover,.works-catalog .apps-footer-bottom a:hover { color:#ff9b3f; }
@media (max-width:1040px) { .works-catalog .apps-menu { gap:10px; font-size:.7rem; }.works-catalog .apps-menu .is-active { padding:9px; }.works-hero-layout { grid-template-columns:1fr .88fr; gap:20px; }.works-coti-card { width:225px; }.works-screen { width:72%; }.works-app-grid { grid-template-columns:repeat(2,1fr); }.works-filter-inner { align-items:flex-start; flex-direction:column; gap:10px; padding:15px 0; }.works-card-content p { min-height:0; } }
@media (max-width:760px) { .works-catalog .apps-nav { min-height:76px; }.works-catalog .apps-menu { top:76px; gap:14px; font-size:.84rem; }.works-catalog .apps-menu .is-active { padding:0; color:#10254a; border:0; border-radius:0; background:none; box-shadow:none; }.works-hero { min-height:auto; }.works-hero-photo { inset:0; opacity:.38; }.works-hero::after { background:linear-gradient(145deg,rgba(0,30,74,.9),rgba(0,74,142,.72)); }.works-hero-layout { grid-template-columns:1fr; min-height:0; padding:56px 0 45px; }.works-hero h1 { font-size:clamp(2.65rem,12vw,4rem); }.works-hero h2 { font-size:1.12rem; }.works-product-showcase { min-height:350px; max-width:480px; width:100%; }.works-coti-card { top:0; left:0; width:min(230px,59%); padding:16px; }.works-screen { right:0; bottom:0; width:74%; min-height:230px; border-width:6px; }.works-screen-layout { min-height:194px; }.works-screen-layout aside { padding:10px 7px; }.works-screen-data { padding:10px; }.works-filter-inner { padding:18px 0; }.works-filters { flex-wrap:nowrap; width:100%; overflow-x:auto; padding-bottom:4px; }.works-filters button { flex:0 0 auto; }.works-catalog { padding:52px 0 60px; }.works-app-grid { grid-template-columns:1fr; }.works-card-image { height:195px; }.works-grow { padding-bottom:54px; }.works-grow-card { grid-template-columns:1fr; gap:20px; padding:28px; }.works-catalog .apps-footer-top { padding:25px 0; }.works-hero-actions { display:grid; grid-template-columns:1fr; }.works-button { width:100%; }.works-breadcrumb { font-size:.62rem; } }

/* Ficha individual de cada aplicación. */
.product-page { color:#10254a; background:#f4f8fd; }.product-page .apps-header { color:#10254a; border-bottom:1px solid #dbe5f2; background:#fff; }.product-page .apps-brand { color:#10254a; }.product-page .apps-brand img { width:55px; height:55px; border-radius:10px; }.product-menu { font-weight:700; }.product-menu .is-active { padding:9px 13px; color:#fff; border:0; border-radius:8px; background:#0755a5; box-shadow:inset 0 -3px 0 #ef7a16; }.product-hero { position:relative; isolation:isolate; min-height:500px; overflow:hidden; color:#fff; background:#07356e; }.product-hero::after,.solar-coming::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(103deg,rgba(3,36,83,.96) 0%,rgba(2,58,116,.87) 48%,rgba(3,56,103,.23) 100%); }.product-hero-photo { position:absolute; z-index:-2; inset:0; background:linear-gradient(90deg,rgba(3,31,70,.76),transparent 65%),url("../../assets/images/detalle-instalaciones-tablero.png") center/cover no-repeat; }.product-hero-layout { display:grid; grid-template-columns:1fr .85fr; gap:70px; align-items:center; min-height:500px; padding:64px 0; }.product-back { display:flex; gap:9px; margin:0 0 24px; color:#d2e8fb; font-size:.75rem; font-weight:700; }.product-back a:hover { color:#ffae65; }.product-back span { color:#ff8d26; }.product-kicker { display:flex; align-items:center; gap:9px; margin:0 0 13px; color:#1763ad; font-size:.7rem; font-weight:800; letter-spacing:.11em; }.product-hero .product-kicker,.solar-coming .product-kicker { color:#ffb66e; }.product-kicker > span { display:grid; place-items:center; width:24px; height:24px; color:#fff; border-radius:6px; background:#f2791d; font-size:.78rem; }.product-hero h1,.solar-coming h1 { margin:0; font-family:var(--font-body); font-size:clamp(3.3rem,6.1vw,6.1rem); line-height:.9; letter-spacing:-.065em; }.product-hero h1 span,.solar-coming h1 span,.product-intro h2 em { color:#ff811b; font-style:normal; }.product-hero h2,.solar-coming h2 { max-width:610px; margin:18px 0 11px; font-family:var(--font-body); font-size:1.35rem; line-height:1.4; }.product-hero p:not(.product-back):not(.product-kicker),.solar-coming p:not(.product-back):not(.product-kicker) { max-width:570px; margin-bottom:24px; color:#e1effb; line-height:1.65; }.product-actions { display:flex; flex-wrap:wrap; gap:11px; }.product-primary,.product-secondary { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px; padding:12px 16px; border-radius:8px; font-size:.8rem; font-weight:800; }.product-primary { color:#fff; background:linear-gradient(115deg,#f2871c,#fa5709); box-shadow:0 10px 20px rgba(0,20,65,.23); }.product-secondary { color:#e8f3ff; border:1px solid rgba(255,255,255,.5); }.product-dashboard { overflow:hidden; border:7px solid #172a43; border-radius:14px; background:#f7fbff; box-shadow:0 26px 45px rgba(0,17,50,.36); transform:perspective(1100px) rotateY(-4deg); }.product-dashboard-bar { display:flex; justify-content:space-between; padding:13px 16px; color:#fff; background:#123c6c; font-size:.72rem; }.product-dashboard-bar span { color:#c4dbef; font-size:.62rem; }.product-dashboard-body { display:grid; grid-template-columns:28% 1fr; min-height:265px; color:#244160; }.product-dashboard-body aside { display:flex; flex-direction:column; gap:10px; padding:16px 10px; color:#d3e7f8; background:#112d51; font-size:.63rem; }.product-dashboard-body aside span:first-child { padding:7px; border-radius:5px; background:#ec7318; color:#fff; }.product-dashboard-body > div { padding:18px; }.product-dashboard-body > div > p { margin:0 0 13px; font-size:.85rem; font-weight:800; }.electric-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }.electric-stats span { padding:11px 8px; color:#0d4e91; border:1px solid #d7e4f1; border-radius:7px; background:#fff; font-size:1rem; font-weight:800; }.electric-stats small { display:block; margin-top:5px; color:#7187a0; font-size:.48rem; font-weight:600; }.electric-board { display:grid; gap:7px; margin-top:15px; font-size:.65rem; }.electric-board span { display:flex; justify-content:space-between; padding:9px; border-radius:5px; background:#edf4fb; }.electric-board i { color:#0f6fb6; font-style:normal; font-weight:800; }.product-content { display:grid; grid-template-columns:.9fr 1.1fr; gap:78px; align-items:start; padding:90px 0; }.product-intro { position:sticky; top:24px; }.product-intro h2,.solar-info h2 { margin:0 0 15px; font-family:var(--font-body); font-size:clamp(2.2rem,4vw,3.7rem); line-height:1.03; letter-spacing:-.05em; }.product-intro > p:not(.product-kicker),.solar-info p:not(.product-kicker) { color:#58708f; line-height:1.7; }.product-feature-grid { display:grid; gap:13px; }.product-feature-grid article { display:grid; grid-template-columns:50px 1fr; gap:17px; padding:24px 0; border-top:1px solid #cfdeed; }.product-feature-grid article > span { color:#ef7519; font-family:var(--font-title); font-size:1.6rem; }.product-feature-grid h3 { margin:0 0 7px; font-size:1.55rem; text-transform:uppercase; }.product-feature-grid p { margin:0; color:#5e718b; font-size:.88rem; line-height:1.65; }.product-access { padding:0 0 82px; }.product-access-card { display:flex; align-items:center; justify-content:space-between; gap:45px; padding:39px; color:#fff; border-radius:15px; background:linear-gradient(116deg,#07356c,#0a61af); }.product-access .product-kicker { color:#ffb66e; }.product-access h2 { max-width:620px; margin:0 0 10px; font-family:var(--font-body); font-size:1.8rem; line-height:1.15; }.product-access p:not(.product-kicker) { max-width:680px; margin:0; color:#d4e9fd; line-height:1.6; }.product-access .product-primary { flex:0 0 auto; }.product-footer { color:#c6d8ec; background:#061d3e; }.product-footer .apps-footer-top b { color:#fff; }.product-footer .apps-footer-top span { color:#a9c0d9; }.product-footer a:hover { color:#ff9e4c; }
.solar-coming { position:relative; isolation:isolate; min-height:490px; overflow:hidden; color:#fff; background:#063c65; }.solar-coming-photo { position:absolute; z-index:-2; inset:0; background:url("../../assets/images/electrosolar360-instalacion-solar.png") center/cover no-repeat; }.solar-coming-layout { display:flex; align-items:center; min-height:490px; padding:65px 0; }.solar-status { display:inline-flex; align-items:center; min-height:36px; padding:8px 12px; color:#fff4df; border:1px solid rgba(255,207,138,.65); border-radius:999px; background:rgba(106,63,3,.36); font-size:.74rem; font-weight:800; }.solar-info { max-width:840px; padding:86px 0; }.solar-info > p:not(.product-kicker) { max-width:700px; margin-bottom:25px; }.solar-info .product-secondary { color:#245383; border:1px solid #bcd0e5; }
@media (min-width:761px) and (max-width:1120px) { .works-hero-layout { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:16px; }.works-hero h1 { font-size:clamp(2.55rem,4.8vw,3.8rem); }.works-product-showcase { min-height:340px; }.works-coti-card { top:21px; width:205px; padding:16px; }.works-coti-card p { margin:12px 0 9px; }.works-coti-card li { font-size:.61rem; }.works-screen { right:0; bottom:10px; width:69%; min-height:242px; }.works-screen-layout { min-height:198px; }.works-screen-data { padding:10px; }.works-screen-top { padding:9px 11px; }.works-hero-copy > p:not(.works-breadcrumb):not(.works-kicker) { font-size:.88rem; }.product-hero-layout { grid-template-columns:1fr .9fr; gap:34px; }.product-content { gap:45px; } }
@media (max-width:760px) { .product-page .apps-nav { min-height:76px; }.product-page .apps-menu { top:76px; }.product-page .apps-menu .is-active { padding:0; color:#10254a; border:0; border-radius:0; background:none; box-shadow:none; }.product-hero-layout { grid-template-columns:1fr; min-height:0; gap:42px; padding:56px 0; }.product-hero h1,.solar-coming h1 { font-size:clamp(3rem,14vw,4.6rem); }.product-dashboard { max-width:520px; width:100%; transform:none; }.product-content { grid-template-columns:1fr; gap:38px; padding:65px 0; }.product-intro { position:static; }.product-access { padding-bottom:55px; }.product-access-card { align-items:flex-start; flex-direction:column; gap:22px; padding:26px; }.product-access .product-primary { width:100%; }.solar-coming-layout { min-height:460px; padding:58px 0; }.solar-coming::after { background:linear-gradient(105deg,rgba(0,34,72,.92),rgba(0,58,104,.6)); }.solar-info { padding:62px 0; }.product-actions { display:grid; grid-template-columns:1fr; }.product-primary,.product-secondary { width:100%; }.product-dashboard-body { min-height:220px; } }

/* Ajustes de composición, escala e iconografía del catálogo. */
.works-catalog .apps-nav { min-height:104px; }.works-catalog .works-brand { min-width:250px; }.works-catalog .works-brand span { color:#092d61; font-size:1.22rem; font-weight:800; letter-spacing:-.025em; }.works-catalog .apps-menu { gap:13px; font-size:.88rem; }.works-catalog .apps-menu a { padding:13px 16px; border-radius:9px; }.works-catalog .apps-menu .is-active { padding:13px 19px; }.works-hero-layout { grid-template-columns:1.08fr .92fr; gap:42px; }.works-hero-copy { min-width:0; max-width:590px; }.works-hero h1 { max-width:560px; overflow-wrap:anywhere; font-size:clamp(2.65rem,2.8vw,3.45rem); line-height:.98; letter-spacing:-.06em; }.works-hero h1 em { display:block; margin-top:3px; }.works-product-showcase { display:grid; grid-template-columns:minmax(190px,.76fr) minmax(270px,1.24fr); gap:18px; align-items:center; min-height:348px; }.works-coti-card { position:relative; z-index:auto; top:auto; left:auto; width:auto; padding:19px; animation:works-card-float 5.5s ease-in-out infinite; }.works-coti-brand > .works-coti-symbol { display:grid; place-items:center; width:41px; height:41px; color:#fff; border-radius:11px; background:#102f5c; }.works-coti-symbol svg,.works-card-icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }.works-screen { position:relative; right:auto; bottom:auto; width:auto; min-height:275px; animation:works-screen-in .8s ease-out both; }.works-screen-top { padding:11px 13px; }.works-screen-layout { min-height:232px; }.works-kicker > .works-mark { position:relative; display:block; width:24px; height:24px; border-radius:6px; background:linear-gradient(135deg,#ff9b37,#f16616); }.works-mark::before { content:""; position:absolute; inset:6px; background:linear-gradient(#fff 0 0) 0 0/4px 4px no-repeat,linear-gradient(#fff 0 0) 100% 0/4px 4px no-repeat,linear-gradient(#fff 0 0) 0 100%/4px 4px no-repeat,linear-gradient(#fff 0 0) 100% 100%/4px 4px no-repeat; opacity:.95; }.works-filter-inner { gap:32px; min-height:94px; }.works-filter-inner > p { display:flex; align-items:center; gap:10px; font-size:.93rem; }.works-filter-inner > p .works-filter-icon { position:relative; width:22px; height:18px; margin:0; color:inherit; font-size:0; }.works-filter-icon::before,.works-filter-icon::after { content:""; position:absolute; left:1px; width:20px; height:2px; border-radius:2px; background:#f37619; }.works-filter-icon::before { top:5px; box-shadow:5px 6px 0 #f37619; }.works-filter-icon::after { top:11px; width:7px; left:7px; }.works-filters { flex:1; display:grid; grid-template-columns:repeat(4,minmax(125px,1fr)); gap:11px; }.works-filters button { min-height:47px; padding:12px 15px; font-size:.82rem; }.works-section-heading { max-width:980px; }.works-section-heading h2 { margin-bottom:15px; font-size:clamp(3rem,4.8vw,4.8rem); line-height:.98; letter-spacing:-.065em; }.works-section-heading > p:not(.works-kicker) { max-width:760px; font-size:1.02rem; }.works-card-icon { color:#fff; font-size:0; }.works-card-icon svg { width:24px; height:24px; }.works-app-card:hover .works-card-icon { background:#f4771a; }.works-card-content h3 { font-size:1.56rem; }.works-category { padding:6px 10px; font-size:.67rem; }.works-card-action,.works-card-secondary { min-height:41px; padding:10px 13px; font-size:.74rem; }.works-card-content ul { font-size:.69rem; }
@keyframes works-card-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-7px); } } @keyframes works-screen-in { from { opacity:0; transform:translateX(20px) perspective(1000px) rotateY(-3deg); } to { opacity:1; transform:translateX(0) perspective(1000px) rotateY(-3deg); } }
@media (max-width:1120px) and (min-width:761px) { .works-catalog .apps-nav { min-height:92px; }.works-catalog .works-brand { min-width:0; }.works-catalog .apps-menu { gap:5px; font-size:.78rem; }.works-catalog .apps-menu a,.works-catalog .apps-menu .is-active { padding:11px 12px; }.works-hero-layout { grid-template-columns:1fr; gap:32px; padding:50px 0; }.works-hero-copy { max-width:700px; }.works-hero h1 { max-width:650px; font-size:clamp(2.8rem,5vw,4.2rem); }.works-product-showcase { max-width:680px; width:100%; margin:0 auto; grid-template-columns:minmax(220px,.8fr) minmax(330px,1.2fr); }.works-filter-inner { align-items:center; flex-direction:column; gap:12px; padding:20px 0; }.works-filters { width:100%; }.works-section-heading h2 { font-size:clamp(3rem,5vw,4rem); } }
@media (max-width:760px) { .works-catalog .apps-nav { min-height:78px; }.works-catalog .works-brand span { font-size:1rem; }.works-catalog .apps-menu { top:78px; }.works-catalog .apps-menu a,.works-catalog .apps-menu .is-active { padding:0; }.works-product-showcase { display:grid; grid-template-columns:minmax(165px,.72fr) minmax(215px,1.28fr); gap:12px; min-height:270px; }.works-coti-card { padding:14px; animation:none; }.works-coti-card p { margin:11px 0 8px; font-size:.72rem; }.works-coti-card ul { margin-bottom:10px; }.works-coti-card li { font-size:.58rem; }.works-coti-card a { font-size:.66rem; }.works-screen { min-height:225px; border-width:6px; transform:none; animation:works-screen-in .6s ease-out both; }.works-screen-layout { min-height:183px; }.works-screen-layout aside { padding:8px 6px; font-size:.49rem; }.works-screen-data { padding:9px; }.data-welcome { margin-bottom:8px; font-size:.67rem; }.data-stats span { min-height:43px; padding:6px; font-size:.71rem; }.data-list { margin-top:9px; font-size:.5rem; }.data-list span { padding:6px; }.works-filter-inner { align-items:stretch; padding:18px 0; }.works-filters { display:flex; overflow-x:auto; grid-template-columns:none; padding-bottom:4px; }.works-filters button { flex:0 0 auto; min-height:44px; font-size:.76rem; }.works-section-heading h2 { font-size:clamp(2.8rem,12vw,3.8rem); }.works-card-icon { width:49px; height:49px; } }
@media (max-width:520px) { .works-product-showcase { grid-template-columns:1fr; min-height:0; }.works-coti-card { max-width:none; }.works-screen { min-height:250px; }.works-screen-layout { min-height:207px; } }

/* Escala final de portada: navegación centrada y dos paneles equilibrados. */
.works-catalog .apps-nav { justify-content:center; min-height:108px; }.works-catalog .works-menu { flex:0 0 auto; margin:0 auto; }.works-hero-layout { grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr); gap:32px; }.works-hero-copy { max-width:650px; }.works-hero h1 { max-width:none; overflow-wrap:normal; font-size:clamp(2.4rem,2.3vw,2.75rem); white-space:normal; }.works-hero .works-title-name { display:inline-block; white-space:nowrap; }.works-hero h1 em { display:inline; margin:0; white-space:nowrap; }.works-product-showcase { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; min-height:284px; }.works-coti-card,.works-screen { min-width:0; min-height:284px; height:284px; }.works-coti-card { display:flex; flex-direction:column; justify-content:flex-start; padding:17px; }.works-coti-card p { margin:13px 0 9px; font-size:.73rem; }.works-coti-card ul { margin-bottom:10px; }.works-coti-card li { margin:5px 0; font-size:.61rem; }.works-coti-card a { margin-top:auto; font-size:.68rem; }.works-screen { border-width:7px; transform:perspective(1000px) rotateY(-2deg); }.works-screen-layout { min-height:234px; }.works-screen-layout aside { padding:12px 8px; font-size:.51rem; }.works-screen-data { padding:11px; }.data-welcome { margin-bottom:10px; font-size:.69rem; }.data-stats span { min-height:48px; padding:6px; font-size:.75rem; }.data-list { margin-top:10px; font-size:.51rem; }.data-list span { padding:6px; }.works-audience { display:flex; flex-wrap:wrap; gap:8px; margin-top:17px; opacity:0; animation:works-fade-up .65s .35s ease-out forwards; }.works-audience span { padding:7px 10px; color:#dceeff; border:1px solid rgba(202,233,255,.31); border-radius:999px; background:rgba(0,25,70,.18); font-size:.64rem; font-weight:700; }.works-hero-photo { animation:works-hero-drift 18s ease-in-out infinite alternate; }.works-filters button { min-height:50px; font-size:.85rem; }.works-filters button:hover { color:#fff; border-color:#0b5da9; background:#0b5da9; transform:translateY(-1px); }.works-section-heading h2 { font-size:clamp(3.35rem,5.2vw,5.15rem); }.works-card-image::after { background:linear-gradient(0deg,rgba(7,29,65,.71),transparent 66%); }.works-app-card { animation:works-card-reveal .65s ease both; }.works-app-card:nth-child(2) { animation-delay:.09s; }.works-app-card:nth-child(3) { animation-delay:.18s; }
@keyframes works-fade-up { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } } @keyframes works-hero-drift { from { transform:scale(1); } to { transform:scale(1.03); } } @keyframes works-card-reveal { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }
@media (max-width:1120px) and (min-width:761px) { .works-catalog .apps-nav { min-height:96px; }.works-hero-layout { grid-template-columns:1fr; gap:31px; }.works-hero h1 { font-size:clamp(2.7rem,4vw,3.6rem); }.works-product-showcase { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:680px; min-height:294px; }.works-coti-card,.works-screen { min-height:294px; height:294px; }.works-filter-inner { min-height:0; }.works-filters { grid-template-columns:repeat(4,minmax(120px,1fr)); } }
@media (max-width:760px) { .works-catalog .apps-nav { justify-content:flex-end; min-height:78px; }.works-catalog .works-menu { margin:0; }.works-hero h1 { font-size:clamp(1.9rem,8vw,2.45rem); letter-spacing:-.07em; }.works-product-showcase { grid-template-columns:repeat(2,minmax(0,1fr)); min-height:255px; }.works-coti-card,.works-screen { min-height:255px; height:255px; }.works-coti-card { padding:13px; }.works-coti-brand strong { font-size:1rem; }.works-coti-brand > .works-coti-symbol { width:34px; height:34px; }.works-coti-card p { font-size:.65rem; }.works-coti-card li { font-size:.52rem; }.works-screen { border-width:5px; }.works-screen-layout { min-height:207px; }.works-audience { margin-top:14px; }.works-audience span { font-size:.57rem; }.works-filters button { min-height:46px; font-size:.76rem; }.works-section-heading h2 { font-size:clamp(2.9rem,12.5vw,4.1rem); } }
@media (max-width:520px) { .works-product-showcase { grid-template-columns:1fr; gap:12px; }.works-coti-card,.works-screen { min-height:260px; height:260px; }.works-coti-card { padding:20px; }.works-coti-card p { font-size:.8rem; }.works-coti-card li { font-size:.66rem; } }

/* Las fichas de aplicaciones usan navegación propia, separada del sitio de servicios. */
.cotiobra-site .apps-nav,.license-page .apps-nav,.product-page .apps-nav { justify-content:center; }.cotiobra-site .product-menu,.license-page .product-menu,.product-page .product-menu { margin:0 auto; }.cotiobra-site .apps-footer-bottom,.license-page .apps-footer-bottom,.product-page .apps-footer-bottom { justify-content:center; }.cotiobra-site .apps-footer-bottom a,.license-page .apps-footer-bottom a,.product-page .apps-footer-bottom a { margin-left:24px; }
@media (max-width:720px) { .cotiobra-site .apps-nav,.license-page .apps-nav,.product-page .apps-nav { justify-content:flex-end; }.cotiobra-site .product-menu,.license-page .product-menu,.product-page .product-menu { margin:0; }.cotiobra-site .apps-footer-bottom a,.license-page .apps-footer-bottom a,.product-page .apps-footer-bottom a { display:block; margin:6px 0 0; } }
