@import url('https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400&display=swap');

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
min-height: 100vh;
display: flex;
flex-direction: column;
background-image: linear-gradient(#cccccc, #7f8a97, #cccccc);
font-family: 'Inter', 'Arial', sans-serif;
font-weight: 600;
color: black;
}
a {
color: #245b8c;
text-decoration: none;
}
a:hover {
color: #3b4856;
}
nav {
background-color: #d9d9d9;
border-radius: 10px;
}
nav ul {
display: flex;
align-items: center;
list-style: none;
}
nav a {
font-weight: 700;
text-shadow: 0 3px 4px rgba(36, 91, 140, 0.4);
}
nav li:first-child a {
font-style: italic;
font-weight: 400;
color: #3b4856;
text-shadow: none;
}
main {
flex: 1;
padding-bottom: 20px;
}
main img {
display: block;
width: 100%;
object-fit: contain;
background-color: white;
}
main h1, main h2, article h3 {
margin: 20px;
text-align: center;
}
main h1 a, main h2 a {
color: black;
text-decoration: underline;
}
main p {
margin: 20px auto;
padding: 0 20px;
max-width: 1100px;
line-height: 1.5;
}
main ul {
max-width: 1000px;
margin: 20px auto;
padding: 0 20px 0 40px;
line-height: 1.5;
}
main li {
margin-bottom: 10px;
}
.glass_button {
display: table;
margin: 20px auto;
padding: 10px 25px;
background-color: rgba(255, 255, 255, 0.6);
border: 1px solid white;
border-radius: 10px;
color: #245b8c;
font-family: 'Inter', 'Arial', sans-serif;
font-weight: 700;
text-shadow: 0 3px 4px rgba(36, 91, 140, 0.4);
}
.glass_button:hover {
background-color: rgba(255, 255, 255, 0.9);
color: #3b4856;
}
#carousel {
display: flex;
overflow-x: auto;
}
#carousel img {
flex-shrink: 0;
}
article {
padding-bottom: 20px;
border-bottom: 1px solid rgba(59, 72, 86, 0.25);
}
article:last-child {
border-bottom: none;
}
article ul {
max-width: none;
margin: 20px 0;
}
#colors {
text-align: center;
}
#diagonal {
display: flex;
}
#diagonal img {
width: 50%;
}
#hero img {
object-fit: cover;
}
#story {
max-width: 900px;
margin: 30px auto 0;
}
#story p {
text-align: center;
font-style: italic;
font-weight: 400;
}
#contact h1 {
color: #3b4856;
}
form {
padding: 0 20px;
}
form .glass_button {
color: #3b4856;
text-shadow: 0 3px 4px rgba(59, 72, 86, 0.4);
}
#fields {
display: flex;
flex-direction: column;
gap: 8px;
max-width: 800px;
margin: 20px auto;
padding: 20px;
background-color: white;
border-radius: 10px;
}
label {
margin-top: 10px;
color: #3b4856;
}
input, textarea {
width: 100%;
background-color: #d9d9d9;
border: none;
border-radius: 10px;
font-family: 'Inter', 'Arial', sans-serif;
color: black;
}
textarea {
min-height: 150px;
resize: vertical;
}
input:focus, textarea:focus {
outline: 2px solid #245b8c;
}
footer {
background-color: #3b4856;
color: white;
}
footer a {
color: white;
}
footer a:hover {
color: #9fadbd;
}
#foot_top {
display: flex;
align-items: center;
gap: 15px;
}
#foot_top p {
font-style: italic;
font-weight: 400;
}
#foot_top hr {
flex: 1;
border: none;
border-top: 1px solid white;
}
#foot_links {
display: flex;
gap: 15px;
margin: 20px 0;
}
#foot_links div {
flex: 1;
}
#foot_links h2 {
margin-bottom: 8px;
}
#foot_links ul {
list-style: none;
}
#foot_links li, #foot_links p {
font-weight: 300;
line-height: 1.6;
}
#foot_links li a {
text-decoration: underline;
}
#signup {
display: inline-block;
margin-top: 8px;
padding: 0.5em 1.2em;
background-color: #66727f;
border-radius: 20px;
font-weight: 600;
line-height: 1;
text-align: center;
white-space: nowrap;
}
#signup:hover {
background-color: #7a8794;
}
footer > p {
text-align: center;
}

/* Extra small devices (phones, 600px and down) */
/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (max-width: 991px) {
    nav ul {
    justify-content: space-around;
    padding: 25px 10px;
    }
    nav li:first-child, nav li:last-child {
    display: none;
    }
    nav a {
    font-size: 18px;
    }
    main h1, main h2, article h3 {
    font-size: 24px;
    }
    main p, main li {
    font-size: 14px;
    }
    .glass_button {
    font-size: 16px;
    }
    #intro, #superpen, #everyday {
    display: flex;
    flex-direction: column;
    }
    #carousel, #superpen img, #everyday_row {
    order: -1;
    }
    #closeup, #everyday_row p, #vertical, #jetstream_pen {
    display: none;
    }
    main img {
    max-height: 450px;
    }
    article img {
    height: 300px;
    }
    #hero img {
    height: 200px;
    }
    #story p {
    font-size: 16px;
    }
    input, textarea {
    padding: 12px;
    font-size: 16px;
    }
    footer {
    padding: 20px;
    }
    #foot_top p {
    font-size: 20px;
    }
    #foot_links h2 {
    font-size: 15px;
    }
    #foot_links li, #foot_links p, #signup, footer > p {
    font-size: 12px;
    }
}

/* Large devices (laptops/desktops, 992px and up) */
/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 992px) {
    body {
    background-image: linear-gradient(#cccccc, #7f8a97 20%, #7f8a97 80%, #cccccc);
    }
    nav {
    position: relative;
    z-index: 1;
    }
    nav ul {
    height: 90px;
    gap: 30px;
    padding: 0 40px;
    }
    nav li:first-child {
    margin-right: auto;
    }
    nav li:first-child a {
    font-size: 32px;
    }
    nav a {
    font-size: 26px;
    white-space: nowrap;
    }
    main h1, main h2, article h3 {
    font-size: 56px;
    }
    main p {
    font-size: 28px;
    }
    main li {
    font-size: 22px;
    }
    .glass_button {
    padding: 14px 40px;
    font-size: 28px;
    }
    #intro > .glass_button, #superpen > .glass_button {
    display: none;
    }
    #carousel img {
    width: 20%;
    }
    #superpen img {
    height: 300px;
    }
    #closeup {
    height: 220px;
    object-fit: cover;
    }
    #everyday_row {
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 20px 10%;
    }
    #everyday_row img {
    width: 30%;
    }
    #everyday_row p {
    width: 70%;
    margin: 0;
    padding: 0;
    }
    #new {
    display: grid;
    grid-template-columns: 1fr 3fr;
    row-gap: 20px;
    }
    #new h1 {
    grid-area: 1 / 1 / 2 / 3;
    }
    #pack {
    grid-area: 2 / 1 / 3 / 2;
    align-self: start;
    justify-self: center;
    width: 90%;
    }
    #new p {
    grid-area: 2 / 2 / 3 / 3;
    }
    #carousel {
    grid-area: 3 / 1 / 4 / 3;
    }
    #new ul {
    grid-area: 4 / 1 / 5 / 3;
    }
    #buy_set {
    grid-area: 5 / 1 / 6 / 3;
    }
    #buy_one, #whole_set, #overview {
    display: none;
    }
    article {
    display: grid;
    grid-template-columns: 1fr 4fr;
    grid-template-rows: auto auto auto auto 1fr;
    padding: 20px 5%;
    }
    article h2 {
    grid-area: 1 / 1 / 2 / 3;
    }
    article img {
    grid-area: 2 / 1 / 6 / 2;
    align-self: start;
    justify-self: center;
    max-width: 400px;
    }
    article p {
    grid-area: 2 / 2 / 3 / 3;
    margin: 0 0 20px;
    }
    article ul {
    grid-area: 3 / 2 / 4 / 3;
    margin: 0 0 20px;
    }
    article .glass_button {
    grid-area: 4 / 2 / 5 / 3;
    justify-self: start;
    margin: 0 0 20px 20px;
    }
    article h3, #colors, #diagonal, #horizontal, #gel_pen {
    display: none;
    }
    #hero {
    position: relative;
    margin-top: -90px;
    }
    #hero img {
    height: 500px;
    }
    #hero h1 {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    margin: 0;
    color: white;
    }
    #story p {
    font-size: 24px;
    }
    #fields {
    padding: 40px;
    }
    input, textarea {
    padding: 16px;
    font-size: 20px;
    }
    footer {
    padding: 40px 10%;
    }
    #foot_top p {
    font-size: 48px;
    }
    #foot_links h2 {
    font-size: 24px;
    }
    #foot_links li, #foot_links p {
    font-size: 18px;
    }
    #signup {
    font-size: 16px;
    }
    footer > p {
    font-size: 20px;
    }
}
