.contact-me { margin: 15em auto; margin-top: 15em; margin-bottom: 3em; position: relative; aspect-ratio: 16 / 9; background: var(--c-background-light); max-width: 100vw; border: 2px solid var(--c-lines); border-radius: 0.75em; width: 30em; } /* .mail-box sibling styles were unused; removed to satisfy linter */ .contact-me .opening { width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2; transform-origin: top; padding-top: 4em; clip-path: polygon(0 0, 100% 0, 50% 50%); background: linear-gradient(135deg, var(--c-boxes), var(--c-other)); transition: transform 1s ease, background 0.5s ease; text-align: center; color: var(--c-text); } .rotate-opening{ background: linear-gradient(135deg, var(--c-background-light), var(--c-boxes)); transform: rotateX(180deg); } .opening svg{ margin: auto; font-size: 3em; margin-top: -0.5em; } .contact-me .content { position: relative; height: 100%; width: 100%; z-index: 1; transition: all 1s ease-out; } .content-moveup{ transform: translateY(-70%); } .content-moveup-index { z-index: 2 !important; } .contact-me .content form{ width: 90%; display: flex; gap: 1em; flex-direction: column; align-items: stretch; justify-content: center; margin: auto; background: color-mix(in hsl, var(--c-background-light), transparent 35%); backdrop-filter: blur(6px); padding: 1.5em; border: 0.35em dashed var(--c-lines); border-radius: 0.75em; color: var(--c-text); } .contact-me .content form div{ width: -webkit-fill-available; display: flex; flex-direction: column; } .contact-me .content form input[type=submit]{ margin: auto; border: none; background: linear-gradient(135deg, var(--c-other), var(--c-boxes)); color: var(--c-text); padding: 0.85em 1.5em; cursor: pointer; border-radius: 0.75em; font-weight: 600; box-shadow: 0 0 12px -3px rgba(112,162,136,0.5); transition: transform 0.2s ease, box-shadow 0.3s ease; } .contact-me .content form input[type=submit]:hover { transform: translateY(-2px); box-shadow: 0 0 20px -2px rgba(112,162,136,0.65); } .contact-me .content form input[type=text], .contact-me .content form input[type=email], .contact-me .content form textarea{ background: var(--c-background-light); border: 1px solid var(--c-lines); padding: 0.6em 0.75em; border-radius: 0.5em; color: var(--c-text); } .contact-me .content form input[type=text]::placeholder, .contact-me .content form input[type=email]::placeholder, .contact-me .content form textarea::placeholder{ color: color-mix(in srgb, var(--c-lines), white 25%); } .opening-behind { z-index: 0 !important; } .contact-me .cover { border-radius: 1em; position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; z-index: 2; clip-path: polygon(0 0, 50% 50%, 100% 0, 100% 100%, 0 100%); background: var(--c-background); } .contact-me .triangle{ border-radius: 1em; position: absolute; bottom: 0; right: 0; z-index: 3; width: 100%; height: 100%; clip-path: polygon(100% 0, 0 100%, 100% 100%); background: linear-gradient(135deg, var(--c-boxes), var(--c-background-light)); } @keyframes shake { 0% { transform: translateX(0); } 25% { transform: translateX(-2px) rotate(-8deg); } 50% { transform: translateX(2px) rotate(4deg); } 75% { transform: translateX(-1px) rotate(-2deg); } 100% { transform: translateX(0); } } .contact-me .opening i { color: #797979; font-size: 5em; display: inline-block; animation: 0.4s ease-in-out 2s infinite normal none running shake; animation-delay: 2s; animation-iteration-count: infinite; } @media only screen and (max-width: 990px){ .contact-me{ aspect-ratio: unset; margin-top: 3ch; background: transparent; border: none; } .contact-me .opening, .contact-me .cover, .contact-me .triangle { display: none; } .contact-me .content { position: relative; width: 100%; transform: none !important; } .contact-me .content form { backdrop-filter: none; border: 1px solid var(--c-lines); } }