:root { /* Color Variables */ --color-heading: #d3cab3; --color-button: #d28839; --color-paragraph: #c49c5c; --color-border: #b07c4b; --color-dark: #0a0a0a; --color-input-bg: #e8e0d5; --color-text-light: #f5f5f5; /* Legacy color support (mapped to new colors) */ --color-gold: #d28839; /* Font Family Variables */ --font-menu: 'Canva Sans', sans-serif; --font-heading: 'Playfair Display', serif; --font-paragraph: 'Canva Sans', sans; /* Legacy font support */ --font-playfair: 'Playfair Display', serif; --font-lato: 'Canva Sans', sans; --font-cormorant: 'Canva Sans', sans-serif; /* Responsive Font Size Variables - Desktop Optimized */ --hero-title-size: 56px; --section-heading-size: 42px; --main-heading-size: 36px; --subheading-size: 22px; --body-size: 18px; --small-text-size: 16px; } * { box-sizing: border-box; padding: 0; margin: 0; } html, body { max-width: 100vw; overflow-x: hidden; background-color: var(--color-dark); color: var(--color-text-light); font-family: var(--font-paragraph); font-weight: 300; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } a { color: inherit; text-decoration: none; } /* Global Heading Styles */ h1, h2, h3, h4, h5, h6 { font-family: var(--font-heading); color: var(--color-heading); } /* Global Paragraph Styles */ p { font-family: var(--font-paragraph); color: var(--color-paragraph); } /* Global Button Styles */ button { font-family: var(--font-paragraph); background-color: var(--color-button); } /* ===== H2 RESPONSIVE FONT SIZES ===== */ /* Desktop and Tablet Large: 992px and above - 48px */ h2 { font-size: 48px !important; } /* Tablet: 768px to 991px - 40px */ @media (max-width: 991px) and (min-width: 768px) { h2 { font-size: 40px !important; } } /* Mobile: 320px to 767px - 26px */ @media (max-width: 767px) { h2 { font-size: 30px !important; } } @media (max-width: 320px) { h2 { font-size: 26px !important; } } /* Global Border Utility */ .border-standard { border-color: var(--color-border); } /* ===== RESPONSIVE TYPOGRAPHY ===== */ /* ===== DESKTOP SIZES (1200px and above) ===== */ /* Extra Large Desktop: 1920px+ */ @media (min-width: 1920px) { :root { --hero-title-size: 56px; --section-heading-size: 44px; --main-heading-size: 38px; --subheading-size: 24px; --body-size: 19px; --small-text-size: 17px; } } /* Large Desktop: 1600px */ @media (max-width: 1919px) and (min-width: 1600px) { :root { --hero-title-size: 56px; --section-heading-size: 42px; --main-heading-size: 36px; --subheading-size: 22px; --body-size: 18px; --small-text-size: 16px; } } /* Desktop: 1540px */ @media (max-width: 1599px) and (min-width: 1540px) { :root { --hero-title-size: 56px; --section-heading-size: 40px; --main-heading-size: 35px; --subheading-size: 22px; --body-size: 18px; --small-text-size: 16px; } } /* Desktop: 1440px */ @media (max-width: 1539px) and (min-width: 1440px) { :root { --hero-title-size: 56px; --section-heading-size: 39px; --main-heading-size: 34px; --subheading-size: 21px; --body-size: 18px; --small-text-size: 16px; } } /* Desktop: 1360px */ @media (max-width: 1439px) and (min-width: 1360px) { :root { --hero-title-size: 47px; --section-heading-size: 38px; --main-heading-size: 33px; --subheading-size: 21px; --body-size: 17px; --small-text-size: 15px; } } /* Desktop/Laptop: 1200px */ @media (max-width: 1359px) and (min-width: 1200px) { :root { --hero-title-size: 47px; --section-heading-size: 36px; --main-heading-size: 32px; --subheading-size: 20px; --body-size: 17px; --small-text-size: 15px; } } /* ===== TABLET SIZES (768px - 1199px) ===== */ /* Laptop: 1024px */ @media (max-width: 1199px) and (min-width: 1024px) { :root { --hero-title-size: 44px; --section-heading-size: 32px; --main-heading-size: 28px; --subheading-size: 19px; --body-size: 16px; --small-text-size: 15px; } } /* Tablet Large: 992px */ @media (max-width: 1023px) and (min-width: 992px) { :root { --hero-title-size: 40px; --section-heading-size: 30px; --main-heading-size: 26px; --subheading-size: 18px; --body-size: 16px; --small-text-size: 15px; } } /* Tablet: 768px */ @media (max-width: 991px) and (min-width: 768px) { :root { --hero-title-size: 36px; --section-heading-size: 28px; --main-heading-size: 24px; --subheading-size: 17px; --body-size: 15px; --small-text-size: 14px; } } /* ===== MOBILE SIZES (below 768px) ===== */ /* Mobile Large: 500px */ @media (max-width: 767px) and (min-width: 500px) { :root { --hero-title-size: 36px; --section-heading-size: 26px; --main-heading-size: 22px; --subheading-size: 16px; --body-size: 15px; --small-text-size: 14px; } } /* Mobile: 475px */ @media (max-width: 499px) and (min-width: 475px) { :root { --hero-title-size: 34px; --section-heading-size: 24px; --main-heading-size: 21px; --subheading-size: 16px; --body-size: 15px; --small-text-size: 14px; } } /* Mobile: 424px */ @media (max-width: 474px) and (min-width: 424px) { :root { --hero-title-size: 32px; --section-heading-size: 23px; --main-heading-size: 20px; --subheading-size: 15px; --body-size: 14px; --small-text-size: 13px; } } /* Mobile Small: 320px */ @media (max-width: 423px) { :root { --hero-title-size: 28px; --section-heading-size: 21px; --main-heading-size: 20px; --subheading-size: 15px; --body-size: 14px; --small-text-size: 13px; } } /* Loading Spinner */ .loader { border: 4px solid #1a1a1a; border-top: 4px solid var(--color-button); /* Using existing gold/button color */ border-radius: 50%; width: 40px; height: 40px; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }