/* ============= WEB BROWSER RESETS ============ */ * { margin: 0; padding: 0; border: none } *, *::before, *::after { box-sizing: border-box } html { height: 100%; font-size: 100%; font: inherit; vertical-align: baseline; scroll-behavior: smooth; scroll-padding-top: 20px } body { max-width: 1920px; line-height: 1.5; margin-left: auto; margin-right: auto; min-height: 100vh; text-rendering: optimizeSpeed } img { width: 100%; height: auto; display: block } h1, h2, h3, h4 { width: 100% } input, button, textarea, select { font: inherit } /* ================= ENDS ================ */ /* ============== HEADERS AND SECTIONS ============ */ /* Default header and widths */ header, section { width: 100% } /* Last element at bottom of header or section */ header *:last-child, section *:last-child { margin-bottom: 0 } /* =================== HEADER ================ */ /* Regular and larger screens */ @media (min-width: 1200px) { header { margin-left: auto; margin-right: auto; padding: 1% 0 3% 0; padding-left: calc( (100% - 1140px)/2 ); padding-right: calc( (100% - 1140px)/2 ); } .header-narrow { padding-left: calc( (100% - 920px)/2 ); padding-right: calc( (100% - 920px)/2 ); } } /* Tablets and smaller desktops */ @media (min-width: 1025px) and (max-width: 1199px ) { header { padding: 3% 10% 4% 10% } } /* Tablets */ @media (min-width: 768px) and (max-width: 1024px) { header { padding: 4% 5% 4% 5% } } /* Larger mobiles */ @media (min-width: 400px) and (max-width: 767px) { header { padding: 7% 13% 8% 13% } } /* Smaller mobiles */ @media (max-width: 399px) { header { padding: 7% 10% 8% 10% } } /* Image in header */ header img { max-width: 800px; margin-left: auto; margin-right: auto; margin-bottom: 24px; } /* Main heading in header */ header h1 { font-family: 'Roboto Condensed', sans-serif; font-size: calc(48px + (84 - 48) * ((100vw - 320px) / (1140 - 320))); color: #3e414f; letter-spacing: 8px; margin-bottom: 20px; text-transform: uppercase; word-spacing: 102%; } /* Sub-heading in header */ header h2 { font-family: 'Roboto Condensed', sans-serif; font-size: calc(19px + (26 - 18) * ((100vw - 320px) / (1140 - 320))); color: #000; line-height: 1.6; } /* ======================= SECTIONS ======================== */ /* Regular and larger screens */ @media (min-width: 1200px) { section { margin-left: auto; margin-right: auto; padding: 3.5% 0 4% 0; padding-left: calc( (100% - 1140px)/2 ); padding-right: calc( (100% - 1140px)/2 ); } .section-narrow { padding-left: calc( (100% - 920px)/2 ); padding-right: calc( (100% - 920px)/2 ); } } /* Tablets and smaller desktops */ @media (min-width: 1025px) and (max-width: 1199px ) { section { padding: 3% 10% 4% 10% } } /* Tablets */ @media (min-width: 768px) and (max-width: 1024px) { section { padding: 4% 5% 4% 5% } } /* Larger mobiles */ @media (min-width: 400px) and (max-width: 767px) { section { padding: 7% 13% 8% 13% } } /* Smaller mobiles */ @media (max-width: 399px) { section { padding: 7% 10% 8% 10% } } /* Sections: main heading */ section h1 { font-family: 'Roboto Condensed', sans-serif; font-size: calc(32px + (48 - 32) * ((100vw - 320px) / (1140 - 320))); letter-spacing: 4px; color: #e1f5fe; margin-bottom: 12px; line-height: 1.2; text-transform: uppercase; word-spacing: 102%; font-weight: normal; } /* Sections: text paragraphs */ section p { font-family: 'PT Sans', sans-serif; font-size: calc(17px + (22 - 17) * ((100vw - 320px) / (1140 - 320))); color: #fff; margin-bottom: 20px; line-height: 1.5; } /* Coloured backgrounds */ .bg-header { background-color: #b2e6fe } .bg-dark-1 { background-color: #000000 } .bg-dark-2 { background-color: #3e414f } /* =============== UTILTY CLASSES ============== */ .text-center { text-align: center !important }