/* ===== FUENTES ===== */ @import url('https://fonts.googleapis.com/css2?family=Literata:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500;1,600;1,700;1,800&family=Raleway:wght@300;400;500;600;700&family=Jost:wght@300;400;500;600;700&display=swap'); /* ===== VARIABLES ===== */ :root { --teal: #003F52; --ligth-teal: #006d8f; --bordo: #BA124D; --oscuro: #110916; --dusty: #a79bab; --claro: #EAF0EE; --rosa: #DFBDB9; --rose-gold-1: #DFBDB9; --rose-gold-2: #BA8B7A; --rose-gold-3: #C89A82; --font-display: 'Literata', serif; --font-ui: 'Raleway', sans-serif; --font-body: 'Jost', sans-serif; --font-name: 'Kaleagnetta', handwriting; } * { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: var(--font-body); background: var(--oscuro); color: var(--claro); overflow-x: hidden; font-weight: 300; } /* ===== LOGO ===== */ .logo-img { height: 32px; width: auto; display: block; } /* ===== CANVAS FLUIDO ===== */ #fluidCanvas { display: block; width: 100%; height: 100vh; position: fixed; top: 0; left: 0; z-index: 0; pointer-events: auto; background: var(--oscuro); } /* Asegurar que el contenido esté por encima */ .hero, section, .footer { position: relative; z-index: 1; } /* ===== HEADER ===== */ header { position: fixed; top: 0; left: 0; right: 0; z-index: 50; display: flex; align-items: center; justify-content: space-between; padding: 26px 48px; background: linear-gradient(180deg, rgba(17,9,22,.9) 0%, rgba(17,9,22,0) 100%); } .menu-btn { display: flex; align-items: center; gap: 10px; background: transparent; border: 1px solid rgba(234,240,238,.2); border-radius: 100px; padding: 10px 20px; color: var(--claro); font-family: var(--font-ui); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; font-weight: 500; cursor: pointer; transition: .25s; } .menu-btn:hover { border-color: var(--rosa); color: var(--rosa); } .menu-btn .bars { display: flex; flex-direction: column; gap: 3px; } .menu-btn .bars span { width: 14px; height: 1.4px; background: currentColor; display: block; } /* ===== OVERLAY & SHEET ===== */ .overlay { position: fixed; inset: 0; background: rgba(0,0,0,.6); opacity: 0; pointer-events: none; transition: .35s; z-index: 90; } .overlay.open { opacity: 1; pointer-events: auto; } .sheet { position: fixed; left: 0; right: 0; bottom: 0; z-index: 100; background: var(--claro); border-radius: 22px 22px 0 0; padding: 10px 36px 30px; transform: translateY(102%); transition: transform .4s cubic-bezier(.2,.8,.2,1); max-height: 55vh; overflow-y: auto; color: var(--oscuro); box-shadow: 0 -8px 40px rgba(0,0,0,.3); } .sheet.open { transform: translateY(0); } .sheet-handle { width: 44px; height: 4px; background: rgba(34,23,40,.2); border-radius: 100px; margin: 0 auto 16px; } .sheet-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; } .sheet-top .logo { font-size: 0; } .sheet-top .logo img { height: 28px; width: auto; } .close-btn { width: 32px; height: 32px; border-radius: 100px; border: 1px solid rgba(34,23,40,.2); background: transparent; color: var(--oscuro); font-size: 14px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: .2s; } .close-btn:hover { border-color: var(--bordo); color: var(--bordo); } .sheet-body { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 30px; align-items: start; } .sheet-col { display: flex; flex-direction: column; gap: 2px; } .sheet-col-title { font-family: var(--font-ui); font-size: 16px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--bordo); margin-bottom: 8px; padding-right: 12px; text-align: right; } .sheet-link { display: grid; grid-template-columns: 1fr 20px; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 6px; text-decoration: none; color: var(--oscuro); transition: .2s; background: transparent; text-align: right; } .sheet-link:hover { background: rgba(186,18,77,.06); } .sheet-link-icon { font-size: 12px; color: var(--bordo); opacity: .4; text-align: center; grid-row: 1/3; grid-column: 2; } .sheet-link-main { font-family: var(--font-display); font-style: italic; font-weight: 600; font-size: 16px; color: var(--oscuro); line-height: 1.2; grid-column: 1; } .sheet-link-desc { font-family: var(--font-ui); font-size: 13px; color: var(--dusty); font-weight: 500; opacity: .8; grid-column: 1; margin-top: -2px; } .sheet-link.highlight { background: var(--bordo); border-radius: 6px; padding: 10px 14px; margin-top: 6px; } .sheet-link.highlight .sheet-link-icon { color: #fff; opacity: 1; } .sheet-link.highlight .sheet-link-main { color: #fff; } .sheet-link.highlight .sheet-link-desc { color: rgba(255,255,255,.7); } .sheet-link.highlight:hover { background: #9c0f40; } /* ===== HERO ===== */ .hero { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; position: relative; padding: 0 80px; max-width: 1200px; margin: 0 auto; text-align: center; pointer-events: none; } .hero-content { position: relative; z-index: 2; max-width: 900px; margin: 0 auto; pointer-events: auto; } /* ===== TIPOGRAFÍA ===== */ .eyebrow { font-family: var(--font-ui); font-size: 12px; letter-spacing: .28em; text-transform: uppercase; color: var(--claro); margin-bottom: 22px; display: flex; align-items: center; gap: 12px; opacity: 0.6; } .eyebrow::before { content: ''; width: 30px; height: 1px; background: linear-gradient(90deg, var(--rose-gold-3), var(--rose-gold-1)); } h1, h2 { font-family: var(--font-display); font-weight: 300; font-style: italic; font-size: clamp(40px, 6vw, 72px); line-height: 1.05; margin-bottom: 16px; } .grad-word { background: linear-gradient(100deg, var(--rose-gold-1) 0%, var(--bordo) 70%, var(--ligth-teal) 100%); -webkit-background-clip: text; background-clip: text; color: transparent; } p, .lede { font-family: var(--font-ui); font-size: 18px; line-height: 1.7; color: var(--claro); max-width: 560px; margin: 0 auto 26px; opacity: 0.8; font-weight: 300; } .lede { font-size: 18px; opacity: 0.7; max-width: 640px; } /* ===== BOTONES ===== */ .btn { font-family: var(--font-ui); font-size: 13px; font-weight: 500; letter-spacing: .05em; padding: 16px 30px; border-radius: 2px; cursor: pointer; transition: .25s; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; } .btn-solid { background: var(--bordo); color: #fff; border: 1px solid var(--bordo); } .btn-solid:hover { background: #9c0f40; } .btn-outline { background: transparent; color: var(--claro); border: 1px solid rgba(234,240,238,.2); } .btn-outline:hover { border-color: var(--rosa); color: var(--rosa); } .hero-actions { display: flex; gap: 16px; justify-content: center; margin-top: 40px; } .hero-actions .btn { pointer-events: auto; } /* ===== HOME BUTTON ===== */ .home-btn { position: absolute; right: 20px; bottom: 20px; font-size: 20px; color: var(--rose-gold-1); text-decoration: none; transition: .3s; z-index: 10; pointer-events: auto; } .home-btn:hover { color: rgba(234,240,238,.4); } /* ===== SCROLL HINT ===== */ .scroll-hint { position: absolute; bottom: 36px; left: 50%; transform: translateX(-50%); font-family: var(--font-ui); font-size: 10.5px; letter-spacing: .2em; text-transform: uppercase; color: rgba(234,240,238,.3); display: flex; flex-direction: column; align-items: center; gap: 8px; pointer-events: auto; } .scroll-hint .line { width: 1px; height: 36px; background: rgba(234,240,238,.2); } /* ===== SECCIONES GENERALES ===== */ section { padding: 80px 48px; max-width: 1200px; margin: 0 auto; position: relative; } section .eyebrow { justify-content: center; } section h2 { text-align: center; max-width: 800px; margin: 0 auto 12px; } section .lede { text-align: center; max-width: 900px; margin-bottom: 38px; } /* ===== SERVICIOS ===== */ .tabs { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin-bottom: 44px; border-bottom: 1px solid rgba(234,240,238,.06); } .tab { font-family: var(--font-ui); font-size: 20px; font-weight: 400; letter-spacing: .03em; color: rgba(234,240,238,.4); background: none; border: none; cursor: pointer; padding: 14px 22px; position: relative; transition: .2s; } .tab .num { font-family: var(--font-display); font-style: italic; font-size: 13px; color: var(--rosa); margin-right: 8px; } .tab.active { color: var(--claro); } .tab.active::after { content: ''; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: linear-gradient(90deg, var(--rose-gold-3), var(--bordo)); } .tab:hover { color: var(--claro); } .panel { display: none; animation: fade .4s ease; } .panel.active { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; } @keyframes fade { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } } .panel-copy h3 { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 25px; margin-bottom: 16px; } .panel-copy h3 em { color: var(--bordo); font-style: italic; } .panel-copy p { font-size: 15px; max-width: 600px; margin-bottom: 26px; } .panel-list { display: flex; flex-direction: column; border-top: 1px solid rgba(234,240,238,.06); } .panel-list .item { display: flex; align-items: center; gap: 14px; padding: 14px 0; border-bottom: 1px solid rgba(234,240,238,.06); font-family: var(--font-ui); font-size: 15px; color: var(--claro); opacity: 0.8; } .icon-min { font-size: 14px; color: var(--rose-gold-1); opacity: 0.5; flex-shrink: 0; width: 24px; text-align: center; } /* ===== PLANES ===== */ .plans-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; margin-bottom: 40px; } .plan-card { background: rgba(234,240,238,.03); border: 1px solid rgba(234,240,238,.06); border-radius: 10px; padding: 30px 24px; display: flex; flex-direction: column; text-align: center; } .plan-card.reco { border: 1px solid rgba(223,189,185,.2); background: rgba(234,240,238,.04); box-shadow: 0 0 30px rgba(186,18,77,.05); } .badge { align-self: center; font-family: var(--font-ui); font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--bordo); border: 1px solid var(--bordo); padding: 4px 14px; border-radius: 100px; margin-bottom: 14px; } .plan-name { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 24px; margin-bottom: 4px; } .plan-stars { color: var(--rosa); font-size: 11px; letter-spacing: 2px; margin-bottom: 14px; } .plan-obj { font-family: var(--font-ui); font-size: 12px; line-height: 1.5; color: rgba(234,240,238,.5); margin-bottom: 22px; min-height: 52px; } .plan-feats { list-style: none; flex: 1; margin-bottom: 24px; text-align: left; } .plan-feats li { font-family: var(--font-ui); font-size: 12px; line-height: 1.5; padding: 8px 0; border-top: 1px solid rgba(234,240,238,.06); color: rgba(234,240,238,.7); } .plan-feats li:first-child { border-top: none; } .plan-feats li::before { content: '— '; color: var(--rosa); opacity: 0.5; } .plan-cta { font-family: var(--font-ui); font-size: 12px; font-weight: 500; letter-spacing: .04em; text-align: center; padding: 12px; border-radius: 2px; text-decoration: none; border: 1px solid rgba(234,240,238,.15); color: var(--claro); transition: .25s; } .plan-cta:hover { border-color: var(--rosa); color: var(--rosa); } .plan-main-cta { display: block; max-width: 300px; margin: 0 auto; text-align: center; } /* ===== ACCORDION ===== */ .acc { border-top: 1px solid rgba(234,240,238,.06); } .acc-item { border-bottom: 1px solid rgba(234,240,238,.06); } .acc-head { display: flex; align-items: center; justify-content: space-between; padding: 20px 4px; cursor: pointer; } .acc-head-left { display: flex; align-items: center; gap: 16px; } .acc-num { font-family: var(--font-display); font-style: italic; color: var(--dusty); font-size: 14px; opacity: 0.5; } .acc-name { font-family: var(--font-ui); font-size: 26px; font-weight: 400; } .acc-toggle { width: 26px; height: 26px; border-radius: 100px; border: 1px solid rgba(234,240,238,.15); display: flex; align-items: center; justify-content: center; font-size: 14px; color: var(--rosa); transition: .25s; } .acc-item.open .acc-toggle { transform: rotate(45deg); border-color: var(--bordo); color: var(--bordo); } .acc-body { max-height: 0; overflow: hidden; transition: .35s ease; } .acc-item.open .acc-body { max-height: 600px; } .acc-body-inner { padding: 0 4px 26px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } .service-row { font-family: var(--font-ui); font-size: 16px; color: rgba(234,240,238,.6); padding: 12px 0; border-top: 1px solid rgba(234,240,238,.04); } .service-row b { display: block; color: var(--claro); font-size: 14px; margin-bottom: 3px; font-weight: 500; } .service-row .price { color: var(--rosa); font-family: var(--font-display); font-style: italic; font-size: 13px; } /* ===== PROCESO ===== */ .arcade-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; } .column { position: relative; padding: 0 6px; text-align: center; } .column:not(:last-child)::after { content: ''; position: absolute; right: -7px; top: 14%; bottom: 44px; width: 1px; background: rgba(234,240,238,.06); } .arch { width: 100%; aspect-ratio: 1/1; max-height: 100px; border: 2px solid rgba(234,240,238,.06); border-bottom: none; border-radius: 100px 100px 0 0; display: flex; align-items: flex-end; justify-content: center; padding-bottom: 16px; margin-bottom: 16px; transition: .3s; } .column:hover .arch { border-color: rgba(223,189,185,.3); } .arch .num { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 20px; color: var(--rosa); opacity: 0.5; } .arch.final { background: var(--bordo); border-color: var(--bordo); } .arch.final svg { width: 22px; height: 22px; stroke: #fff; fill: none; stroke-width: 2; } .cat { font-family: var(--font-ui); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--ligth-teal); font-weight: 500; margin-bottom: 6px; } .column:nth-child(even) .cat { color: var(--bordo); } .step-title { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 15px; margin-bottom: 6px; } .step-desc { font-family: var(--font-ui); font-size: 12px; line-height: 1.5; color: var(--dusty); } /* ===== CIFRAS ===== */ .cifras-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; } .cifra-card { background: rgba(234,240,238,.02); border: 1px solid rgba(234,240,238,.06); border-radius: 10px; padding: 34px 30px; text-align: center; } .cifra-icon { width: 44px; height: 56px; margin: 0 auto 20px; border: 2px solid rgba(234,240,238,.06); border-bottom: none; border-radius: 22px 22px 0 0; } .cifra-label { font-family: var(--font-ui); font-size: 16px; letter-spacing: .18em; text-transform: uppercase; color: var(--ligth-teal); font-weight: 500; margin-bottom: 12px; } .cifra-value { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 24px; color: var(--claro); margin-bottom: 14px; } .cifra-desc { font-family: var(--font-body); font-size: 16px; line-height: 1.6; color: var(--dusty); } .cifra-desc b { color: var(--claro); font-weight: 400; } /* ===== COTIZADOR ===== */ .card { background: rgba(234,240,238,.03); border: 1px solid rgba(234,240,238,.06); border-radius: 14px; padding: 48px 52px; max-width: 800px; margin: 0 auto; } .progress { display: flex; gap: 6px; margin-bottom: 36px; } .progress .seg { height: 3px; flex: 1; background: rgba(234,240,238,.1); border-radius: 100px; overflow: hidden; } .progress .seg i { display: block; height: 100%; width: 0%; background: linear-gradient(90deg, var(--rose-gold-3), var(--bordo)); transition: .4s; } .step { display: none; } .step.active { display: block; animation: fade .35s ease; } .q-num { font-family: var(--font-display); font-style: italic; color: var(--rosa); font-size: 14px; margin-bottom: 10px; } .q-title { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 22px; margin-bottom: 28px; } .options { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 32px; } .opt { border: 1px solid rgba(234,240,238,.1); border-radius: 8px; padding: 18px 20px; cursor: pointer; transition: .2s; font-family: var(--font-ui); } .opt:hover { border-color: rgba(223,189,185,.3); } .opt.selected { border-color: var(--bordo); background: rgba(186,18,77,.05); } .opt-title { font-size: 14px; font-weight: 500; color: var(--claro); margin-bottom: 3px; } .opt-sub { font-size: 12px; color: var(--dusty); } .nav-row { display: flex; justify-content: space-between; align-items: center; } .btn-cotizador { font-family: var(--font-ui); font-size: 13px; font-weight: 500; padding: 12px 28px; border-radius: 4px; cursor: pointer; transition: .3s; border: 1px solid var(--bordo); background: transparent; color: var(--bordo); } .btn-cotizador:hover:not(:disabled) { background: var(--bordo); color: #fff; } .btn-cotizador:disabled { opacity: .2; cursor: not-allowed; border-color: #444; color: #666; } .btn-cotizador-back { font-family: var(--font-ui); font-size: 13px; font-weight: 500; padding: 12px 28px; border-radius: 4px; cursor: pointer; transition: .3s; border: 1px solid transparent; background: transparent; color: var(--dusty); } .btn-cotizador-back:hover { color: var(--claro); border-color: rgba(234,240,238,.1); } .btn-cotizador-restart { font-family: var(--font-ui); font-size: 13px; font-weight: 500; padding: 12px 28px; border-radius: 4px; cursor: pointer; transition: .3s; border: 1px solid var(--bordo); background: transparent; color: var(--bordo); } .btn-cotizador-restart:hover { background: var(--bordo); color: #fff; } .result { display: none; text-align: center; padding-top: 10px; } .result.active { display: block; animation: fade .4s ease; } .result-badge { font-family: var(--font-ui); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--bordo); margin-bottom: 10px; } .result-plan { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 32px; margin-bottom: 6px; } .result-price { font-family: var(--font-display); font-style: italic; font-weight: 500; font-size: 22px; color: var(--bordo); margin-bottom: 18px; } .result-desc { font-family: var(--font-body); font-size: 14px; color: var(--dusty); max-width: 400px; margin: 0 auto 30px; line-height: 1.6; } .result-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; } /* ===== NOSOTROS ===== */ .team-grid-simple { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; max-width: 800px; margin: 0 auto; } .team-card-simple { background: rgba(234,240,238,.02); border: 1px solid rgba(234,240,238,.06); border-radius: 12px; padding: 40px 32px; text-align: center; } .team-name { font-family: var(--font-name); font-weight: 500; font-size: 30px; margin-bottom: 8px; } .team-role { font-family: var(--font-ui); font-size: 13px; font-weight: 400; letter-spacing: .06em; text-transform: uppercase; color: var(--rosa); margin-bottom: 12px; opacity: 0.6; } .team-detail { font-family: var(--font-ui); font-size: 13px; line-height: 1.6; color: var(--claro); } .team-footer { margin-top: 10px; padding-top: 32px; border-top: 1px solid rgba(234,240,238,.04); text-align: center; } .team-footer-text { font-family: var(--font-ui); font-size: 16px; color: var(--dusty); max-width: 700px; margin: 0 auto; line-height: 1.6; } /* ===== FAQ ===== */ .faq-grid { border-top: 1px solid rgba(234,240,238,.06); max-width: 900px; margin: 0 auto; } .faq-item { border-bottom: 1px solid rgba(234,240,238,.06); } .faq-head { display: flex; justify-content: space-between; align-items: center; padding: 20px 4px; cursor: pointer; transition: .2s; } .faq-head:hover .faq-q { color: var(--rosa); } .faq-q { font-family: var(--font-ui); font-weight: 400; font-size: 20px; transition: .2s; } .faq-toggle { font-family: var(--font-body); font-size: 18px; font-weight: 300; color: var(--rose-gold-1); width: 28px; height: 28px; display: flex; align-items:center; justify-content: center; border-radius: 100px; border: 1px solid rgba(234,240,238,.1); transition: .25s; flex-shrink: 0; } .faq-item.open .faq-toggle { border-color: var(--bordo); color: var(--bordo); } .faq-body { max-height: 0; overflow: hidden; transition: .4s ease; } .faq-item.open .faq-body { max-height: 100px; } .faq-body p { font-family: var(--font-body); font-size: 15px; line-height: 1.7; color: var(--claro); padding: 0 4px 14px; max-width: 800px; } /* ===== CONTACTO ===== */ .contact-grid { display: grid; grid-template-columns: 1.6fr 1fr; gap: 48px; align-items: start; } .contact-form-wrap { background: rgba(234,240,238,.02); border: 1px solid rgba(234,240,238,.06); border-radius: 12px; padding: 40px 36px; } .contact-form { display: flex; flex-direction: column; gap: 18px; } .form-row { display: flex; gap: 18px; } .form-group { flex: 1; display: flex; flex-direction: column; gap: 4px; } .form-group.full { flex: 0 0 100%; } .form-group label { font-family: var(--font-ui); font-size: 11px; font-weight: 500; letter-spacing: .04em; text-transform: uppercase; color: rgba(234,240,238,.5); } .form-group .req { color: var(--bordo); } .form-group input, .form-group textarea { font-family: var(--font-body); font-size: 14px; font-weight: 300; padding: 12px 14px; border-radius: 6px; border: 1px solid rgba(234,240,238,.08); background: rgba(234,240,238,.03); color: var(--claro); transition: .25s; width: 100%; } .form-group input:focus, .form-group textarea:focus { outline: none; border-color: var(--bordo); background: rgba(234,240,238,.06); } .filter-tags { display: flex; flex-wrap: wrap; gap: 8px; } .filter-tag { font-family: var(--font-ui); font-size: 11px; font-weight: 500; padding: 6px 16px; border-radius: 100px; border: 1px solid rgba(234,240,238,.1); background: transparent; color: rgba(234,240,238,.4); cursor: pointer; transition: .2s; } .filter-tag:hover { border-color: var(--rosa); color: var(--claro); } .filter-tag.active { background: var(--bordo); border-color: var(--bordo); color: #fff; } .checkbox-label { display: flex; align-items: center; gap: 10px; font-family: var(--font-body); font-size: 13px; color: rgba(234,240,238,.6); cursor: pointer; } .checkbox-label input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--bordo); } .contact-direct { display: flex; flex-direction: column; gap: 16px; } .contact-card { display: flex; align-items: flex-start; gap: 16px; padding: 18px 20px; background: rgba(234,240,238,.02); border: 1px solid rgba(234,240,238,.04); border-radius: 10px; } .contact-icon { font-size: 20px; line-height: 1.2; flex-shrink: 0; margin-top: 2px; } .contact-label { font-family: var(--font-ui); font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--claro); opacity: 0.5; } .contact-info a { font-family: var(--font-body); font-size: 14px; color: var(--claro); text-decoration: none; } .contact-info a:hover { color: var(--rosa); } .contact-info span { font-family: var(--font-body); font-size: 13px; color: var(--claro); } .contact-socials { display: flex; gap: 12px; } .contact-socials a { font-family: var(--font-ui); font-size: 13px; font-weight: 400; color: var(--claro); text-decoration: none; opacity: 1; } .contact-socials a:hover { opacity: 1; } /* ===== FOOTER ===== */ .footer { background: rgba(0,0,0,.2); border-top: 1px solid rgba(234,240,238,.04); padding: 60px 48px 20px; } .footer-inner { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1fr 2fr; gap: 60px; padding-bottom: 40px; border-bottom: 1px solid rgba(234,240,238,.04); } .footer-brand { display: flex; flex-direction: column; gap: 12px; } .footer-desc { font-family: var(--font-display); font-size: 16px; line-height: 1.6; color: var(--dusty); max-width: 320px; } .footer-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; } .footer-col h4 { font-family: var(--font-ui); font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--rosa); opacity: 0.4; margin-bottom: 12px; } .footer-col a { display: block; font-family: var(--font-body); font-size: 13px; color: var(--dusty); text-decoration: none; padding: 4px 0; transition: .2s; } .footer-col a:hover { color: var(--claro); } .footer-socials { display: flex; gap: 12px; margin-top: 8px; } .footer-socials a { font-family: var(--font-ui); font-size: 11px; font-weight: 500; color: var(--claro); text-decoration: none; padding: 4px 12px; border: 1px solid rgba(234,240,238,.08); border-radius: 100px; transition: .2s; } .footer-socials a:hover { border-color: var(--rosa); color: var(--rosa); } .footer-bottom { max-width: 1200px; margin: 0 auto; padding-top: 20px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; } .footer-bottom span { font-family: var(--font-body); font-size: 12px; color: rgba(234,240,238,.2); } .footer-legal { display: flex; gap: 20px; } .footer-legal a { font-family: var(--font-body); font-size: 12px; color: rgba(234,240,238,.2); text-decoration: none; } .footer-legal a:hover { color: rgba(234,240,238,.5); } /* ===== RESPONSIVE ===== */ @media (max-width: 980px) { .plans-grid { grid-template-columns: 1fr 1fr; } .arcade-grid { grid-template-columns: repeat(3, 1fr); row-gap: 40px; } .column:nth-child(3)::after, .column:nth-child(6)::after { display: none; } .cifras-grid { grid-template-columns: 1fr; } } @media (max-width: 820px) { .sheet-body { grid-template-columns: 1fr 1fr; } .sheet-col:last-child { grid-column: 1 / -1; } .contact-grid { grid-template-columns: 1fr; } .footer-inner { grid-template-columns: 1fr; gap: 40px; } .team-grid-simple { grid-template-columns: 1fr; } } @media (max-width: 720px) { header { padding: 20px 22px; } .hero { padding: 0 30px; } section { padding: 60px 22px; } .panel.active { grid-template-columns: 1fr; gap: 30px; } .plans-grid { grid-template-columns: 1fr; } .arcade-grid { grid-template-columns: 1fr 1fr; row-gap: 30px; } .column:nth-child(2n)::after { display: none; } .options { grid-template-columns: 1fr; } .card { padding: 32px 24px; } .acc-body-inner { grid-template-columns: 1fr; } .footer-links { grid-template-columns: 1fr 1fr; gap: 24px; } .footer { padding: 40px 22px 16px; } .footer-bottom { flex-direction: column; text-align: center; } } @media (max-width: 520px) { .sheet { max-height: 70vh; padding: 10px 16px 20px; border-radius: 16px 16px 0 0; } .sheet-body { grid-template-columns: 1fr; gap: 16px; } .sheet-col:last-child { grid-column: auto; } .home-btn { right: 12px; bottom: 12px; font-size: 10px; } }