Ver código fonte

Initial Commit

Paula Pereyra 2 anos atrás
commit
58b2298850

+ 13 - 0
.gitignore

@@ -0,0 +1,13 @@
+# Generated files by hugo
+/public/
+/resources/_gen/
+/assets/jsconfig.json
+hugo_stats.json
+
+# Executable may be added to repository
+hugo.exe
+hugo.darwin
+hugo.linux
+
+# Temporary lock file while building
+/.hugo_build.lock

+ 6 - 0
archetypes/default.md

@@ -0,0 +1,6 @@
+---
+title: "{{ replace .Name "-" " " | title }}"
+date: {{ .Date }}
+draft: true
+---
+

+ 75 - 0
config.toml

@@ -0,0 +1,75 @@
+baseURL = 'http://example.org/'
+languageCode = 'en-us'
+title = "ContenidosOnline"
+
+[params.navigation]
+  logo = "CO"
+
+[params.header]
+  title = "ContenidosOnline"
+  subtitle = "Web hosting, Consultoría Linux y Programación Web" 
+
+[params.intro]
+  text = "En ContenidosOnline, creemos que un sitio web es una herramienta esencial para cualquier empresa. Por eso, es importante contar con un sitio web profesional, seguro y que cumpla con los estándares actuales. Nosotros te ofrecemos servicio de web hosting, consultoría Linux y programación web para ayudarte a crear el sitio web que tu empresa necesita."
+
+[params.services]
+  titleService = "Consultoria Linux"
+  titleService2 = "Desarrollo web"
+  [[params.services.item_service_1]]
+    title = "Servidores Linux"
+    description = [
+        "Diseño, configuración y administración de servidores personalizados para empresas.",
+        "Mantenimiento y actualización continua para garantizar un rendimiento óptimo.",
+        "Soporte técnico 24/7 para resolver cualquier problema de servidor."
+      ]
+    icon = "fa-solid fa-server"
+
+  [[params.services.item_service_1]]
+    title = "Web Hosting"
+    description = [
+        "Planes de hosting compartido, VPS y dedicados diseñados específicamente.",
+        "Migración sin problemas de tu sitio web existente a nuestros servidores.",
+        "Monitorización constante y copias de seguridad automáticas."
+      ]
+    icon = "fa-solid fa-circle-h"
+
+  [[params.services.item_service_1]]
+    title = "Servidores de Backup"
+    description = [
+        "Soluciones de respaldo escalables y seguras.",
+        "Programación automática de copias de seguridad y restauración de datos rápida en caso de percances,",
+        "Garantía de integridad y confidencialidad de tus datos críticos."
+      ]
+    icon = "fa-solid fa-rotate-left"
+
+  [[params.services.item_service_1]]
+    title = "Correo Electrónico"
+    description = [
+      "Configuración y gestión de servidores de correo electrónico robustos y seguros.",
+      "Filtro de correo no deseado y protección antivirus para mantener la seguridad.",
+      "Acceso a tu correo electrónico desde cualquier lugar y dispositivo."
+    ]
+  icon = "fa-regular fa-envelope"
+
+  [[params.services.item_service_1]]
+    title = "Otros"
+    description = [
+      "Virtualización de servidores para la eficiencia y flexibilidad.",
+      "Chequeos de seguridad y evaluaciones de vulnerabilidad para proteger tu infraestructura.",
+      "Consultoría personalizada para ayudarte a aprovechar al máximo tus recursos de servidor."
+    ]
+  icon = "fa-solid fa-plus"
+
+  [[params.services.item_service_2]]
+    title = "Diseño Web Responsive"
+    description = [
+        "Nuestros sitios están diseñados para adaptarse a cualquier dispositivo.",
+      ]
+    icon = "fa-regular fa-window-maximize"
+
+  [[params.services.item_service_2]]
+    title = "Sitios web optimizados"
+    description = [
+        "Optimizamos nuestros sitios web para que sean fáciles de encontrar en los resultados de búsqueda. Esto significa que sus clientes potenciales pueden encontrar su sitio web cuando buscan información sobre su negocio.",
+      ]
+    icon = "fa-solid fa-magnifying-glass"

+ 16 - 0
layouts/index.html

@@ -0,0 +1,16 @@
+<html>
+  <head>
+    {{ partial "head.html" .}}
+  </head>
+  <body>
+    {{ partial "nav.html" .}}
+    {{ partial "header.html" .}}
+    <main>
+      {{ partial "intro.html" . }}
+      {{ partial "services.html" . }}
+    </main>
+
+    {{ partial "footer.html" .}}
+  </body>
+  {{ partial "script.html" .}}
+</html>

+ 3 - 0
layouts/partials/footer.html

@@ -0,0 +1,3 @@
+<footer>
+  
+</footer>

+ 9 - 0
layouts/partials/head.html

@@ -0,0 +1,9 @@
+<meta charset="UTF-8" />
+<meta name="viewport" content="width=device-width, initial-scale=1.0" />
+<title>{{ .Title }}</title>
+
+<!-- Style -->
+<link rel="stylesheet" href="css/main.css">
+
+<!-- Icons -->
+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css">

+ 16 - 0
layouts/partials/nav.html

@@ -0,0 +1,16 @@
+<nav class="main-header">
+  <div class="logo">
+    <a href="#"
+      >{{ with .Site.Params.navigation.logo }}{{ . | markdownify }}{{ end }}</a
+    >
+  </div>
+  <input type="checkbox" id="menu-btn" class="menu-btn" />
+  <label for="menu-btn" class="menu-icon">
+    <span class="menu-icon__line"></span>
+  </label>
+  <ul class="nav-links">
+    <li class="nav-link"><a href="#">Servicios</a></li>
+    <li class="nav-link"><a href="#">Nosotros</a></li>
+    <li class="nav-link"><a href="#">Contacto</a></li>
+  </ul>
+</nav>

+ 1 - 0
layouts/partials/script.html

@@ -0,0 +1 @@
+<script src="js/main.js"></script>

+ 399 - 0
static/css/main.css

@@ -0,0 +1,399 @@
+/* Variables */
+
+@font-face {
+  font-family: "Source Sans Pro";
+  src: url("../fonts/SourceSansPro-Regular.ttf");
+  font-weight: normal;
+  font-style: normal;
+}
+
+:root {
+  --ff-main: "Source Sans Pro", Arial, sans-serif;
+  --primary-color: "#329998";
+  --primary-color-gradient: linear-gradient(360deg, rgba(53,130,129,1) 0%, rgba(50,153,152,1) 35%, rgba(47,173,172,1) 100%);
+}
+
+body {
+  font-family: var(--ff-main);
+  font-weight: 300;
+  font-family: 19px;
+  color: #000;
+  padding: 0;
+  margin: 0;
+  box-sizing: border-box;
+  overflow-x: hidden;
+}
+
+.no-margins {
+  margin: 0;
+  padding: 0;
+}
+
+.container {
+  /* Extra Large: xl */ 
+  max-width: 1200px;
+  margin: 0 auto;
+}
+
+@media screen and (max-width: 767px) {
+  .container {
+    width: 100%;
+  }
+}
+
+.title-section {
+  margin: 0 0 30px 0;
+  font-size: 30px;
+  font-weight: 300;
+  text-transform: uppercase;
+  padding-bottom: 20px;
+  line-height: 1.5;
+  text-align: center;
+  color: #fff;
+}
+
+.title-section::after {
+  content: "";
+  position: absolute;
+  display: block;
+  width: 80px;
+  height: 2px;
+  background: #fff;
+  left: 50%;
+  margin-left: -40px;
+  margin-top: 1rem;
+}
+
+/* Nav */
+
+.main-header {
+  position: fixed;
+  color: #fff;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  height: 65px;
+  width: 100%;
+  z-index: 1;
+  transition: 0.4s ease-out;
+}
+.main-header .logo {
+  padding-left: 3rem;
+  font-weight: 600;
+  font-size: 30px;
+  font-weight: 700;
+}
+.main-header a {
+  text-decoration: none;
+  color: inherit;
+  text-transform: uppercase;
+}
+.main-header .nav-links {
+  display: flex;
+  list-style: none;
+  margin-right: 3rem;
+}
+.main-header .nav-links .nav-link a {
+  margin: 0.2rem;
+  padding: 1rem 0.5rem;
+}
+.main-header .nav-links .nav-link a:hover {
+  background: rgba(255, 255, 255, 0.03);
+  color: #fff;
+}
+.main-header .menu-icon {
+  position: relative;
+  padding: 26px 10px;
+  cursor: pointer;
+  z-index: 1;
+  display: none;
+}
+.main-header .menu-icon__line {
+  display: block;
+  position: relative;
+  background: #000;
+  height: 2px;
+  width: 20px;
+  border-radius: 4px;
+}
+.main-header .menu-icon__line::before, .main-header .menu-icon__line::after {
+  content: "";
+  position: absolute;
+  height: 100%;
+  width: 100%;
+  border-radius: 4px;
+  background-color: #000;
+  transition: background 0.8s ease;
+}
+.main-header .menu-icon__line::before {
+  transform: translateY(-5px);
+}
+.main-header .menu-icon__line::after {
+  transform: translateY(5px);
+}
+.main-header .menu-btn {
+  position: absolute;
+  top: -100px;
+}
+.main-header.scrolled {
+  height: 50px;
+  background: rgba(255, 255, 255, 0.9);
+  color: #000;
+}
+.main-header.scrolled .menu-icon__line, .main-header.scrolled .menu-icon__line::before, .main-header.scrolled .menu-icon__line::after {
+  background: #000;
+}
+
+/* Medium: MD */
+@media screen and (max-width: 767px) {
+  .main-header > .menu-icon {
+    display: inline-block;
+    margin-right: 3rem;
+  }
+
+  .main-header > .menu-icon__line::before,
+  .main-header > .menu-icon__line,
+  .main-header > .menu-icon__line::after {
+    animation-direction: reverse;
+  }
+  
+  .main-header > .menu-icon__line {
+    animation: closeMid 0.8s backwards;
+  }
+
+  .main-header > .menu-icon__line::before {
+    animation: closeTop 0.8s backwards;
+  }
+
+  .main-header > .menu-icon__line::after {
+    animation: closeBottom 0.8s backwards;
+  }
+
+  .nav-links {
+    position: absolute;
+    top: 0;
+    left: 0;
+    margin: 0;
+    opacity: 0;
+    flex-direction: column;
+    justify-content: flex-start;
+    align-items: center;
+    padding: 5rem 0;
+    width: 100vw;
+    height: 100vh;
+    font-size: 18px;
+    color: var(--secondary-text);
+    transition: opacity 0.8s 0.5s, clip-path 1s 0.5s;
+    clip-path: circle(200px at top right);
+  }
+  
+  .main-header .nav-links .nav-link {
+    opacity: 0;
+    transform: translateX(100%);
+    width: 100%;
+    text-align: center;
+
+    transition: .4s ease-in-out 1s, transform .6s cubic-bezier(0.175, 0.885, 0.32. 1.275)
+  }
+  
+  .main-header > .nav-links > .nav-link > a {
+    display: block;
+    margin-bottom: 2rem;
+  }
+  
+  .menu-btn:checked ~ .nav-links {
+    opacity: 1;
+    clip-path: circle(100% at center);
+    background-color: #329998;
+  }
+
+  .menu-btn:checked ~ .nav-links > .nav-link {
+    opacity: 1;
+    transform: translateX(0);
+    transition: 
+      opacity .4s ease-in-out 1s,
+      transform .6s cubic-bezier(0.175, 0.885, 0.32, 1.275) 1s;
+  }
+
+  .menu-btn:checked ~ .menu-icon {
+    border-radius: 50%;
+    animation: pulse 1s;
+  }
+
+  .menu-btn:checked ~ .menu-icon > .menu-icon__line,
+  .menu-btn:checked ~ .menu-icon > .menu-icon__line::after,
+  .menu-btn:checked ~ .menu-icon > .menu-icon__line::before
+  {
+    background: #fff;
+  }
+
+  .menu-btn:checked ~ .menu-icon > .menu-icon__line {
+    animation: openMid 0.8s forwards
+  }
+
+  .menu-btn:checked ~ .menu-icon > .menu-icon__line::after {
+    animation: openTop 0.8s forwards
+  }
+
+  .menu-btn:checked ~ .menu-icon > .menu-icon__line::before {
+    animation: openBottom 0.8s forwards;
+  }
+}
+
+/* Header top */
+.header-top {
+  width: 100%; 
+  height: 100vh;
+  background: linear-gradient(180deg, rgba(53,130,129,1) 0%, rgba(50,153,152,1) 35%, rgba(47,173,172,1) 100%);
+}
+
+.header-top > .container__header {
+  display: flex;
+  height: 100%;
+  flex-direction: column;
+  justify-content: center;
+  align-items: center;
+  text-align: center;
+}
+
+.header-top > .container__header > h1 {
+  font-size: clamp(28px, 4vw, 50px);
+  color: #fff;
+  margin: 0 0 20px 0;
+}
+
+.header-top > .container__header > h2 {
+  font-size: clamp(16px, 4vw, 28px);
+  line-height: 38px;
+  font-weight: 300;
+  text-wrap: wrap;
+  color: rgba(255, 255, 255, 0.8);
+}
+
+/* Intro Section */
+.intro-container {
+  padding: 4rem 2rem;
+  text-wrap: wrap;
+}
+
+.intro-container > span {
+  font-size: clamp(16px, 1.1vw, 28px);
+}
+
+/* Services Section */
+
+.services-container {
+  background: var(--primary-color-gradient);
+  padding: 4rem 2rem 4rem 2rem;
+  clip-path: polygon(0px 0px, 100% 0px, 100% 93.85%, 0px 100%);
+}
+
+.services-container > .container > span {
+  font-size: 24px;
+  line-height: 34px;
+  color: rgba(255, 255, 255, 0.8);
+}
+
+.container-services__items {
+  display: grid;
+  grid-template-columns: repeat(2, 1fr);
+  column-gap: 1rem;
+  row-gap: 1rem;
+  margin: 1rem 0 4rem 0;
+}
+
+.container-services__items > .service-item {
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  background-color: #fff;
+  padding: 1rem;
+  border-radius: 7px;
+}
+
+.container-services__items > .service-item > .icon-item-container {
+  max-width: 100px;
+  min-width: 100px;
+  text-align: center;
+}
+
+.container-services__items > .service-item > .icon-item-container > i {
+  font-size: 60px;
+  transition: font-size 0.6s linear;
+}
+
+.container-services__items > .service-item > .icon-item-container > i:hover {
+  font-size: 80px;
+}
+
+
+.text-item-container > h2 {
+  font-size: 18px;
+  font-weight: bold;
+  margin: 0;
+}
+
+.container-services__items > .service-item > .texts-item-container > ul {
+  color: rgba(0, 0, 0, 0.6);
+  font-size: 16px;
+  font-weight: 400;
+}
+
+@media screen and (max-width: 768px) {
+  .container-services__items {
+    grid-template-columns: 1fr;
+    row-gap: 1rem;
+  }
+
+  .container-services__items > .service-item {
+    flex-direction: column;
+  }
+
+  .container-services__items > .service-item > .icon-item-container {
+    padding: 1rem 0
+  }
+
+  .container-services__items > .service-item > .texts-item-container > ul {
+    list-style: none;
+    padding: 0
+  }
+
+  .container-services__items > .service-item > .texts-item-container > ul > li {
+    margin-bottom: .3rem;
+  }
+
+  .services-container {
+    clip-path: polygon(0px 0px, 100% 0px, 99.78% 98.59%, 0px 100%);
+  }
+}
+
+
+/* Animaciones */
+@keyframes pulse {
+  from {
+    box-shadow: 0 0 0 0px rgba(50, 153, 152, 0.6);
+    background: rgba(50, 153, 152, 0.6);
+  }
+
+  to {
+    box-shadow: 0 0 0 1000px rgba(50, 153, 152, 0);
+    background: rgba(50, 153, 152, 0);
+  }
+}
+
+@keyframes openTop {
+  0% { transform: translateY(-5px) rotate(0deg); }
+  50% { transform: translateY(0px) rotate(0deg); }
+  100% { transform: translateY(0px) rotate(90deg); }
+}
+
+@keyframes openMid {
+  50% { transform: rotate(0deg); }
+  100% { transform: rotate(50deg); }
+}
+
+@keyframes openBottom {
+  0% { transform: translateY(5px) rotate(0deg); }
+  50% { transform: translateY(0px) rotate(0deg); }
+  100% { transform: translateY(0px) rotate(90deg); }
+}