* ----- CSS RESET ----- */ /* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */ html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; } /* HTML5 display-role reset for older browsers */ article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; } body { line-height: 1; } ol, ul { list-style: none; } blockquote, q { quotes: none; } blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; } table { border-collapse: collapse; border-spacing: 0; } /* ----- CSS VARIABLES ----- */ :root { /* --- MOUNTAIN SUNRISE COLOR PALETTE --- */ --blue-dark: #031730; --blue-medium: #006a94; --blue-light: #5497aa; --peach: #feab83; --yellow-light: #ffd686; /* --- FONT STACKS --- */ --font-1: "p22-civilite-no11", Garamond, sans-serif; --font-2: ofelia-text, Arial, sans-serif; } /* ---- Body Styles ---- */ body{ width: 1440px; box-sizing: border-box; font-size: 1.1rem; line-height: 1.5; margin: 0; font-family: var(--font-2); font-style: normal; font-weight: 300; background-color: var(--blue-light); color: var(--yellow-light); } /* ---- HEADER STYLES ---- */ header{ background-image: url('images/swiss-valley.jpg'); background-repeat: no-repeat; background-size: cover; background-position: center; height: 560px; display: flex; flex-direction: column; text-align: center; padding: 1rem; } /* ---- NAVIGATION STYLES ---- */ header > nav ul{ list-style: none; padding: 0; margin: 0; display: flex; gap: 5rem; justify-content: center; align-items: center; } header > nav a{ font-family: var(--font-2); font-style: normal; font-weight: 300; margin: 0 auto; text-decoration: none; padding-top: 0.5rem; padding-bottom: 0.5rem; border-top: 4px solid var(--blue-medium); background-color: var(--blue-medium); border-bottom: 4px solid var(--blue-medium); color: var(--yellow-light); font-size: 1.25rem; width: 100%; text-transform: uppercase; } header > nav a:hover{ border-color: var(--yellow-light); } /* ---- WELCOME STATEMENT ----*/ header > p{ font-family: var(--font-1); margin: 5rem 0; font-style: normal; font-weight: 400; color: var(--blue-medium); text-shadow: var(--blue-dark) 3px 3px 4px; font-size: 4rem; width: 100%; background-color: var(--blue-medium); color: var(--yellow-light); } /* ---- COMPANY NAME ----*/ h1 > a{ font-family: var(--font-1); font-style: normal; font-weight: 400; color: var(--blue-medium); text-shadow: var(--blue-dark) 3px 3px 4px; text-decoration: none; font-size: 10rem; align-self: center; } /* ---- LINK STYLES ----*/ a{ display: block; padding: 1rem; } /* ---- IMAGE STYLES ----*/ img{ display: block; padding: 1rem; } /* ---- MAIN STYLES ---- */ main{ width: 1440px; padding-top: 0.5rem; padding-bottom: 0.5rem; margin: 0 auto; background-color: var(--blue-light); } /* ---- Welcome Section ---- */ #welcome > h2{ font-family: var(--font-2); font-style: normal; font-weight: 300; color: var(--blue-dark); font-size: 4rem; text-align: center; } #welcome > p{ font-family: var(--font-2); font-style: normal; font-weight: 300; color: var(--blue-dark); font-size: 1.5rem; text-align: center; } /* ---- Amenities Section ---- */ #amenities{ display: grid; grid-template-columns: 1fr 1fr; width: 1440px; margin: 0 auto; align-items: center; padding: 2rem; } #amenities > img{ grid-row: 1 / 2; justify-self: center; align-self: center; } #amenities > h3{ grid-row: 2 / 2; font-family: var(--font-2); font-style: normal; font-weight: 300; color: var(--blue-dark); font-size: 2rem; text-align: center; } #amenities > p{ grid-row: 3 / 3; font-family: var(--font-2); font-style: normal; font-weight: 300; color: var(--blue-dark); font-size: 1rem; text-align: justify; padding-right: 2rem; } /* ---- Contact Us Section ---- */ #contact-us{ display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; width: 1440px; margin: 0 auto; padding: 2rem; background-color: var(--blue-light); text-align: center; } #contact-us > h2{ grid-row: 1 / 1; font-family: var(--font-2); font-style: normal; font-weight: 300; color: var(--blue-dark); font-size: 4rem; text-align: left; } #contact-us > p{ grid-row: 2 / 5; font-family: var(--font-2); font-style: normal; font-weight: 300; color: var(--blue-dark); font-size: 1.5rem; text-align: left; } #contact-us > img{ grid-row: 5 / 9; } /* ---- FORM STYLES ---- */ form{ gap: 1rem; width: 100%; margin: 0 1rem; } input, label, textarea{ grid-column: -2 / 3; font-family: var(--font-2); font-weight: normal; font-size: 1.5rem; color: var(--blue-dark); margin: 0 auto; padding: 0.5rem; box-sizing: border-box; } label{ margin: 0 10rem; font-size: 1.25rem; text-align: left; } span.required{ font-size: 1.5rem; color: var(--peach); } input, textarea{ padding: 0.25rem; width: 400px; margin: 0 auto; border: solid 2px var(--blue-medium); background-color: var(--yellow-light); } input[type="radio"]{ width: 20px; margin: 0 1rem; } fieldset{ grid-column: -2 / 2; width: 50%; border: solid 2px var(--blue-medium); margin: 0 auto; padding: 1rem; text-align: left; } fieldset > label{ margin: 0 auto; padding: 1rem; } input:invalid, textarea:invalid{ outline: 5px solid var(--peach); background-color: var(--peach); } input:focus, textarea:focus{ outline: 5px solid var(--blue-medium); } #submit { width: 25%; margin: 1.5rem auto; padding: 1rem; font-family: var(--font-2); font-size: 2rem; font-weight: bold; outline: none; border: 4px solid var(--blue-medium); background-color: var(--blue-dark); color: var(--yellow-light); } #submit:focus{ border-color: var(--yellow-light); } #submit:hover{ background-color: var(--yellow-light); color: var(--blue-medium); } /* ---- FOOTER STYLES ---- */ footer{ font-family: var(--font-2); padding: 1rem; width: 1440px; margin: 0 auto; text-align: center; padding-top: 2rem; } footer > address{ color: var(--yellow-light); font-size: 1.25rem; margin-bottom: 0.5rem; } footer a{ padding: 0.5rem; color: var(--yellow-light); text-underline-offset: 4px; text-decoration-color: var(--yellow-light); text-decoration-thickness: 2px; } footer a:hover{ color: var(--blue-dark); } footer p{ font-size: 1rem; }