/* FONTS */
@font-face {
    font-family: "Calibre";
    src: url("/fonts/Calibre-Light.otf") format("opentype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Calibre";
    src: url("/fonts/Calibre-Regular.otf") format("opentype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Calibre";
    src: url("/fonts/Calibre-Medium.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

/* Platypi family */
@font-face {
    font-family: "Platypi";
    src: url("/fonts/Platypi-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Platypi";
    src: url("/fonts/Platypi-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Platypi";
    src: url("/fonts/Platypi-LightItalic.ttf") format("truetype");
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Platypi";
    src: url("/fonts/Platypi-Italic.ttf") format("truetype");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

/* NAV WRAPPER */
nav.sticky {
    background: #fdffeb!important;
    border: none !important;
    color: #1C250F !important;
    box-shadow: none !important;
}

/* NAV HEIGHT */
nav.sticky .container {
    height: 70px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

/* LOGO AND BRAND TEXT */
nav.sticky img {
    border-radius: 8px !important;
}

nav.sticky span {
    font-family: Calibre, sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #1C250F !important;
}


/* NAV LINKS — GREEN PILLS ALWAYS */
nav.sticky .md\:flex a {
    background: #C5F27D !important;
    color: #1C250F !important;

    
    padding-left: 22px !important;
    padding-right: 22px !important;
    padding-top: 8px !important;
    padding-bottom: 4px !important;

    border-radius: 999px !important;

    font-family: Calibre, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
}

/* HOVER EFFECT */
nav.sticky .md\:flex a:hover {
    filter: brightness(0.96) !important;
    opacity: 1 !important;
}

/* ACTIVE LINK DETECTED BY TWIG */
nav.sticky .md\:flex a.bg-white\/20 {
    background: #C5F27D !important;
    color: #1C250F !important;
    font-weight: 400 !important;
}


/* AVATAR CIRCLE */
nav.sticky .w-7.h-7 {
    background: #1C250F !important;
    border: none !important;
    box-shadow: 0 0 12px rgba(28, 37, 15, .3) !important;
}

/* AVATAR NAME */
nav.sticky button span {
    color: #1C250F !important;
    font-family: Platypi, serif !important;
    font-size: 14px !important;
}


/* LOGIN BUTTON */
nav.sticky a.bg-rose-600 {
    background: #ff4c06 !important;
    color: white !important;

    padding-top: 8px !important;
    padding-bottom: 4px !important;

    border-radius: 999px !important;

    font-family: Calibre, sans-serif !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

}

nav.sticky a.bg-rose-600:hover {
    opacity: 0.85 !important;
    background: #ff4c06 !important;
}


/* Body */ 
body {
    background: #fdffeb !important; /* cream */
    color: #1C250F !important;       /* deep olive */
}

.bg-white {
    background: #fdffeb !important;
}

.bg-white .text-gray-900 {
    background: #fdffeb !important; /* cream */
    color: #1C250F !important;       /* deep olive */
}

/* Text Styles */ 

h1 {
    font-family: Platypi, serif !important;
    
    font-weight: 300 !important;
    line-height: 1.1 !important;
    margin-bottom: 24px !important;
    color: #1C250F !important;
}

h2 {
    font-family: Platypi, serif !important;
    
    font-weight: 300 !important;
    line-height: 1.2 !important;
    margin-bottom: 20px !important;
    color: #1C250F !important;
}
h3 {
    font-family: Platypi, serif !important;
  
    font-weight: 300 !important;
    line-height: 1.25 !important;
    margin-bottom: 18px !important;
    color: #1C250F !important;
}
p {
    font-family: Calibre, sans-serif !important;
   
    line-height: 1.5 !important;
    margin-bottom: 22px !important;
    color: #1C250F !important;
}
.text-sm{font-family: Calibre, sans-serif !important;
    font-weight: 400 !important;
    color: #1C250F !important; }

.max-400 {
    max-width: 400px !important;
    width: 100% !important;
    height: auto !important;
}

.shadow{ 
    box-shadow: 0 0 14.23px rgba(197, 242, 125, 0.75);
}

.text-gray-600 {
    color: #1C250F !important;
}


button,
.button,
.w-button,
a.button,
input[type="submit"],
input[type="button"] {
    border-radius: 999px !important;     /* perfect pill */
    padding: 0.6rem 1.4rem !important;   /* keeps height consistent */
    display: inline-flex !important;
    align-items: center !important;      /* vertical centering */
    justify-content: center !important;
    line-height: 1 !important;           /* prevents upward text shift */
    font-family: Calibre, sans-serif !important;
    text-transform: uppercase !important;
    font-weight: 400 !important;
    letter-spacing: 0.5px !important;
    padding-top: 8px !important;
    padding-bottom: 4px !important;
}


/* Olive 800 — #1c2600 */
.text-olive-800 { color: #1c2600 !important; }
.bg-olive-800 { background-color: #1c2600 !important; }
.border-olive-800 { border-color: #1c2600 !important; }

/* Olive 700 — #243300 */
.text-olive-700 { color: #243300 !important; }
.bg-olive-700 { background-color: #243300 !important; }
.border-olive-700 { border-color: #243300 !important; }
.ring-olive-500 { background-color: #243300 !important; }

/* Olive 600 — #ccff99 */
.text-olive-600 { color: #3c4c00 !important; }
.bg-olive-600 { background-color: #3c4c00 !important; }
.border-olive-600 { border-color: #3c4c00 !important; }

/* Olive 500 — #f7f0dc */
.text-olive-500 { color: #f7f0dc !important; }
.bg-olive-500 { background-color: #f7f0dc !important; }
.border-olive-500 { border-color: #f7f0dc !important; }


.text-white{ color: #fdffeb !important;}

.appearance-none{
    background-color: #f7f0dc !important;
}

.border-gray-300 {
    border-color: #ded6bf !important;
}


.landing-nav-menu .w-nav-menu {background-color: #f7f0dc !important;}


.px-2.py-1.rounded.bg-olive-800\/10.text-olive-800.text-xs {
  background: transparent !important;
  border: 1px solid #ff6600;
  color: #ff6600 !important;
}

.absolute.right-0.mt-2.w-48.rounded-lg.border.border-white\/10.bg-gray-800.p-1.shadow-xl {
    background-color: #ded6bf !important;
}

.bg-gray-50 {
    background-color: #fdffeb !important;
}

.text-4xl.font-bold.text-gray-900 {font-family: Platypi, serif !important;
    font-style: italic !important;
    font-weight: 300 !important;
    line-height: 1.1 !important;}

.text-gray-600.ml-2 {font-family: Platypi, serif !important;
    font-style: italic !important;
    font-weight: 300 !important;
    line-height: 1.1 !important;}

.space-y-3.mb-8 {font-family: Calibre, sans-serif !important;
    font-weight: 300 !important;
    line-height: 1.1 !important;}

.h-5.w-5.text-olive-500.mr-3 { color: #3c4c00 !important;}