header div:first-child,
header .active,
header nav ul li:hover,
header nav ul > li ul li:hover,
.hero :nth-child(3) a,
.cards :nth-child(3),
.cards :nth-child(4),
.columns aside:last-child h2,
td:nth-child(3) {
    background-color: #ffa500;
}

li:has(ul),
header nav:nth-of-type(2) ul,
aside:last-of-type li,
main ul:last-of-type li {
    position: relative;
}
li:has(ul)::after,
header nav:nth-of-type(2) li::before,
aside:last-of-type li::before,
main ul:last-of-type li::before {
    content: "";
    border-radius: 100%;
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
}
li:has(ul ul)::after,
ul ul li:has(ul)::after {
    top: 50%;
    transform: translateY(-50%);
    right: 1rem;
}
li:has(ul ul)::after {
    background: url(assets/arrow-down.svg);
    background-color: hsla(0, 0%, 0%, 0.3);
}
ul ul li:has(ul)::after {
    background: url(assets/arrow-down.svg);
    background-color: hsla(0, 0%, 0%, 0.3);
    transform: translateY(-50%) rotate(270deg);
}

header nav:nth-of-type(2) li {
    padding-left: 3rem;
}
header nav:nth-of-type(2) li::before {
    top: 50%;
    transform: translateY(-50%);
    left: 1rem;
}
header nav:nth-of-type(2) li:first-child::before {
    background: url(assets/github.svg);
    background-size: contain;
}
header nav:nth-of-type(2) li:last-child::before {
    background: url(assets/codepen.svg);
}

aside:last-of-type li::before,
main ul:last-of-type li::before {
    top: 50%;
    transform: translateY(-50%);
    left: .5rem;
}
aside:last-of-type ul:first-of-type li::before {
    background: url(assets/internet-globe.svg);
}
aside:last-of-type ul:last-of-type li::before {
    background: url(assets/youtube.svg);
}
main ul:last-of-type li::before {
    background: url(assets/word.svg);
}

.hero :nth-child(3) a {
    color: #333;
}

.card:after {
    content: attr(data-challenge);
    font-weight: bold;
}

main h2:nth-of-type(2),
main h2:nth-of-type(2) + p {
    background-color: #ffa500;
    margin: 0;
}
main h2:nth-of-type(2) {
    margin-top: 2rem;
    padding: 1rem 1rem 0 1rem;
    border-radius: 1rem 1rem 0 0;
}
main h2:nth-of-type(2) + p {
    padding: 0 1rem 1rem 1rem;
    border-radius: 0 0 1rem 1rem;
}

tr:last-child {
    font-weight: bold;
}

main ul:last-of-type li {
    padding: 0 0 .3rem 2.5rem;
}

main h2:nth-of-type(4) {
    display: flex;
    align-items: center;
    gap: 1rem;
}
main h2:nth-of-type(4):after {
    content: "";
    background-color: #ffa500;
    border-radius: 50%;
    display: block;
    width: 24px;
    height: 24px;
}

tr:first-child td,
aside:first-child h2,
form input[type="submit"] {
    background-color: #333;
}
aside:first-child a {
    text-decoration: none;
}
aside h2 {
    padding: .5rem;
    margin: 0;
}
aside li {
    padding: 0.4rem .5rem;
    padding-left: 2.5rem;
}

aside li:nth-child(even),
tr:last-child  {
    background-color: #eee;
}
.columns aside:first-child ul .active {
    background-color: #ffa500;
}

.columns aside h2,
aside:first-child h2,
form input[type="submit"] {
    color: #fff;
}
input[type="text"] {
    margin-top: .5rem;
}

footer .columns div:last-child {
    border: #ffa500 solid 2px;
}

