.btn { background-image: linear-gradient(to right, var(--primary), var(--primary-container)); padding: 1rem 2rem; font-size: 1rem; border-radius: 100rem; text-decoration: none; color: var(--on-background); transition-duration: 0.2s; &:hover { transform: scale(1.1); } } .btn-green { padding: 0.5rem 1.5rem; text-decoration: none; background-color: var(--secondary-container); border-radius: var(--border-radius); color: var(--on-secondary-container); transition-duration: 0.2s; &[href]:not(:hover) { background-color: var(--surface-container-highest); color: var(--on-background); } } .card { width: 100%; display: flex; flex-direction: column; position: relative; border-radius: var(--border-radius); overflow: hidden; background-color: white; .greener { background-color: rgb(from var(--secondary-container) r g b / 0.3); } & img { display: block; width: 100%; scale: 1; transition: scale 0.7s; } & > div:first-child { overflow: hidden; } & > div:last-child { display: grid; grid-template-rows: auto auto 1fr; padding: 2rem; flex-grow: 1; & > a { display: flex; align-self: end; align-items: center; justify-content: flex-start; gap: 1rem; color: var(--primary); font-weight: bold; text-decoration: none; } } top: 0; transition: top 0.2s; &:hover { top: -10px; & img { scale: 1.1; } & svg { margin-left: 10px; } } & svg { transition-duration: 0.2s; height: 2em; width: 2em; } } .subnav { justify-content: center; align-items: center; display: flex; flex-direction: column; /* we don't want any gap between this element and the main contents of the site */ padding-bottom: 0; & + * { padding-top: 0; } & > p { margin: 0; } & > * { text-align: center; max-width: 40rem; } & > nav { display: flex; align-items: center; gap: 1rem; justify-content: center; padding: 3rem; } } .card-low { background-color: var(--surface-container-low); border: 1px solid var(--surface-container-highest); border-radius: var(--border-radius); padding: 2rem; & > h3 { padding-bottom: 1rem; } & > span { color: var(--primary); font-weight: bold; font-size: 1.25rem; } } .offer-card { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto 1fr; gap: 1rem; & > svg { padding: 1rem; color: var(--icon-color); background-color: rgb(from var(--icon-color) r g b / 10%); border-radius: var(--border-radius); overflow: visible; } & > h3 { align-self: center; } & > :last-child { grid-column: 1 / -1; } }