/** * @license * * Font Family: Melodrama * Designed by: Shaily Patel * URL: https://www.fontshare.com/fonts/melodrama * © 2024 Indian Type Foundry * * Melodrama Light * Melodrama Regular * Melodrama Medium * Melodrama Semibold * Melodrama Bold * Melodrama Variable (Variable font) * */ @font-face { font-family: Melodrama-Light; src: url(Melodrama-Light-Zt-Ou6BH.woff2) format("woff2"), url(Melodrama-Light-CKGLBK2S.woff) format("woff"), url(Melodrama-Light-uXQqIZNj.ttf) format("truetype"); font-weight: 300; font-display: swap; font-style: normal; } @font-face { font-family: Melodrama-Regular; src: url(Melodrama-Regular-Lx8dL_Y5.woff2) format("woff2"), url(Melodrama-Regular-B9SCXmiC.woff) format("woff"), url(Melodrama-Regular-BKicBwR2.ttf) format("truetype"); font-weight: 400; font-display: swap; font-style: normal; } @font-face { font-family: Melodrama-Medium; src: url(Melodrama-Medium-DqJd_QFP.woff2) format("woff2"), url(Melodrama-Medium-DLtpv-5a.woff) format("woff"), url(Melodrama-Medium-DRgej_ek.ttf) format("truetype"); font-weight: 500; font-display: swap; font-style: normal; } @font-face { font-family: Melodrama-Semibold; src: url(Melodrama-Semibold-B3VdauNX.woff2) format("woff2"), url(Melodrama-Semibold-CNhQs7zM.woff) format("woff"), url(Melodrama-Semibold-BPrj_mjL.ttf) format("truetype"); font-weight: 600; font-display: swap; font-style: normal; } @font-face { font-family: Melodrama-Bold; src: url(Melodrama-Bold-BHqZrnk3.woff2) format("woff2"), url(Melodrama-Bold-CEyN7yTU.woff) format("woff"), url(Melodrama-Bold-CfKzaV1d.ttf) format("truetype"); font-weight: 700; font-display: swap; font-style: normal; } @font-face { font-family: Melodrama-Variable; src: url(Melodrama-Variable-DIJ35dgE.woff2) format("woff2"), url(Melodrama-Variable-I8j-ryQH.woff) format("woff"), url(Melodrama-Variable-CUEJpgn7.ttf) format("truetype"); font-weight: 300 700; font-display: swap; font-style: normal; } /** * @license * * Font Family: Amulya * Designed by: Joana Correia * URL: https://www.fontshare.com/fonts/amulya * © 2024 Indian Type Foundry * * Amulya Light * Amulya LightItalic * Amulya Regular * Amulya Italic * Amulya Medium * Amulya MediumItalic * Amulya Bold * Amulya BoldItalic * Amulya Variable (Variable font) * Amulya VariableItalic (Variable font) * */ @font-face { font-family: Amulya-Light; src: url(Amulya-Light-BDt9I9YM.woff2) format("woff2"), url(Amulya-Light-Dd_brKyZ.woff) format("woff"), url(Amulya-Light-CrtUuXKY.ttf) format("truetype"); font-weight: 300; font-display: swap; font-style: normal; } @font-face { font-family: Amulya-LightItalic; src: url(Amulya-LightItalic-DF7YBPtu.woff2) format("woff2"), url(Amulya-LightItalic-CGphopoL.woff) format("woff"), url(Amulya-LightItalic-CB5qAZyq.ttf) format("truetype"); font-weight: 300; font-display: swap; font-style: italic; } @font-face { font-family: Amulya-Regular; src: url(Amulya-Regular-BxZ_oPLX.woff2) format("woff2"), url(Amulya-Regular-Bgpe0CAV.woff) format("woff"), url(Amulya-Regular-BuhPvStb.ttf) format("truetype"); font-weight: 400; font-display: swap; font-style: normal; } @font-face { font-family: Amulya-Italic; src: url(Amulya-Italic-Bjzr3Whj.woff2) format("woff2"), url(Amulya-Italic-Cp5ksjsL.woff) format("woff"), url(Amulya-Italic-BWYwF0Xq.ttf) format("truetype"); font-weight: 400; font-display: swap; font-style: italic; } @font-face { font-family: Amulya-Medium; src: url(Amulya-Medium-y5nTXbTX.woff2) format("woff2"), url(Amulya-Medium-DJGLgle7.woff) format("woff"), url(Amulya-Medium-CD8WhdvB.ttf) format("truetype"); font-weight: 500; font-display: swap; font-style: normal; } @font-face { font-family: Amulya-MediumItalic; src: url(Amulya-MediumItalic-C3arV2sd.woff2) format("woff2"), url(Amulya-MediumItalic-mR4uWMJt.woff) format("woff"), url(Amulya-MediumItalic-DE4Dn8ut.ttf) format("truetype"); font-weight: 500; font-display: swap; font-style: italic; } @font-face { font-family: Amulya-Bold; src: url(Amulya-Bold-CEPaxYU1.woff2) format("woff2"), url(Amulya-Bold-B2tGBGc6.woff) format("woff"), url(Amulya-Bold-BnYXbiqU.ttf) format("truetype"); font-weight: 700; font-display: swap; font-style: normal; } @font-face { font-family: Amulya-BoldItalic; src: url(Amulya-BoldItalic-CD3E63fW.woff2) format("woff2"), url(Amulya-BoldItalic-C9SG5Di7.woff) format("woff"), url(Amulya-BoldItalic-BpDEq35D.ttf) format("truetype"); font-weight: 700; font-display: swap; font-style: italic; } @font-face { font-family: Amulya-Variable; src: url(Amulya-Variable-DuhDOXtt.woff2) format("woff2"), url(Amulya-Variable-hg2TQxIq.woff) format("woff"), url(Amulya-Variable-DKRpKFdx.ttf) format("truetype"); font-weight: 300 700; font-display: swap; font-style: normal; } @font-face { font-family: Amulya-VariableItalic; src: url(Amulya-VariableItalic-D92Jvm6D.woff2) format("woff2"), url(Amulya-VariableItalic-DBI-wfbU.woff) format("woff"), url(Amulya-VariableItalic-5jAJSEh4.ttf) format("truetype"); font-weight: 300 700; font-display: swap; font-style: italic; } @font-face { font-family: Garamond-Variable; src: url(EBGaramond-VariableFont_wght-Dt9mpFmf.ttf) format("truetype"); font-weight: 400 800; font-display: swap; font-style: normal; } @font-face { font-family: Garamond-VariableItalic; src: url(EBGaramond-Italic-VariableFont_wght-VmIZtI1F.ttf) format("truetype"); font-weight: 400 800; font-display: swap; font-style: italic; } @font-face { font-family: TheSignature; src: url(Thesignature-B0n1h7ex.otf) format("opentype"), url(Thesignature-ZhGEr2n1.ttf) format("truetype"); font-weight: 400; font-display: swap; font-style: normal; } @property --font-color { syntax: ""; inherits: true; initial-value: #253334; } @property --button-background-color { syntax: ""; inherits: true; initial-value: #39c4b6; } @property --button-font-color { syntax: ""; inherits: true; initial-value: rgba(34, 73, 69, 0.7); } @property --border-radius { syntax: ""; inherits: false; initial-value: 6px; } @property --color-background-vectors-weak { syntax: ""; inherits: true; initial-value: rgba(109, 110, 112, 0.03); } @property --color-background-vectors-strong { syntax: ""; inherits: true; initial-value: rgba(37, 51, 52, 0.15); } @property --gradient-color-1 { syntax: ""; inherits: false; initial-value: #96deda; } @property --gradient-color-2 { syntax: ""; inherits: false; initial-value: #c1e2d4; } @property --gradient-color-3 { syntax: ""; inherits: false; initial-value: #d3e3d2; } @property --gradient-angle { syntax: ""; inherits: false; initial-value: 0deg; } @property --p-margin-bottom { syntax: ""; inherits: false; initial-value: 24px; } @property --second-gradient-angle { syntax: ""; inherits: false; initial-value: 0deg; } @property --second-gradient-color-1 { syntax: ""; inherits: false; initial-value: #3a7977; } @property --second-gradient-color-2 { syntax: ""; inherits: false; initial-value: #0f8b8d; } :root { --gap-xs: 0.4rem; --gap-md: 1rem; --gap-xl: 1.5rem; --gap-xxl: 2.5rem; --font-size: clamp(1.1rem, 1.068rem + 0.144vw, 1.24rem); --section-y-padding: 15vh; --background-gradient: linear-gradient( var(--gradient-angle), var(--gradient-color-1), var(--gradient-color-1), var(--gradient-color-2), var(--gradient-color-3), var(--gradient-color-2), var(--gradient-color-1), var(--gradient-color-1) ); font-family: Amulya-Variable, Arial, sans-serif; font-size: var(--font-size); line-height: 1.5; font-weight: 400; color-scheme: light dark; color: var(--font-color); background-color: transparent; font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } *, *:before, *:after { box-sizing: border-box; } * { margin: 0; -webkit-hyphens: auto; hyphens: auto; } html { scroll-behavior: smooth; } body { line-height: 1.5; } ul { margin: 0; padding: 0; list-style-type: none; } a { text-decoration: none; color: inherit; } img, picture, video, canvas, svg { display: block; max-width: 100%; } input, button, textarea, select { font: inherit; } p, h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; } #root, #__next { isolation: isolate; } .pagination { display: flex; flex-flow: row nowrap; gap: 8px; font-size: 0.9rem; } .pagination a:not(:has(svg)) { opacity: 0.8; width: 30px; height: 30px; display: flex; justify-content: center; align-items: center; border-radius: 100%; text-align: center; box-sizing: border-box; transition: color 300ms ease, background-color 300ms ease, opacity 300ms ease; &:hover { color: var(--gradient-color-2); background-color: #253334; opacity: 1; } } .pagination .current { width: 30px; height: 30px; display: flex; justify-content: center; align-items: center; background-color: #253334; color: var(--gradient-color-2); border-radius: 100%; } .background-gradient { position: fixed; height: 100dvh; width: 100%; overflow: hidden; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; } .background-gradient div:first-child { background-image: var(--background-gradient); width: 100%; height: 200%; position: absolute; transition: transform 0.3s ease-out; z-index: 1; } .background-gradient div:last-child { background-image: url(../img/granularTexture.png); background-size: 3.6%; background-repeat: repeat; width: 100%; height: 100%; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 2; } .line { width: 100%; height: 1px; background-color: var(--font-color); margin-top: 1px; } nav { container: nav / inline-size; width: 100%; padding: 1rem 5%; box-sizing: border-box; position: absolute; transition: transform 0.3s ease; top: 0; z-index: 99; display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: center; } nav svg path { transition: fill 0.4s ease; } nav .collapsable-menu { display: flex; flex-flow: row nowrap; flex: 1 1 100%; justify-content: space-between; } nav .collapsable-menu ul { display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; gap: clamp(1.4rem, 1.262rem + 0.615vw, 2rem); } nav ul a:where(:not(.button)) { transition: font-weight 0.3s ease-out, background-size 0.3s cubic-bezier(0.76, 0.05, 0.86, 0.06); font-size: 1.1rem; background: linear-gradient( to right, var(--button-font-color), var(--font-color) ); background-size: 0 0.05em; background-position: 0 100%; background-repeat: no-repeat; } nav ul a:where(:not(.button)):hover { font-weight: 450; background-size: 60% 0.05em; } nav a:where(.button) { padding: 0.6rem 1.4rem; border-radius: var(--border-radius); font-weight: 550; position: relative; display: block; box-sizing: border-box; overflow: hidden; transition: scale 0.6s ease; } nav a:where(.button):before { transition: transform 0.6s ease; content: ""; display: block; position: absolute; width: 200%; height: 100%; background-color: #fff; top: 0; right: 0; z-index: -1; background: #01b0ae; background: linear-gradient(90deg, #01b0ae, #53cbc7 47%, #72ddd5); } nav a:where(.button):hover { scale: 0.98; } nav a:where(.button):hover:before { transform: translate(50%); } .overflow-hidden nav .collapsable-menu { pointer-events: all; opacity: 1; } .overflow-hidden nav svg * { fill: var(--gradient-color-3); } .left { left: 0; } .right { right: 0; } .overflow-hidden { overflow: hidden; } .collapsable-background { --collapsable-background-bezier: cubic-bezier(0.45, 0.76, 0, 0.85); transition: width 0.6s var(--collapsable-background-bezier) 0.5s; width: 0; height: 100%; position: fixed; top: 0; opacity: 0.93; background: var(--font-color); z-index: 10; background-image: url(../svg/europeanStarsBlue.svg); background-size: 600px; background-position: 250px; background-repeat: no-repeat; } .collapsable-background-open { width: 100%; } .burger { display: none; } nav { position: fixed; } .hiddenNav { transform: translateY(-100%); } .visibleNav { transform: translateY(0); } .claraJpg, .claraPng { position: fixed; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: center center; pointer-events: none; } .claraJpg { z-index: -2; } .claraPng { z-index: 1; transition: opacity 50ms ease-in; } .auropeanStarsContainer { z-index: 1; position: fixed; right: 0dvw; top: 0dvh; width: 100%; height: 100%; pointer-events: none; } .europeanStars { position: absolute; opacity: 0.5; width: min(100%, clamp(37.5rem, 19.643rem + 47.619vw, 62.5rem)); aspect-ratio: 1/1; background-image: url(../img/turquoise.jpg); background-size: cover; top: calc(-1 * clamp(-16rem, -22rem + 26.667vw, 10rem)); right: calc(-1 * clamp(0rem, -19.749rem + 35.624vw, 23rem)); -webkit-mask-image: url(../svg/europeanStars.svg); mask-image: url(../svg/europeanStars.svg); -webkit-mask-size: cover; mask-size: cover; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; } section { position: relative; z-index: 3; width: 100%; } h1:not(:where(.h1-hero)) { --h1-font-size: clamp(3.5rem, 2.692rem + 3.59vw, 7rem); --h1-margin-bottom: calc(var(--section-y-padding) / 2); width: fit-content; margin: 0 auto var(--h1-margin-bottom) auto; font-size: var(--h1-font-size); font-family: Melodrama-Variable, serif; text-align: center; position: relative; } h1:not(:where(.h1-hero)):before { content: ""; position: absolute; background-image: url(svg/underline.svg); height: 2.5%; width: 50%; background-size: contain; background-repeat: no-repeat; line-height: 90%; bottom: 12%; left: 0%; } h2 { --h2-font-size: clamp(2.35rem, 1.992rem + 1.59vw, 3.9rem); --h2-line-height: 110%; font-family: Melodrama-Variable, serif; line-height: var(--h2-line-height); font-size: var(--h2-font-size); -webkit-hyphens: none; hyphens: none; } h3 { --h3-font-size: clamp(1.9rem, 1.738rem + 0.718vw, 2.6rem); --h3-max-width: min(100%, clamp(24rem, 23.077rem + 4.103vw, 28rem)); --h3-line-height: 113%; font-family: Melodrama-Variable, serif; font-size: var(--h3-font-size); max-width: var(--h3-max-width); line-height: var(--h3-line-height); -webkit-hyphens: none; hyphens: none; font-weight: 600; } *:where(.underline), *:where(.clara-back) { position: relative; } .clara-back:before { content: ""; background-image: url(../svg/claraBlockquote.svg); background-size: contain; background-repeat: no-repeat; height: 110%; aspect-ratio: 281 / 243; top: -5%; left: -5%; position: absolute; } h3:where(.clara-back) { margin: 0 auto; } .underline:before { content: ""; background-image: url(../svg/underline.svg); background-size: contain; background-repeat: no-repeat; position: absolute; width: 40%; aspect-ratio: 222 / 3.46; bottom: clamp(-1rem, -0.885rem + -0.513vw, -1.5rem); } h3:where(.signature) { --signature-font-size: clamp(2.7rem, 2.354rem + 1.538vw, 4.2rem); font-family: TheSignature, serif; font-size: var(--signature-font-size); opacity: 0.5; rotate: -3deg; margin-left: var(--gap-xs); text-align: center; max-width: 74%; } .hero { width: 100%; min-height: 100dvh; display: flex; justify-content: center; align-items: center; flex-flow: column nowrap; box-sizing: border-box; padding: 0 10%; } .hero img:first-child { width: 15%; min-width: 200px; aspect-ratio: 345/314; } .hero h1 { font-family: Melodrama-Variable, serif; font-weight: 400; font-size: clamp(2.2rem, 1.923rem + 1.231vw, 3.4rem); max-width: clamp(28rem, 22.923rem + 22.564vw, 50rem); text-align: center; line-height: 90%; color: #224945; box-sizing: border-box; padding: 0 4%; } .full-wrapper { container: full-wrapper / inline-size; width: 100%; } @container full-wrapper (width < 900px) { .full-wrapper .wrapper { max-width: calc(650px + var(--body-padding) * 2); } } .wrapper { --body-padding: clamp( 2dvw, calc(2dvw + (10 - 2) * ((100vw - 360px) / (1920 - 360))), 10dvw ); width: 100%; max-width: calc(1536px + var(--body-padding) * 2); margin: 0 auto; padding: 0 var(--body-padding); } section { width: 100%; padding: var(--section-y-padding) 0; box-sizing: border-box; } .full-wrapper:has(section#sobre-mi) { overflow: hidden; position: relative; } .container-sobre-mi { container: sobre-mi / inline-size; } .container-sobre-mi #sobre-mi { position: static; } .container-sobre-mi #sobre-mi > img { position: absolute; top: 5rem; right: -22dvw; height: 110%; width: fit-content; object-fit: cover; z-index: -1; } .container-sobre-mi .about-content { display: grid; grid-template-columns: 1fr 1.681fr; gap: calc(var(--body-padding) * 2); } .container-sobre-mi .about-content > div { display: flex; flex-flow: column nowrap; } .container-sobre-mi .about-content > div:first-child { gap: calc(var(--body-padding) / 2); } .container-sobre-mi .about-content > div:first-child > img { border-radius: var(--border-radius); width: 100%; height: fit-content; } .container-sobre-mi .about-content div:last-child { gap: var(--p-margin-bottom); } @container sobre-mi (width < 850px) { .container-sobre-mi #sobre-mi .about-content { --about-wrap-gap: 2.6rem; grid-template-columns: 1fr; gap: var(--about-wrap-gap); } .container-sobre-mi #sobre-mi .about-content .quote { font-size: clamp(1.8rem, 1.569rem + 1.026vw, 2.8rem); } .container-sobre-mi #sobre-mi .about-content div { --about-children-gap: calc(var(--about-wrap-gap) / 1.8); } .container-sobre-mi #sobre-mi .about-content div:first-child { gap: var(--about-children-gap); } .container-sobre-mi #sobre-mi .about-content div:last-child { gap: var(--about-children-gap); } } .quote { --quote-font-size: clamp(1.4rem, 1.215rem + 0.821vw, 2.2rem); font-family: Garamond-Variable, sans-serif; font-size: var(--quote-font-size); line-height: 115%; position: relative; } .quote:before { content: ""; position: absolute; background-image: url(../svg/claraBlockquote.svg); background-size: contain; background-repeat: no-repeat; height: 110%; top: -5%; left: -2.5%; aspect-ratio: 281/243; z-index: -1; } .past-experience { --past-experience-font-size: 0.9rem; --past-experience-list-gap: 0.3rem; counter-reset: item; width: 100%; font-family: Amulya-VariableItalic, serif; line-height: var(--past-experience-list-line-height); font-weight: 300; font-size: var(--past-experience-font-size); display: grid; gap: var(--past-experience-list-gap); } .past-experience li { counter-increment: item; display: block; position: relative; display: flex; flex-flow: row nowrap; justify-content: start; align-items: center; } .past-experience li span { --past-experience-enumeration-margin-r: 2px; --past-experience-list-line-height: 130%; --past-experience-number-opacity: 0.15; position: relative; display: block; line-height: var(--past-experience-list-line-height); } .past-experience li span:first-child { margin-right: var(--past-experience-enumeration-margin-r); height: fit-content; } .past-experience li span:first-child:before { content: counter(item) ""; font-size: calc(2.1 * var(--past-experience-font-size)); font-family: Garamond-VariableItalic, serif; opacity: var(--past-experience-number-opacity); } @keyframes border-rotation { to { rotate: 360deg; } } #recomendacion { --recomendation-font-size: clamp(2rem, 1.885rem + 0.513vw, 2.5rem); --recomendation-font-weight: 450; --recomendation-line-height: 120%; display: flex; flex-flow: row wrap; gap: var(--gap-xxl); justify-content: space-between; align-items: end; } #recomendacion .quote-container { flex: 1 1 100%; height: clamp(2.3rem, 2.023rem + 1.231vw, 3.5rem); } #recomendacion .quote-container img { height: 130%; width: fit-content; transform: scaleX(-1); } #recomendacion .recomendation-quote { font-weight: var(--recomendation-font-weight); font-size: var(--recomendation-font-size); line-height: var(--recomendation-line-height); max-width: 48rem; position: relative; } #recomendacion .recomendation-quote span { --chevron-l-r: -1.2rem; --margin-chevron: 1.4rem; display: inline-block; position: relative; } #recomendacion .recomendation-quote span:before, #recomendacion .recomendation-quote span:after { display: block; aspect-ratio: 20/22; background-size: contain; background-repeat: no-repeat; position: absolute; top: 35%; bottom: 0; height: 40%; background-position: center; opacity: 0.15; } #recomendacion .recomendation-quote span:first-child { margin-left: var(--margin-chevron); } #recomendacion .recomendation-quote span:first-child:before { content: ""; left: var(--chevron-l-r); background-image: url(../svg/chevronL.svg); } #recomendacion .recomendation-quote span:last-child { margin-right: var(--margin-chevron); } #recomendacion .recomendation-quote span:last-child:after { content: ""; right: calc(var(--chevron-l-r)); background-image: url(../svg/chevronR.svg); } #recomendacion .company-logo { width: clamp(5rem, 4.538rem + 2.051vw, 7rem); } #recomendacion .recomendation-meta { display: flex; flex-flow: column nowrap; gap: var(--gap-xl); } #recomendacion .recomendation-meta > div { display: flex; flex-flow: row nowrap; gap: var(--gap-md); } #recomendacion .recomending-person { width: 52px; aspect-ratio: 1/1; position: relative; display: block; } #recomendacion .recomending-person img { object-fit: cover; object-position: center center; width: 100%; height: 100%; border-radius: 100%; } #recomendacion .recomending-person:before { content: ""; width: 120%; height: 120%; top: -10%; left: -10%; position: absolute; z-index: -1; background: -gradient( from var(--second-gradient-angle), var(--font-color), var(--button-font-color) ); border-radius: 100%; filter: blur(8px); animation: border-rotation 5s linear infinite; opacity: 0.2; } .experience-container { container: experience-container / inline-size; } .experience-container #experience { display: grid; grid-template-columns: 1fr 1.628fr; gap: var(--gap-xl); } .experience-container #experience > div { position: relative; } .experience-container #experience > div:first-child img { position: absolute; top: -39%; left: -33%; width: 147%; max-width: unset; aspect-ratio: 1/1; object-fit: contain; object-position: center center; z-index: -1; } .experience-container #experience > div:nth-child(3) { --experience-socials-bezier: ease-out; --experience-socials-time: 0.3s; --experience-social-networks-padding-r: clamp( 1.2rem, 0.785rem + 1.846vw, 3rem ); height: fit-content; padding-right: var(--experience-social-networks-padding-r); box-sizing: border-box; min-height: 200px; display: grid; gap: var(--gap-xs); } .experience-container #experience > div:nth-child(3) a { border-bottom: 1px solid var(--font-color); display: flex; flex-flow: row nowrap; justify-content: space-between; align-items: center; position: relative; box-sizing: border-box; height: fit-content; padding: 0.38rem 1rem; transition: padding var(--experience-socials-time) var(--experience-socials-bezier); } .experience-container #experience > div:nth-child(3) a svg { position: absolute; left: 5px; height: 100%; top: 0; max-width: 33px; transition: transform var(--experience-socials-time) var(--experience-socials-bezier); } .experience-container #experience > div:nth-child(3) a svg path { transition: fill-opacity var(--experience-socials-time) var(--experience-socials-bezier); } .experience-container #experience > div:nth-child(3) a img { transition: transform var(--experience-socials-time) var(--experience-socials-bezier); } .experience-container #experience > div:nth-child(3) a p { --experience-social-networks-font-sizes: clamp( 1.2rem, 1.165rem + 0.154vw, 1.35rem ); font-size: var(--experience-social-networks-font-sizes); font-weight: 500; transition: opacity var(--experience-socials-time) var(--experience-socials-bezier), transform var(--experience-socials-time) var(--experience-socials-bezier); } .experience-container #experience > div:nth-child(3) a:hover { padding: 0.38rem 1.3rem; } .experience-container #experience > div:nth-child(3) a:hover svg { transform: translate(5px); } .experience-container #experience > div:nth-child(3) a:hover svg path { fill-opacity: 1; } .experience-container #experience > div:nth-child(3) a:hover p { opacity: 0.45; transform: translate(20px); font-weight: 400; } .experience-container #experience > div:nth-child(3) a:hover img { transform: rotate(45deg); } .experience-container #experience > div:last-child { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--gap-xl); } .experience-container #experience > div:last-child .experience-text { display: flex; flex-flow: column nowrap; gap: var(--p-margin-bottom); } .experience-container #experience > div:last-child .quote:before { background-image: url(../svg/quote.svg); width: 30%; top: -2%; left: unset; right: -2.5%; aspect-ratio: 144 / 96; } .experience-container #experience > *:nth-child(2) { width: 100%; aspect-ratio: 926 / 476; object-fit: cover; object-position: center center; min-height: 400px; border-radius: var(--border-radius); } @container experience-container (width < 46rem) { .experience-container #experience { grid-template-columns: 1fr; } .experience-container #experience h3 { width: fit-content; } .experience-container #experience > div:nth-child(3) { max-width: min(550px, 100%); grid-row-start: 4; } .experience-container #experience > div:last-child > div:last-child { grid-row-start: 1; } } @container experience-container (width < 75rem) { .experience-container #experience > div:last-child { grid-template-columns: 1fr; } } .past-institutions-container #past-institutions { display: flex; flex-flow: row wrap; justify-content: space-between; align-items: start; gap: calc(var(--gap-xxl) * 2) var(--gap-xl); } .past-institutions-container .institutions { display: flex; flex-flow: row wrap; justify-content: center; align-items: center; gap: var(--gap-xl) var(--gap-md); margin-left: auto; } .full-wrapper:has(> .wrapper > .services-container > img) { position: relative; } .services-container { container: services-container / inline-size; } .services-container > img { position: absolute; right: 0; top: var(--section-y-padding); max-height: calc(100% - var(--section-y-padding)); aspect-ratio: 638 / 669; } .services-container #services { display: grid; grid-template-columns: 1fr 1.618fr; gap: var(--gap-xl); } .services-container #services .services-interactive-img { height: 80vh; display: flex; flex-flow: column nowrap; gap: var(--gap-xl); position: sticky; top: 10dvh; } .services-container #services .services-img-container { position: relative; width: 100%; flex: 1 0; border-radius: var(--border-radius); overflow: hidden; } .services-container #services .services-img-container img { position: absolute; object-fit: cover; object-position: center center; width: 100%; height: 100%; } .services-container #services .services-faq { display: grid; height: fit-content; gap: var(--gap-xl); } .services-container #services .faq { box-sizing: border-box; padding: 0 2%; transition: height 0.4s ease; } .services-container #services .faq-title { --gap-faq: 18px; font-family: Garamond-Variable, serif; font-size: 2rem; display: flex; justify-content: space-between; align-items: center; gap: var(--gap-faq); transition: transform 0.3s cubic-bezier(0.19, 1, 0.22, 1); } .services-container #services .faq-title > div { display: flex; align-items: center; gap: var(--gap-faq); } .services-container #services .faq-title > div span { display: inline-block; } .services-container #services .faq-title > div span:first-child { font-size: clamp(2rem, 1.885rem + 0.513vw, 2.5rem); } .services-container #services .faq-title > div span:nth-child(2) { font-size: clamp(0.6rem, 0.531rem + 0.308vw, 0.9rem); } .services-container #services .faq-title > div span:last-child { font-size: clamp(1.4rem, 1.354rem + 0.205vw, 1.6rem); -webkit-hyphens: none; hyphens: none; } .services-container #services .faq-title:hover { cursor: pointer; transform: scale(0.98); } .services-container #services .faq-title:hover img { transform: rotate(-45deg) scale(0.9); } .services-container #services .faq-title img { width: clamp(28px, 25px + 0.513vw, 36px); aspect-ratio: 1/1; object-fit: contain; object-position: center center; transition: transform 0.3s cubic-bezier(0.79, 0.14, 0.15, 0.86); } .services-container #services .faq-content { overflow: hidden; transition: padding 0.6s ease, height 0.3s ease; } .services-container #services .faq-content p { opacity: 0; transition: opacity 0.4s ease, height 0.6s ease; padding: 0 12px; pointer-events: none; } .services-container #services .open-faq .faq-content { padding: 20px 0; } .services-container #services .open-faq .faq-content p { opacity: 1; } .services-container #services .open-faq .faq-title { cursor: pointer; transform: scale(0.98); padding: 0; } .services-container #services .open-faq .faq-title img { transform: rotate(-90deg) scale(0.9); } @container services-container (width < 860px) { .services-container #services { grid-template-columns: 1fr; } .services-container #services .services-interactive-img { position: static; height: fit-content; } .services-container #services .services-interactive-img h3 { margin: 0; } .services-container #services .services-interactive-img .services-img-container { aspect-ratio: 16/9; } .services-container #services .margin-h3-clara { height: 0 !important; } } .services-container img { transition: opacity 0.6s ease; } .services-img-container img:nth-child(n + 2) { opacity: 0; } .services-interactive-img:has(+ .services-faq .open-faq:where(#faq1)) .services-img-container img:nth-child(2) { opacity: 1; } .services-interactive-img:has(+ .services-faq .open-faq:where(#faq2)) .services-img-container img:nth-child(3) { opacity: 1; } .services-interactive-img:has(+ .services-faq .open-faq:where(#faq3)) .services-img-container img:nth-child(4) { opacity: 1; } .services-interactive-img:has(+ .services-faq .open-faq:where(#faq4)) .services-img-container img:nth-child(5) { opacity: 1; } .services-interactive-img:has(+ .services-faq .faq:where(#faq1):hover) .services-img-container img:nth-child(2) { opacity: 1; z-index: 99; } .services-interactive-img:has(+ .services-faq .faq:where(#faq2):hover) .services-img-container img:nth-child(3) { opacity: 1; z-index: 99; } .services-interactive-img:has(+ .services-faq .faq:where(#faq3):hover) .services-img-container img:nth-child(4) { opacity: 1; z-index: 99; } .services-interactive-img:has(+ .services-faq .faq:where(#faq4):hover) .services-img-container img:nth-child(5) { opacity: 1; z-index: 99; } .latest-posts-container { container: latest-post-container / inline-size; } .latest-posts-container #latest-posts .latest-3-posts { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: var(--gap-xl); } .latest-posts-container #latest-posts .latest-3-posts > div { display: flex; flex-flow: column nowrap; --background-latest-posts: rgb(57 196 182 / 0.04); aspect-ratio: 498 / 583; background-color: var(--background-latest-posts); border-radius: var(--border-radius); overflow: hidden; } .latest-posts-container #latest-posts .latest-3-posts > div > .latest-post-img { width: 100%; aspect-ratio: 498 / 224; overflow: hidden; } .latest-posts-container #latest-posts .latest-3-posts > div > .latest-post-img img { width: 100%; height: 100%; object-fit: cover; object-position: center center; transition: scale 0.3s ease-out; } .latest-posts-container #latest-posts .latest-3-posts > div > .latest-post-img:hover img { scale: 1.05; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content { flex: 1; position: relative; box-sizing: border-box; padding: 20px; display: flex; flex-flow: column nowrap; justify-content: space-between; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content > img { position: absolute; bottom: 0; right: 0; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content > h4, .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content > p, .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content > a { box-sizing: border-box; padding: 0 16px; position: relative; z-index: 2; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content h4 { font-size: clamp(1.1rem, 1.008rem + 0.41vw, 1.5rem); text-align: center; font-weight: 400; font-family: Garamond-Variable, serif; line-height: 110%; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content .latest-post-button { --latest-post-button-background-color: rgb(57 196 182 / 0.4); --latest-post-button-background-color-hover: rgb(57 196 182 / 0.2); width: 100%; display: flex; justify-content: center; align-items: center; gap: 10px; transition: gap 0.3s ease; box-sizing: border-box; padding: 8px; -webkit-backdrop-filter: blur(1px); backdrop-filter: blur(1px); transition: backdrop-filter 0.3s ease, background-color 0.3s ease; background-color: var(--latest-post-button-background-color); border-radius: var(--border-radius); } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content .latest-post-button:hover { background-color: var(--latest-post-button-background-color-hover); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content .latest-post-button:hover span { font-weight: 500; margin-right: 4px; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content .latest-post-button:hover img { scale: 1.03; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content .latest-post-button span { transition: font-weight 0.3s ease, margin-right 0.3s ease; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content .latest-post-button img { transition: scale 0.3s ease; opacity: 0.9; } .latest-posts-container #latest-posts .latest-3-posts > div .category-latest-post { width: 100%; display: flex; justify-content: space-between; box-sizing: border-box; } .latest-posts-container #latest-posts .latest-3-posts > div .category-latest-post svg { height: fit-content; width: fit-content; transition: scale 0.3s ease; } .latest-posts-container #latest-posts .latest-3-posts > div .category-latest-post svg path { transition: fill-opacity 0.3s ease; } .latest-posts-container #latest-posts .latest-3-posts > div .category-latest-post span { font-family: Melodrama-Variable, serif; text-transform: uppercase; transition: font-weight 0.3s ease; } .latest-posts-container #latest-posts .latest-3-posts > div .category-latest-post:hover span { font-weight: 600; } .latest-posts-container #latest-posts .latest-3-posts > div .category-latest-post:hover svg { scale: 1.05; } .latest-posts-container #latest-posts .latest-3-posts > div .category-latest-post:hover svg path { fill-opacity: 0.8; } @container latest-post-container (width < 1200px) { .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content h4 { -webkit-line-clamp: 4; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content p { display: none; } } @container latest-post-container (width < 1164px) { .latest-posts-container #latest-posts .latest-3-posts { grid-template-columns: 1fr 1fr; } .latest-posts-container #latest-posts .latest-3-posts > div:first-child { grid-column: 1 / -1; flex-flow: row nowrap; aspect-ratio: unset; } .latest-posts-container #latest-posts .latest-3-posts > div:first-child { aspect-ratio: 1 / 0.4; display: grid; grid-template-columns: 1.618fr 1fr; } .latest-posts-container #latest-posts .latest-3-posts > div:first-child > a { aspect-ratio: unset; } .latest-posts-container #latest-posts .latest-3-posts > div:not(:first-child) { aspect-ratio: 583 / 540; } .latest-posts-container #latest-posts .latest-3-posts > div:not(:first-child) img { aspect-ratio: 224 / 498; } .latest-posts-container #latest-posts .latest-3-posts > div:not(:first-child) > div { min-height: 250px; } .latest-posts-container #latest-posts .latest-3-posts > div:not(:first-child) h4 { -webkit-line-clamp: 3; } .latest-posts-container #latest-posts .latest-3-posts > div:not(:first-child) .latest-post-content .latest-post-button { padding: 0; } } @container latest-post-container (width < 870px) { .latest-posts-container #latest-posts .latest-3-posts { grid-template-columns: 1fr; } .latest-posts-container #latest-posts .latest-3-posts > div:first-child { grid-column: 1 / -1; flex-flow: row nowrap; aspect-ratio: unset; } .latest-posts-container #latest-posts .latest-3-posts > div { display: flex !important; flex-flow: column nowrap !important; aspect-ratio: unset !important; } .latest-posts-container #latest-posts .latest-3-posts > div > a { aspect-ratio: 498 / 224 !important; } .latest-posts-container #latest-posts .latest-3-posts > div img { aspect-ratio: 224 / 498; } .latest-posts-container #latest-posts .latest-3-posts > div > div { min-height: 300px !important; } .latest-posts-container #latest-posts .latest-3-posts > div h4 { -webkit-line-clamp: 3 !important; font-size: clamp(1.3rem, 1.254rem + 0.205vw, 1.5rem) !important; } .latest-posts-container #latest-posts .latest-3-posts > div .latest-post-content .latest-post-button { padding: 0; } } .contact-container { container: contact-container / inline-size; } .contact-container #contact { display: grid; grid-template-columns: 1fr 1.618fr; gap: var(--gap-xl); } .contact-container #contact > div:first-child { display: flex; flex-flow: column nowrap; gap: var(--gap-xl); } .contact-container #contact > div:first-child > div { position: relative; } .contact-container #contact > div:first-child > div:before { content: ""; position: absolute; height: 145%; aspect-ratio: 1/1; top: -10%; left: -8%; background-size: contain; background-image: url(../svg/phone.svg); opacity: 0.1; } .contact-container #contact > div:first-child p { margin-top: var(--gap-xs); font-size: clamp(1.2rem, 1.154rem + 0.205vw, 1.4rem); opacity: 0.7; line-height: 110%; } .contact-container #contact > div:first-child img { width: 100%; aspect-ratio: 1/1.2; object-fit: cover; object-position: center center; border-radius: var(--border-radius); } .contact-container #contact > div:last-child { --padding-contact-form: 2.5vw; --contact-form-background-color: #d3e3d257; --contact-border-color: #25333457; background-color: var(--contact-form-background-color); padding: 60px var(--padding-contact-form); box-sizing: border-box; border-radius: var(--border-radius); } .contact-container #contact > div:last-child form { min-height: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: var(--padding-contact-form); } .contact-container #contact > div:last-child form div { display: flex; flex-flow: column nowrap; grid-column: 1 / -1; } .contact-container #contact > div:last-child form div:nth-child(2) { grid-column: 2 / -1; } .contact-container #contact > div:last-child form div:first-child { grid-column: 1 / 2; } .contact-container #contact > div:last-child form div:last-child { flex-flow: row nowrap; justify-content: space-between; gap: var(--padding-contact-form); align-items: end; } .contact-container #contact > div:last-child input, .contact-container #contact > div:last-child textarea { background-color: transparent; border: none; box-sizing: border-box; padding: 12px 0; border-bottom: 1px solid var(--contact-border-color); color: var(--font-color); resize: vertical; transition: padding 0.3s ease; } .contact-container #contact > div:last-child p { color: var(--contact-border-color); } .contact-container #contact > div:last-child p a { text-decoration: underline; transition: font-weight 0.3s ease, color 0.3s ease; } .contact-container #contact > div:last-child p a:hover { font-weight: 430; color: var(--font-color); } .contact-container #contact > div:last-child textarea { min-height: 160px; transition: min-height 0.3s ease, padding 0.3s ease; } .contact-container #contact > div:last-child textarea:focus { min-height: 250px; } .contact-container #contact > div:last-child label { font-weight: 500; } .contact-container #contact > div:last-child input:focus, .contact-container #contact > div:last-child textarea:focus { border-bottom: 1px solid var(--font-color); outline: none; padding: 12px 4px; } .contact-container #contact > div:last-child button { position: relative; padding: 12px 48px; box-sizing: border-box; height: fit-content; background-color: transparent; border: none; color: var(--font-color); display: block; overflow: hidden; font-weight: 450; border-radius: var(--border-radius); } .contact-container #contact > div:last-child button:hover { cursor: pointer; } .contact-container #contact > div:last-child button:hover:before { transform: translate(50%); } .contact-container #contact > div:last-child button:before { transition: transform 0.3s ease; content: ""; display: block; width: 200%; background: linear-gradient(90deg, #01b0ae, #53cbc7 47%, #72ddd5); height: 100%; top: 0; right: 0%; position: absolute; z-index: -1; } @container contact-container (width < 950px) { .contact-container #contact { grid-template-columns: 1fr; } .contact-container #contact div:first-child img { display: none; } .contact-container #contact div:first-child > div:before { left: -3%; } } @container contact-container (width < 590px) { .contact-container #contact:last-child form { grid-template-columns: 1fr; gap: 20px !important; } .contact-container #contact:last-child form > div { grid-column: 1 / -1 !important; } .contact-container #contact:last-child form div:last-child { flex-flow: column nowrap !important; } .contact-container #contact:last-child form div:last-child p { align-self: flex-start !important; } } .full-wrapper:has(#footer), .full-wrapper:has(#page-intro) { box-sizing: border-box; background: linear-gradient(333deg, #1f7a7166, #39c4b666); -webkit-backdrop-filter: opacity(0.5); backdrop-filter: opacity(0.5); clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 0); } .wrapper:has(#footer) { max-width: calc(1380px + var(--body-padding) * 2); } .footer-container { container: footer-container / inline-size; --h3-font-color-dark: #034446; --small-font-size-footer: clamp(0.8rem, 0.777rem + 0.103vw, 0.9rem); } .footer-container #footer { padding: calc(var(--section-y-padding) * 0.7) 5vw; display: grid; grid-template-columns: 1fr minmax(0, auto); gap: 0 50px; } .footer-container #footer div:nth-child(1) { display: flex; flex-flow: row nowrap; justify-content: center; align-items: center; align-self: flex-start; gap: var(--gap-xs); } .footer-container #footer div:nth-child(1) h3 { color: var(--h3-font-color-dark); margin-right: auto; font-size: clamp(1.5rem, 1.246rem + 1.128vw, 2.6rem); } .footer-container #footer div:nth-child(1) img { height: clamp(5.625rem, 4.327rem + 5.769vw, 11.25rem); aspect-ratio: 1/1; } .footer-container #footer div:nth-child(2) { align-items: center; justify-content: end; display: flex; flex-flow: row wrap; gap: 4vw; color: var(--h3-font-color-dark); line-height: 100%; } .footer-container #footer div:nth-child(2) ul { display: flex; flex-flow: column nowrap; gap: 5px; } .footer-container #footer div:nth-child(2) h4 { margin-bottom: 9px; } .footer-container #footer div:nth-child(2) a { font-size: var(--small-font-size-footer); display: block; opacity: 0.8; } .footer-container #footer div:nth-child(2) a:hover { text-decoration: underline; } .footer-container #footer div:nth-child(3) { min-height: 200px; display: flex; flex-flow: row nowrap; box-sizing: border-box; align-items: end; gap: 50px 20px; } .footer-container #footer div:nth-child(3) a { box-sizing: border-box; display: flex; justify-content: center; align-items: center; padding: 5px; border-radius: 12px; } .footer-container #footer div:nth-child(3) a svg { transition: scale 0.2s ease; scale: 0.93; } .footer-container #footer div:nth-child(3) a svg:hover { scale: 0.96; } .footer-container #footer div:nth-child(3) a svg path { fill: var(--h3-font-color-dark); fill-opacity: 0.8; } .footer-container #footer div:nth-child(3) > div { margin-top: auto; align-items: end; } .footer-container #footer div:nth-child(3) > div a { padding: 0; } .footer-container #footer div:nth-child(3) .copyright { padding: 0; display: block; box-sizing: border-box; opacity: 0.8; color: var(--h3-font-color-dark); font-size: var(--small-font-size-footer); } .footer-container #footer div:nth-child(4) { width: fit-content; margin-left: auto; margin-top: auto; display: flex; align-items: end; justify-content: end; color: var(--h3-font-color-dark); font-size: var(--small-font-size-footer); opacity: 0.8; text-decoration: underline; } .footer-container #footer div:nth-child(4) svg { width: 18px; height: 18px; aspect-ratio: 1/1; margin-bottom: 3px; } .footer-container #footer div:nth-child(4) svg path { fill: var(--h3-font-color-dark); } .footer-container #footer div:nth-child(4):hover { cursor: pointer; } @container footer-container (width<790px) { .footer-container #footer { grid-template-columns: 1fr; gap: 25px; padding-bottom: calc(var(--section-y-padding) * 0.3); } .footer-container #footer div:first-child h3 { width: fit-content; } .footer-container #footer div:nth-child(2) { justify-content: start; padding-left: 1.5vw; box-sizing: border-box; justify-content: space-around; margin-top: 25px; margin-bottom: 25px; } .footer-container #footer div:nth-child(3) { min-height: 0px; align-items: center; flex-flow: row wrap; margin-top: 50px; } .footer-container #footer div:nth-child(4) { width: 100%; align-items: start; min-height: 0px; align-items: end; justify-content: start; margin-top: 25px; } } .page-intro-container #page-intro { min-height: 400px; padding-top: calc(var(--section-y-padding) * 0.6); padding-bottom: calc(var(--section-y-padding) * 0.25); } .page-intro-container #page-intro > div:first-child { position: relative; } .page-intro-container #page-intro > div:first-child h1 { margin: 80px 0 0; text-align: left; } .page-intro-container #page-intro > div:first-child svg { top: -25%; right: -10%; width: 50%; height: 150%; position: absolute; opacity: 0.5; } .page-intro-container #page-intro > div:last-child { --active-color: rgb(26, 32, 34); --active-color-2: rgba(83, 203, 199, 0.85); margin-top: 50px; display: flex; flex-flow: row wrap; gap: var(--gap-xs); transition: transform 0.1s ease-out; background-color: var(--font-color); border-radius: var(--border-radius); box-sizing: border-box; padding: 8px 20px; } .page-intro-container #page-intro > div:last-child a { display: flex; gap: 6px; align-items: center; border-radius: 8px; box-sizing: border-box; padding: 6px 9px; opacity: 0.9; font-size: clamp(0.8rem, 0.777rem + 0.103vw, 0.9rem); transition: background-color 0.3s ease, color 0.3s ease; color: var(--gradient-color-2); } .page-intro-container #page-intro > div:last-child a svg * { fill: var(--gradient-color-2); } .page-intro-container #page-intro > div:last-child a svg *:where(.stroke) { fill: none; stroke: var(--gradient-color-2); } .page-intro-container #page-intro > div:last-child a:hover { background-color: var(--active-color); color: var(--active-color-2); } .page-intro-container #page-intro > div:last-child a:hover svg * { fill: var(--active-color-2); } .page-intro-container #page-intro > div:last-child a:hover svg *:where(.stroke) { fill: none; stroke: var(--active-color-2); } .page-intro-container #page-intro > div:last-child .active { background-color: var(--active-color); color: var(--active-color-2); } .page-intro-container #page-intro > div:last-child .active svg * { fill: var(--active-color-2); } .page-intro-container #page-intro > div:last-child .active svg *:where(.stroke) { fill: none; stroke: var(--active-color-2); } @property --yepee { syntax: ""; inherits: false; initial-value: 60deg; } .wrapper:has(.list-posts-container) { max-width: calc(1336px + var(--body-padding) * 2); } .list-posts-container #list-posts { display: grid; grid-template-columns: 3fr 1fr; gap: 8.5vw; } .list-posts-container #list-posts > div:first-child { display: grid; gap: 3.5vh; } .list-posts-container #list-posts > div:first-child article { --font-color-hover: #253334b0; display: grid; grid-template-columns: 1fr 1fr; width: 100%; aspect-ratio: 1/0.4; gap: max(1.8vw, var(--gap-md)); } .list-posts-container #list-posts > div:first-child article > a { width: 100%; aspect-ratio: 12/9; border-radius: var(--border-radius); overflow: hidden; transition: scale 0.2s ease-out, border-radius 0.2s ease; } .list-posts-container #list-posts > div:first-child article > a img { width: 100%; height: 100%; object-fit: cover; object-position: center center; transition: scale 0.35s ease; } .list-posts-container #list-posts > div:first-child article > a:hover { scale: 0.96; border-radius: calc(var(--border-radius) * 1.15); } .list-posts-container #list-posts > div:first-child article > a:hover img { scale: 1.1; } .list-posts-container #list-posts > div:first-child article > div { width: 100%; box-sizing: border-box; } .list-posts-container #list-posts > div:first-child article > div > a { display: block; } .list-posts-container #list-posts > div:first-child article > div .category { display: flex; gap: 0.4px; align-self: center; width: fit-content; font-size: 0.67rem; box-sizing: border-box; padding: 1px 6px; border: 1px solid var(--font-color); border-radius: 16px; opacity: 0.65; transition: filter 0.3s ease; } .list-posts-container #list-posts > div:first-child article > div .category:hover { filter: brightness(160%); } .list-posts-container #list-posts > div:first-child article > div > a:nth-child(2) { display: block; margin-top: 3vh; } .list-posts-container #list-posts > div:first-child article > div > a:nth-child(2) h4 { font-size: 1.2rem; line-height: 120%; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; transition: color 0.1s ease; } .list-posts-container #list-posts > div:first-child article > div > a:nth-child(2) h4:hover { color: var(--font-color-hover); } .list-posts-container #list-posts > div:first-child article > div .meta { --font-color-lighter: #2533348c; color: var(--font-color); color: var(--font-color-lighter); font-size: 0.8rem; margin-top: 1.1vh; margin-bottom: 2.1vh; } .list-posts-container #list-posts > div:first-child article > div .meta a { color: var(--font-color); transition: color 0.1s ease; } .list-posts-container #list-posts > div:first-child article > div .meta a:hover { color: var(--font-color-hover); } .list-posts-container div:last-child { position: sticky; top: 10dvh; } .list-posts-container div:last-child form { display: flex; flex-flow: row nowrap; background-color: var(--font-color); box-sizing: border-box; align-items: center; border-radius: 5px; padding: 10px 20px; opacity: 0.7; transition: opacity 0.3s ease; } .list-posts-container div:last-child form:focus-within { opacity: 1; } .list-posts-container div:last-child form input { flex: 1 1 60px; background-color: transparent; border: none; box-sizing: border-box; padding-left: 4px; border-bottom: 1px solid var(--font-color); color: var(--gradient-color-2); font-size: 0.95rem; font-weight: 380; } .list-posts-container div:last-child form input:focus { outline: none; } .list-posts-container div:last-child form button { background-color: transparent; border: none; display: flex; justify-content: center; align-items: center; min-width: 32px; } .list-posts-container div:last-child form button:hover { cursor: pointer; } .list-posts-container div:last-child form button:hover svg * { stroke: var(--gradient-color-1); } .list-posts-container div:last-child form button svg * { transition: stroke 0.3s ease; stroke: var(--gradient-color-2); } .list-posts-container .sidebar-posts { margin-top: 30px; } .list-posts-container .sidebar-posts h4 { font-weight: 430; font-size: clamp(1.8rem, 1.754rem + 0.205vw, 2rem); } .list-posts-container .sidebar-posts > a { transition: --yepee 0.8s ease, opacity 0.5s ease; margin-top: 20px; width: 100%; box-sizing: border-box; aspect-ratio: 1/1; background: linear-gradient( var(--yepee), rgb(1 176 174 / 0.15), rgb(1 176 174 / 0.3), rgb(1 176 174 / 0.6) ); background-size: contain; background-repeat: no-repeat; border-radius: var(--border-radius); display: flex; flex-flow: column nowrap; justify-content: space-between; align-items: start; padding: 10%; position: relative; } .list-posts-container .sidebar-posts > a > img { transition: opacity 0.3s ease; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; position: absolute; object-fit: cover; object-position: center center; z-index: -1; opacity: 0.1; } .list-posts-container .sidebar-posts > a:hover:before { rotate: 16deg; } .list-posts-container .sidebar-posts > a:hover { opacity: 0.9; --yepee: 160deg; } .list-posts-container .sidebar-posts > a:hover img { opacity: 0.23; } .list-posts-container .sidebar-posts > a:hover > div > div { rotate: 45deg; } .list-posts-container .sidebar-posts > a p { font-size: clamp(1.2rem, 1.165rem + 0.154vw, 1.35rem); line-height: 120%; box-sizing: border-box; padding-right: 13%; -webkit-hyphens: none; hyphens: none; } .list-posts-container .sidebar-posts > a > div { display: flex; width: 100%; flex-flow: row nowrap; justify-content: space-between; align-items: center; } .list-posts-container .sidebar-posts > a > div span { font-size: clamp(0.9rem, 0.888rem + 0.051vw, 0.95rem); font-weight: 380; } .list-posts-container .sidebar-posts > a > div > div { opacity: 0.8; box-sizing: border-box; padding: 12px; display: grid; place-items: center; border-radius: 100%; background-color: var(--font-color); transition: rotate 0.3s ease; } .list-posts-container .sidebar-posts > a > div > div svg path { fill: var(--gradient-color-1); } .list-posts-container .sidebar-posts a:where(.new-post):before { transition: rotate 0.3s ease; position: absolute; content: "Nuevo"; display: block; box-sizing: border-box; background-image: url(../svg/new.svg); background-size: contain; background-repeat: no-repeat; background-position: center center; color: var(--gradient-color-1); right: 16px; top: 16px; display: flex; justify-content: end; align-items: center; font-size: 0.75rem; aspect-ratio: 1/1; padding: 0.83rem; rotate: -7deg; line-height: 100%; opacity: 0.8; font-weight: 450; } @container list-posts-container (width < 1000px) { .list-posts-container #list-posts { grid-template-columns: 1fr; max-width: 800px; margin: 0 auto; } .list-posts-container #list-posts > div:last-child { max-width: 550px; margin: 0 auto; } } @container list-posts-container (width < 600px) { .list-posts-container #list-posts > div:first-child article { grid-template-columns: 1fr; grid-template-rows: 350px 1fr; } .list-posts-container #list-posts > div:first-child article > a { aspect-ratio: unset; } } .page-intro-container #page-intro:where(.single-intro) { padding-top: calc(var(--section-y-padding) * 0.8); padding-bottom: 0; } .page-intro-container #page-intro:where(.single-intro) div:first-child h1 { --h2-font-size: clamp(2.35rem, 1.992rem + 1.59vw, 3.9rem); --h2-line-height: 110%; font-family: Melodrama-Variable, serif; line-height: var(--h2-line-height); font-size: var(--h2-font-size); -webkit-hyphens: none; hyphens: none; } .page-intro-container #page-intro:where(.single-intro) div:first-child h1:before { content: unset; } .page-intro-container #page-intro:where(.single-intro) div:first-child > svg { opacity: 0.15; z-index: -1; } .page-intro-container #page-intro:where(.single-intro) > div:last-child { transition: unset; background-color: transparent; padding: 0; margin-top: 30px; display: flex; flex-flow: row wrap; font-size: 0.9rem; justify-content: space-evenly; gap: 50px 10px; } .page-intro-container #page-intro:where(.single-intro) > div:last-child > p { width: 100%; opacity: 0.65; margin-bottom: 40px; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div { display: flex; flex-flow: column nowrap; gap: 4px; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span { font-size: 0.8rem; display: block; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span a { display: flex; padding: 0; font-size: 0.8rem; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span a p { color: var(--font-color); opacity: 1; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span a svg path { transition: fill 0.3s ease, fill-opacity 0.3s ease; fill: var(--font-color); fill-opacity: 0.8; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span a:hover { color: var(--font-color); background-color: transparent; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span a:hover svg path { fill: var(--font-color); fill-opacity: 1; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span:first-child { opacity: 0.65; } .page-intro-container #page-intro:where(.single-intro) > div:last-child div span:last-child { font-weight: 450; } .full-wrapper:has(#page-intro:where(.single-intro)) { background: unset; clip-path: unset; } .wrapper:has(section:where(.single-content)) { max-width: calc(1536px + var(--body-padding) * 2) !important; } .list-posts-container { container: list-posts-container / inline-size; } .list-posts-container #list-posts { transform: scaleX(-1); } .list-posts-container #list-posts > div:first-child { transform: scaleX(-1); } .list-posts-container #list-posts > div:last-child { transform: scaleX(-1); } @media screen and (max-width: 887px) { nav ul { display: none; } nav .collapsable-menu { gap: 1.2rem; position: fixed; height: calc(100dvh - 115.8px); width: 100%; top: 115.8px; left: 0; display: flex; flex-flow: column nowrap; justify-content: center; align-items: start; pointer-events: none; transition: opacity 2s cubic-bezier(0, 0, 0, 0.91); } nav .collapsable-menu > span { display: none; } nav .collapsable-menu ul { flex-flow: column nowrap; transition: all 0.2s ease; width: 100%; align-items: start; } nav .collapsable-menu ul li a { font-weight: 300; color: var(--gradient-color-3); text-transform: uppercase; letter-spacing: 2px; font-size: clamp(2.3rem, 2.138rem + 0.718vw, 3rem); } nav .collapsable-menu ul { margin-left: 10%; box-sizing: border-box; } nav .collapsable-menu ul li a:where(.button) { font-family: Amulya-Variable; color: var(--button-font-color); font-weight: 450; margin-top: 2rem; font-size: clamp(2rem, 1.885rem + 0.513vw, 2.5rem); } nav .collapsable-menu ul li a:where(.button):before { background: linear-gradient( 90deg, var(--gradient-color-1), var(--gradient-color-3) ); opacity: 0.8; } nav .collapsable-menu ul a:where(:not(.button)) { background: linear-gradient( to right, var(--gradient-color-3), var(--gradient-color-2) ); background-size: 0 0.05em; background-position: 0 100%; background-repeat: no-repeat; } nav .collapsable-menu ul a:where(:not(.button)):hover { font-weight: 450; background-size: 60% 0.05em; } nav .burger { --burger-gap: 0.25rem; display: block; width: 24px; aspect-ratio: 1/1; display: grid; grid-template-columns: 1fr 1fr; gap: var(--burger-gap); } nav .burger div { pointer-events: none; transition: transform 0.4s ease, background-color 0.6s ease; background-color: var(--font-color); aspect-ratio: 1/1; border-radius: var(--border-radius); } nav .burger div:last-child { grid-column-start: 2; } nav .burger:hover { cursor: pointer; } nav .clicked-burger div { background-color: var(--gradient-color-3); } nav .clicked-burger div:nth-child(1) { transform: translate(calc(100% + var(--burger-gap))); } nav .clicked-burger div:nth-child(2) { transform: translateY(calc(100% + var(--burger-gap))); } nav .clicked-burger div:nth-child(3) { transform: translate(calc(-1 * (100% + var(--burger-gap)))); } }