diff --git a/package-lock.json b/package-lock.json index a0f0886..3ff8ac8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,6 +22,7 @@ "eslint": "^9", "eslint-config-next": "15.3.4", "react-icons": "^5.5", + "tailwind-rounded-out": "2.0.0", "tailwindcss": "^4", "typescript": "^5" } @@ -5755,6 +5756,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/tailwind-rounded-out": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tailwind-rounded-out/-/tailwind-rounded-out-2.0.0.tgz", + "integrity": "sha512-QPZGy7zvE/qbN81e9MrLZhd+CPTHlHcrKAp0TKrJFb/yfcpwD7mY8bCwD8aCBMtEPtexKSVAKfQsMrk1cNkPEA==", + "dev": true, + "license": "MIT" + }, "node_modules/tailwindcss": { "version": "4.1.10", "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.10.tgz", diff --git a/package.json b/package.json index 36e520b..000f222 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "eslint-config-next": "15.3.4", "@eslint/eslintrc": "^3", "react-icons": "^5.5", - "classnames": "^2.5" + "classnames": "^2.5", + "tailwind-rounded-out": "2.0.0" } } diff --git a/public/images/bg.jpg b/public/images/bg.jpg new file mode 100644 index 0000000..a21d454 Binary files /dev/null and b/public/images/bg.jpg differ diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx index 07377d1..5003ae4 100644 --- a/src/components/Footer.tsx +++ b/src/components/Footer.tsx @@ -1,12 +1,131 @@ "use client"; +import Image from 'next/image'; +import Link from 'next/link'; +import { BsLinkedin } from "react-icons/bs"; +import { Schibsted_Grotesk, Fraunces } from 'next/font/google' +import classnames from 'classnames'; + +// (san serif grotesque)(public sans, Schibsted grotesque, source sans 3) +const font = Schibsted_Grotesk({ subsets: ['latin'] }) +const headerFont = Fraunces({ subsets: ['latin'] }) const Footer = () => { return ( <> -
- diff --git a/src/components/InfoCard.tsx b/src/components/InfoCard.tsx index 8f8db0f..b25afd1 100644 --- a/src/components/InfoCard.tsx +++ b/src/components/InfoCard.tsx @@ -1,19 +1,19 @@ "use client"; - +import { useEffect, useState } from 'react'; import Link from 'next/link'; -import Image from 'next/image'; +import { Public_Sans, Schibsted_Grotesk, Source_Sans_3 } from 'next/font/google' import classnames from 'classnames'; -export type textColor = "text-britton-dark" | "text-britton-medium" | "text-britton-light" | "text-britton-neutral" | "text-britton-accent" | "text-britton-accent2"; -export type bgColor = "bg-britton-dark" | "bg-britton-medium" | "bg-britton-light" | "bg-britton-neutral" | "bg-britton-accent" | "bg-britton-accent2"; - +import { brittonRGB, textColor, bgColor } from '@/interfaces/common' +// (san serif grotesque)(public sans, Schibsted grotesque, source sans 3) +const font = Schibsted_Grotesk({ subsets: ['latin'] }) interface InfoCardProps { className?: string; bodyTextColor: textColor; cardBGColor: bgColor; - sectionBgColor: bgColor; + parentBgColor: bgColor; title: string; imageUrl: string; learnMoreUrl?: string; @@ -21,11 +21,22 @@ interface InfoCardProps { children: React.ReactNode; } +const brittonColorsRBG: brittonRGB = { + 'britton-dark': '4,21,62', + 'britton-medium': '42,75,111', + 'britton-light': '106,200,241', + 'britton-electric': '_0,240,255', + 'britton-electric2': '125,249,255', + 'britton-neutral': '224,224,224', + 'britton-accent2': '176,110,48', + 'britton-accent': '211,143,74', +} + const InfoCard: React.FC = ( { className, bodyTextColor, cardBGColor, - sectionBgColor, + parentBgColor, title, imageUrl, learnMoreUrl, @@ -34,81 +45,138 @@ const InfoCard: React.FC = ( } ) => { + const imageShadowColor: string = (cardBGColor == 'bg-britton-dark' ? "shadow-britton-accent2/90" : "shadow-black/50"); + const cardVhadowColor: string = (parentBgColor == 'bg-britton-dark' ? "shadow-britton-accent2/90" : "shadow-black/50"); + + + // const imageShadowColor = () => { + // if (cardBGColor == 'bg-britton-dark') { + // return 'shadow-britton-accent2/90' + // } else { + // return 'shadow-black/50' + // } + // } + + // const cardVhadowColor = () => { + // if (parentBgColor == 'bg-britton-dark') { + // return 'shadow-britton-accent2/90' + // } else { + // return 'shadow-black/50' + // } + // } + + // const rgbColor = ({ tailWindColor }: string) => { + // return brittonColorsRBG[tailWindColor]; + // }; + + // const rgbColor: string = ({ name }) => { + // return
Hello, {name}
; + // }; + + + return ( -
-
-
-
+
+
+
+ "flex-row-reverse" : invert, + "shadow-[8px_8px_6px,2px_2px_2px_-1px]" : !invert, + [`${cardVhadowColor}`] : !invert + })}> +
+
+
+ {title} +
+
+
+
+ {children} +
+
- {title} +
+ Description +
+
+ {/*
+
+
*/}
-
-
+
+ + Learn More + + {/*
- {children} -
-
-
-
-
-
- -
-
-
-
-
-
- +
+
*/} + {/*
+ Learn More +
*/} + {/*
-
-
+ "rounded-b-4xl", + cardBGColor, + { + "w-6/9" : !invert, + "w-1/9" : invert, + } + )}> +
+
*/}
diff --git a/src/components/Navbar.tsx b/src/components/Navbar.tsx index 395d65f..9fc1a57 100644 --- a/src/components/Navbar.tsx +++ b/src/components/Navbar.tsx @@ -15,6 +15,22 @@ export interface MenuItem { } const menuItems: MenuItem[] = [ + { + id: "members", + title: "Members", + children: [ + { + id: "findMedicalProvider", + title: "Find a Medical Provider", + route: "", + }, + { + id: "obtainRxInformation", + title: "Obtain Rx Information", + route: "", + }, + ], + }, { id: "employers", title: "Employers", @@ -36,22 +52,6 @@ const menuItems: MenuItem[] = [ }, ], }, - { - id: "members", - title: "Members", - children: [ - { - id: "findMedicalProvider", - title: "Find a Medical Provider", - route: "", - }, - { - id: "obtainRxInformation", - title: "Obtain Rx Information", - route: "", - }, - ], - }, { id: "providers", title: "Providers", @@ -81,8 +81,10 @@ const Navbar = () => { useEffect(() => { const handleScroll = () => { + // const viewportHeight = window.innerHeight; + const subtractedHeight = window.innerHeight - 80; // Find pixels from top to bottom of "tag line" div - if (window.scrollY > 280) { + if (window.scrollY > subtractedHeight) { setIsScrolled(true); } else { setIsScrolled(false); @@ -97,16 +99,16 @@ const Navbar = () => { }, []); return ( -