.inherited-context {
    line-height: 1.5;
    tab-size: 4;
    font-family: Inter, sans-serif;
    font-feature-settings: normal;
    font-variation-settings: normal;
    color: hsl(var(--foreground));
    --foreground: 215 25% 15%;
}

/* Blog page background color - matches blog card component */
.inherited-context.blogs-section {
    background-color: hsl(210 20% 94% / 0.3);
}

.inherited-context .min-h-screen.bg-background {
    background-color: hsl(210 20% 98%);
}

.inherited-context .py-16 {
    background-color: hsl(210 20% 94% / 0.3);
}

/* ===============================================
   Categories Sidebar Enhanced Styling
   =============================================== */

/* Sidebar cards - improved look */
.inherited-context .lg\\:col-span-1 .rounded-lg.border.bg-card {
    background: linear-gradient(145deg, hsl(0 0% 100%) 0%, hsl(210 20% 98%) 100%);
    border: 1px solid hsl(210 20% 88% / 0.6);
    box-shadow:
        0 4px 6px -1px rgb(0 0 0 / 0.05),
        0 2px 4px -2px rgb(0 0 0 / 0.05);
    transition: all 0.3s ease;
}

.inherited-context .lg\\:col-span-1 .rounded-lg.border.bg-card:hover {
    box-shadow:
        0 10px 15px -3px rgb(0 0 0 / 0.08),
        0 4px 6px -4px rgb(0 0 0 / 0.05);
    border-color: hsl(var(--primary, 230 80% 40%) / 0.2);
}

/* Categories header - gradient accent bar */
.inherited-context .lg\\:col-span-1 .w-1.h-6.bg-blog-heading {
    background: linear-gradient(180deg, rgb(21 34 176) 0%, rgb(50 80 220) 100%);
    width: 4px;
    border-radius: 2px;
}

/* Category button items - improved hover */
.inherited-context .lg\\:col-span-1 button.flex.items-center.justify-between {
    border-radius: 0.5rem;
    border: 1px solid transparent;
    transition: all 0.2s ease;
}

.inherited-context .lg\\:col-span-1 button.flex.items-center.justify-between:hover {
    background-color: hsl(230 80% 95%);
    border-color: hsl(230 80% 85%);
    transform: translateX(4px);
}

/* Category count badges - modern style */
.inherited-context .lg\\:col-span-1 .bg-secondary {
    background: linear-gradient(135deg, rgb(21 34 176) 0%, rgb(50 80 220) 100%) !important;
    color: #ffffff !important;
    border: none !important;
    font-weight: 600;
    min-width: 1.5rem;
    text-align: center;
}

/* Popular Tags - improved styling */
.inherited-context .lg\\:col-span-1 .flex.flex-wrap.gap-2 .rounded-full {
    border: 1px solid hsl(230 60% 80%);
    background-color: hsl(230 80% 98%);
    padding: 0.375rem 0.875rem;
    transition: all 0.2s ease;
}

.inherited-context .lg\\:col-span-1 .flex.flex-wrap.gap-2 .rounded-full:hover {
    background: linear-gradient(135deg, rgb(21 34 176) 0%, rgb(50 80 220) 100%);
    border-color: transparent;
    color: #ffffff;
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgb(21 34 176 / 0.25);
}

/* Recent Posts - image styling */
.inherited-context .lg\\:col-span-1 a.flex.gap-4 img {
    border: 2px solid hsl(210 20% 90%);
    transition: all 0.2s ease;
}

.inherited-context .lg\\:col-span-1 a.flex.gap-4:hover img {
    border-color: rgb(21 34 176);
    box-shadow: 0 4px 8px rgb(21 34 176 / 0.15);
}

/* Newsletter card - subtle enhancement */
.inherited-context .lg\\:col-span-1 .bg-gradient-to-br {
    box-shadow: 0 8px 16px rgb(21 34 176 / 0.2);
}

/* ===============================================
   Blog Card Component Styles
   Exact copy from blog_card.css for consistency
   =============================================== */

.blogcard-wrapper {
    font-family: Inter, sans-serif;
}

/* grid */

.blogcard-wrapper .blogcard-grid {
    display: grid;
    gap: 2rem;
}

.blogcard-wrapper .blogcard-card {
    text-decoration: none;
    color: inherit;
}

/* card */

.blogcard-wrapper .blogcard-card-inner {
    border-radius: 0.5rem;
    border-width: 1px;
    border-style: solid;
    border-color: hsl(var(--border, 210 20% 88%) / 0.5);
    background-color: hsl(var(--card, 0 0% 100%));
    color: hsl(var(--card-foreground, 215 25% 15%));
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    overflow: hidden;
    height: 100%;
    transition-property: all;
    transition-duration: 0.3s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.blogcard-wrapper .blogcard-card-inner:hover {
    border-color: hsl(var(--primary, 210 75% 25%) / 0.3);
    box-shadow:
        0 20px 25px -5px rgb(0 0 0 / 0.1),
        0 8px 10px -6px rgb(0 0 0 / 0.1);
}

/* animation delays */

.blogcard-wrapper .blogcard-anim-1 {
    animation-delay: 0s;
}

.blogcard-wrapper .blogcard-anim-2 {
    animation-delay: 0.1s;
}

.blogcard-wrapper .blogcard-anim-3 {
    animation-delay: 0.2s;
}

/* image area */

.blogcard-wrapper .blogcard-image-wrap {
    position: relative;
    height: 12rem;
    overflow: hidden;
}

.blogcard-wrapper .blogcard-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition-property: transform;
    transition-duration: 0.5s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.blogcard-wrapper .group:hover .group-hover-scale {
    transform: scale(1.05);
}

.blogcard-wrapper .blogcard-image-badge-wrap {
    position: absolute;
    top: 1rem;
    left: 1rem;
}

.blogcard-wrapper .blogcard-chip {
    display: inline-flex;
    align-items: center;
    border-radius: 9999px;
    border-width: 0;
    padding: 0.125rem 0.625rem;
    font-size: 0.75rem;
    font-weight: 600;
    background-color: rgb(21 34 176 / 1);
    color: rgb(255 255 255 / 1);
}

/* content */

.blogcard-wrapper .blogcard-content {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    padding: 1.5rem;
}

.blogcard-wrapper .blogcard-meta {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.875rem;
    color: hsl(var(--muted-foreground, 215 15% 45%));
    margin-bottom: 0.5rem;
}

.blogcard-wrapper .blogcard-meta-item {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.blogcard-wrapper .blogcard-icon {
    width: 1rem;
    height: 1rem;
}

.blogcard-wrapper .blogcard-card-title {
    margin: 0;
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    letter-spacing: -0.025em;
    color: rgb(20 24 76 / 1);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    transition-property: color;
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.blogcard-wrapper .group:hover .group-hover-title {
    color: rgb(21 34 176 / 1);
}

.blogcard-wrapper .blogcard-card-text {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: rgba(20, 24, 76, 0.8);
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

/* footer */

.blogcard-wrapper .blogcard-footer {
    padding: 1.5rem;
    padding-top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.blogcard-wrapper .blogcard-author {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.blogcard-wrapper .blogcard-author-icon {
    width: 2rem;
    height: 2rem;
    border-radius: 9999px;
    background-color: rgba(21, 34, 176, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
}

.blogcard-wrapper .blogcard-author-name {
    font-size: 0.875rem;
    font-weight: 500;
    color: rgb(20 24 76 / 1);
}

.blogcard-wrapper .blogcard-readmore {
    font-size: 0.875rem;
    font-weight: 500;
    color: rgb(21 34 176 / 1);
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    transition-property: all;
    transition-duration: 0.15s;
}

.blogcard-wrapper .blogcard-icon-arrow {
    margin-left: 0.5rem;
    width: 1rem;
    height: 1rem;
}

.blogcard-wrapper .group:hover .group-hover-gap {
    gap: 0.5rem;
}

/* responsive - Blog Card Styles */
/* extra small devices */
@media (max-width: 359px) {
    .blogcard-wrapper .blogcard-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }
}

/* small phones: keep grid to 1 column */
@media (max-width: 480px) {
    .blogcard-wrapper .blogcard-grid {
        grid-template-columns: 1fr;
    }

    .blogcard-wrapper .blogcard-card-inner {
        border-radius: 0.75rem;
    }
}

/* Extra small devices (344px and below) - Blog card optimization */
@media (max-width: 359px) {
    .blogcard-wrapper .blogcard-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .blogcard-wrapper .blogcard-card-inner {
        border-radius: 0.625rem;
    }

    /* Increase image height to prevent paper-thin look */
    .blogcard-wrapper .blogcard-image-wrap {
        height: 10rem;
    }

    /* Optimize content padding */
    .blogcard-wrapper .blogcard-content {
        padding: 1rem;
        gap: 0.25rem;
    }

    /* Smaller meta text - keep date and read time on same row */
    .blogcard-wrapper .blogcard-meta {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        gap: 0.375rem;
        font-size: 0.6rem;
        margin-bottom: 0.375rem;
    }

    .blogcard-wrapper .blogcard-meta-item {
        gap: 0.1rem;
        white-space: nowrap;
    }

    .blogcard-wrapper .blogcard-icon {
        width: 0.75rem;
        height: 0.75rem;
    }

    /* Smaller card title */
    .blogcard-wrapper .blogcard-card-title {
        font-size: 1rem;
        line-height: 1.35rem;
    }

    /* Smaller card text - single line */
    .blogcard-wrapper .blogcard-card-text {
        font-size: 0.75rem;
        line-height: 1.1rem;
        -webkit-line-clamp: 2;
        line-clamp: 2;
    }

    /* Smaller footer */
    .blogcard-wrapper .blogcard-footer {
        padding: 1rem;
        padding-top: 0;
    }

    .blogcard-wrapper .blogcard-author-icon {
        width: 1.5rem;
        height: 1.5rem;
    }

    .blogcard-wrapper .blogcard-author-name {
        font-size: 0.75rem;
    }

    .blogcard-wrapper .blogcard-readmore {
        font-size: 0.75rem;
    }

    .blogcard-wrapper .blogcard-icon-arrow {
        width: 0.75rem;
        height: 0.75rem;
        margin-left: 0.25rem;
    }

    /* Smaller chip badges */
    .blogcard-wrapper .blogcard-chip {
        font-size: 0.625rem;
        padding: 0.1rem 0.5rem;
    }

    .blogcard-wrapper .blogcard-image-badge-wrap {
        top: 0.75rem;
        left: 0.75rem;
    }
}

@media (min-width: 768px) {
    .blogcard-wrapper .blogcard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .blogcard-wrapper .blogcard-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ===============================================
   End Blog Card Component Styles
   =============================================== */

/* ===============================================
   Featured Blog & Search Bar Mobile Fixes
   Covers: 360, 375, 412, 414, 430px and tablet
   =============================================== */

/* Base search bar styles - all screens */
.inherited-context .relative.w-full input,
.inherited-context [class*="relative"][class*="w-full"] input {
    font-size: 16px !important;
    /* Prevents iOS zoom on focus */
    padding-left: 2.5rem !important;
}

.inherited-context .lucide-search,
.inherited-context svg[class*="lucide-search"] {
    width: 1rem !important;
    height: 1rem !important;
    left: 0.75rem !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Featured blog h2 - MUST be white always (on dark overlay) */
.inherited-context .absolute.bottom-6.left-6.right-6 h2,
.inherited-context .absolute.bottom-6 h2,
.inherited-context h2.text-2xl,
.inherited-context h2[class*="text-2xl"],
.inherited-context h2[class*="md:text-3xl"] {
    color: #ffffff !important;
}

/* Featured h2 hover effect - primary-light color */
.inherited-context .group:hover h2.text-2xl,
.inherited-context .group:hover h2[class*="text-2xl"],
.inherited-context .group:hover .text-2xl.font-bold {
    color: rgb(170, 180, 255) !important;
    /* primary-light effect */
}

/* Education chip on featured blog */
.inherited-context .absolute.bottom-6 .bg-blog-heading,
.inherited-context .absolute.bottom-6 [class*="bg-blog-heading"] {
    background-color: rgb(21 34 176 / 1) !important;
    color: #ffffff !important;
}

/* Featured badge styling */
.inherited-context .absolute.top-4 .bg-accent,
.inherited-context .absolute.top-4 [class*="bg-accent"] {
    background-color: hsl(175 60% 35%) !important;
    color: #ffffff !important;
}

/* ===== TABLET (768px - 1024px) ===== */
@media (min-width: 768px) and (max-width: 1024px) {

    .inherited-context .lucide-search,
    .inherited-context svg[class*="lucide-search"] {
        width: 1.125rem !important;
        height: 1.125rem !important;
        left: 0.875rem !important;
    }

    .inherited-context .relative.w-full input,
    .inherited-context [class*="md:w-96"] input {
        padding-left: 2.75rem !important;
    }
}

/* ===== LARGE MOBILE (414px - 480px) - iPhone Plus, etc ===== */
@media (max-width: 480px) {

    .inherited-context .lucide-search,
    .inherited-context svg[class*="lucide-search"] {
        width: 1rem !important;
        height: 1rem !important;
        left: 0.75rem !important;
    }

    .inherited-context .relative.w-full input {
        padding-left: 2.5rem !important;
        font-size: 15px !important;
    }

    .inherited-context .relative.w-full input::placeholder {
        font-size: 14px !important;
    }

    /* Featured blog image */
    .inherited-context .relative.h-64,
    .inherited-context [class*="h-64"] {
        height: 15rem !important;
    }

    /* Featured blog content */
    .inherited-context .absolute.bottom-6,
    .inherited-context [class*="absolute"][class*="bottom-6"] {
        bottom: 1.25rem !important;
        left: 1.25rem !important;
        right: 1.25rem !important;
    }

    /* Featured h2 size */
    .inherited-context .absolute.bottom-6 h2,
    .inherited-context h2.text-2xl {
        font-size: 1.35rem !important;
        line-height: 1.6rem !important;
    }

    /* Category chips */
    .inherited-context .absolute.bottom-6 .rounded-full,
    .inherited-context .absolute.top-4 .rounded-full {
        font-size: 0.7rem !important;
        padding: 0.15rem 0.6rem !important;
    }
}

/* ===== MEDIUM MOBILE (375px - 414px) - iPhone X, 11, 12, 13, 14 ===== */
@media (max-width: 414px) {

    .inherited-context .lucide-search,
    .inherited-context svg[class*="lucide-search"] {
        width: 0.9375rem !important;
        height: 0.9375rem !important;
        left: 0.625rem !important;
    }

    .inherited-context .relative.w-full input {
        padding-left: 2.25rem !important;
        font-size: 14px !important;
    }

    .inherited-context .relative.w-full input::placeholder {
        font-size: 13px !important;
    }

    /* Featured blog image */
    .inherited-context .relative.h-64,
    .inherited-context [class*="h-64"] {
        height: 14rem !important;
    }

    /* Featured content */
    .inherited-context .absolute.bottom-6 {
        bottom: 1rem !important;
        left: 1rem !important;
        right: 1rem !important;
    }

    /* Featured h2 */
    .inherited-context .absolute.bottom-6 h2 {
        font-size: 1.2rem !important;
        line-height: 1.5rem !important;
    }

    /* Featured description */
    .inherited-context .absolute.bottom-6 p[class*="line-clamp"] {
        font-size: 0.8rem !important;
    }

    /* Chips */
    .inherited-context .absolute.bottom-6 .rounded-full,
    .inherited-context .absolute.top-4 .rounded-full {
        font-size: 0.65rem !important;
        padding: 0.125rem 0.5rem !important;
    }

    /* Featured badge position */
    .inherited-context .absolute.top-4.left-4,
    .inherited-context [class*="absolute"][class*="top-4"] {
        top: 0.75rem !important;
        left: 0.75rem !important;
    }
}

/* ===== SMALL MOBILE (360px - 375px) - Galaxy S series ===== */
@media (max-width: 375px) {

    .inherited-context .lucide-search,
    .inherited-context svg[class*="lucide-search"] {
        width: 0.875rem !important;
        height: 0.875rem !important;
        left: 0.5rem !important;
    }

    .inherited-context .relative.w-full input {
        padding-left: 2rem !important;
        font-size: 13px !important;
    }

    .inherited-context .relative.w-full input::placeholder {
        font-size: 12px !important;
    }

    /* Featured blog image */
    .inherited-context .relative.h-64 {
        height: 13rem !important;
    }

    /* Featured h2 */
    .inherited-context .absolute.bottom-6 h2 {
        font-size: 1.1rem !important;
        line-height: 1.4rem !important;
    }

    /* Featured description - single line */
    .inherited-context .absolute.bottom-6 p[class*="line-clamp"] {
        font-size: 0.75rem !important;
        -webkit-line-clamp: 1 !important;
        line-clamp: 1 !important;
    }

    /* Chips */
    .inherited-context .absolute.bottom-6 .rounded-full,
    .inherited-context .absolute.top-4 .rounded-full {
        font-size: 0.6rem !important;
        padding: 0.1rem 0.4rem !important;
    }

    /* Meta info (date, read time) */
    .inherited-context .absolute.bottom-6 .flex.items-center.gap-4 {
        gap: 0.5rem !important;
        font-size: 0.7rem !important;
    }
}

/* ===== EXTRA SMALL MOBILE (below 360px) ===== */
@media (max-width: 359px) {

    .inherited-context .lucide-search,
    .inherited-context svg[class*="lucide-search"] {
        width: 0.8rem !important;
        height: 0.8rem !important;
        left: 0.4rem !important;
    }

    .inherited-context .relative.w-full input {
        padding-left: 1.75rem !important;
        font-size: 12px !important;
    }

    /* Featured blog image */
    .inherited-context .relative.h-64 {
        height: 11rem !important;
    }

    /* Featured content */
    .inherited-context .absolute.bottom-6 {
        bottom: 0.75rem !important;
        left: 0.75rem !important;
        right: 0.75rem !important;
    }

    /* Featured h2 */
    .inherited-context .absolute.bottom-6 h2 {
        font-size: 1rem !important;
        line-height: 1.3rem !important;
    }

    /* Hide description on very small screens */
    .inherited-context .absolute.bottom-6 p[class*="line-clamp"] {
        display: none !important;
    }
}

/* ===============================================
   End Featured Blog & Search Bar Fixes
   =============================================== */

/* @font-face rules */
@font-face {
    font-family: CameraPlainVariable;
    src: url("https://cdn.gpteng.co/mcp-widgets/v1/fonts/CameraPlainVariable.woff2") format("woff2");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

/* SCOPE ALL GLOBAL RESET TO .inherited-context */
.inherited-context *,
.inherited-context *::before,
.inherited-context *::after {
    --tw-border-spacing-x: 0;
    /* unused */
    --tw-border-spacing-y: 0;
    /* unused */
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    /* unused */
    --tw-pan-y: ;
    /* unused */
    --tw-pinch-zoom: ;
    /* unused */
    --tw-scroll-snap-strictness: proximity;
    /* unused */
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    /* unused */
    --tw-slashed-zero: ;
    /* unused */
    --tw-numeric-figure: ;
    /* unused */
    --tw-numeric-spacing: ;
    /* unused */
    --tw-numeric-fraction: ;
    /* unused */
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgb(59 130 246 / .5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    /* unused */
    --tw-blur: ;
    /* unused */
    --tw-brightness: ;
    /* unused */
    --tw-contrast: ;
    /* unused */
    --tw-grayscale: ;
    /* unused */
    --tw-hue-rotate: ;
    /* unused */
    --tw-invert: ;
    /* unused */
    --tw-saturate: ;
    /* unused */
    --tw-sepia: ;
    /* unused */
    --tw-drop-shadow: ;
    /* unused */
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;
    --tw-contain-size: ;
    /* unused */
    --tw-contain-layout: ;
    /* unused */
    --tw-contain-paint: ;
    /* unused */
    --tw-contain-style: ;
    /* unused */
}

.inherited-context *,
.inherited-context *::before,
.inherited-context *::after {
    box-sizing: border-box;
    border-width: 0px;
    border-style: solid;
    border-color: rgb(229, 231, 235);
}

/* REMOVE html/body global – blog layout already inside .inherited-context */

/* html, :host {
  line-height: 1.5;
  text-size-adjust: 100%;
  tab-size: 4;
  font-family: Inter, sans-serif;
  font-feature-settings: normal;
  font-variation-settings: normal;
  -webkit-tap-highlight-color: transparent;
}

body {
  margin: 0px;
  line-height: inherit;
} */

.inherited-context h1,
.inherited-context h2,
.inherited-context h3,
.inherited-context h4,
.inherited-context h5,
.inherited-context h6 {
    font-size: inherit;
    font-weight: inherit;
}

.inherited-context a {
    color: inherit;
    text-decoration: inherit;
}

.inherited-context button,
.inherited-context input,
.inherited-context optgroup,
.inherited-context select,
.inherited-context textarea {
    font-family: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: inherit;
    margin: 0px;
    padding: 0px;
}

.inherited-context button,
.inherited-context select {
    text-transform: none;
}

.inherited-context button,
.inherited-context input:where([type="button"]),
.inherited-context input:where([type="reset"]),
.inherited-context input:where([type="submit"]) {
    appearance: button;
    background-color: transparent;
    background-image: none;
}

.inherited-context blockquote,
.inherited-context dl,
.inherited-context dd,
.inherited-context h1,
.inherited-context h2,
.inherited-context h3,
.inherited-context h4,
.inherited-context h5,
.inherited-context h6,
.inherited-context hr,
.inherited-context figure,
.inherited-context p,
.inherited-context pre {
    margin: 0px;
}

.inherited-context ol,
.inherited-context ul,
.inherited-context menu {
    list-style: none;
    margin: 0px;
    padding: 0px;
}

.inherited-context input::placeholder,
.inherited-context textarea::placeholder {
    opacity: 1;
    color: rgb(156, 163, 175);
}

.inherited-context button,
.inherited-context [role="button"] {
    cursor: pointer;
}

.inherited-context img,
.inherited-context svg,
.inherited-context video,
.inherited-context canvas,
.inherited-context audio,
.inherited-context iframe,
.inherited-context embed,
.inherited-context object {
    display: block;
}

.inherited-context img,
.inherited-context video {
    max-width: 100%;
    height: auto;
}

/* CSS variables – keep, or if you want them only in blog area, you can move into .inherited-context instead of :root */
:root {
    --background: 210 20% 98%;
    --foreground: 215 25% 15%;
    --card: 0 0% 100%;
    --card-foreground: 215 25% 15%;
    --popover: 0 0% 100%;
    /* unused */
    --popover-foreground: 215 25% 15%;
    /* unused */
    --primary: 210 75% 25%;
    --primary-foreground: 0 0% 100%;
    --secondary: 170 45% 40%;
    --secondary-foreground: 0 0% 100%;
    --muted: 210 20% 94%;
    --muted-foreground: 215 15% 45%;
    --accent: 175 60% 35%;
    --accent-foreground: 0 0% 100%;
    --destructive: 0 84% 60%;
    --destructive-foreground: 0 0% 100%;
    /* unused */
    --border: 210 20% 88%;
    --input: 210 20% 88%;
    --ring: 210 75% 25%;
    --radius: .5rem;
    --navy: 215 60% 18%;
    /* unused */
    --navy-light: 210 50% 30%;
    /* unused */
    --teal: 170 55% 35%;
    /* unused */
    --teal-light: 170 50% 50%;
    /* unused */
    --green: 155 50% 40%;
    /* unused */
    --gold: 40 85% 55%;
    /* unused */
    --gradient-primary: linear-gradient(135deg, hsl(210 75% 25%) 0%, hsl(170 45% 40%) 100%);
    --gradient-hero: linear-gradient(135deg, hsl(215 60% 18%) 0%, hsl(210 50% 30%) 50%, hsl(170 55% 35%) 100%);
    /* unused */
    --gradient-subtle: linear-gradient(180deg, hsl(210 20% 98%) 0%, hsl(210 20% 94%) 100%);
    /* unused */
    --shadow-sm: 0 1px 2px 0 hsl(215 25% 15% / .05);
    /* unused */
    --shadow-md: 0 4px 6px -1px hsl(215 25% 15% / .1), 0 2px 4px -2px hsl(215 25% 15% / .1);
    /* unused */
    --shadow-lg: 0 10px 15px -3px hsl(215 25% 15% / .1), 0 4px 6px -4px hsl(215 25% 15% / .1);
    /* unused */
    --shadow-xl: 0 20px 25px -5px hsl(215 25% 15% / .1), 0 8px 10px -6px hsl(215 25% 15% / .1);
    /* unused */
    --shadow-glow: 0 0 30px hsl(170 55% 35% / .3);
    /* unused */
    --sidebar-background: 0 0% 98%;
    /* unused */
    --sidebar-foreground: 240 5.3% 26.1%;
    /* unused */
    --sidebar-primary: 240 5.9% 10%;
    /* unused */
    --sidebar-primary-foreground: 0 0% 98%;
    /* unused */
    --sidebar-accent: 240 4.8% 95.9%;
    /* unused */
    --sidebar-accent-foreground: 240 5.9% 10%;
    /* unused */
    --sidebar-border: 220 13% 91%;
    /* unused */
    --sidebar-ring: 217.2 91.2% 59.8%;
    /* unused */
}

/* THIS used to be global; scope it so borders inside header/footer are not affected */
.inherited-context * {
    border-color: hsl(var(--border));
}

/* REMOVE global body styling */
/*
body {
  background-color: hsl(var(--background));
  color: hsl(var(--foreground));
  -webkit-font-smoothing: antialiased;
  font-family: Inter, sans-serif;
}
*/

.inherited-context h1,
.inherited-context h2,
.inherited-context h3,
.inherited-context h4,
.inherited-context h5,
.inherited-context h6 {
    font-family: Inter, sans-serif;
}

/* from here down everything is utility classes – we only need to scope them so they don’t affect your header/footer */

.inherited-context .container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 2rem;
    padding-left: 2rem;
}

@media (min-width: 1400px) {
    .inherited-context .container {
        max-width: 1400px;
    }
}

.inherited-context .fixed {
    position: fixed;
}

.inherited-context .absolute {
    position: absolute;
}

.inherited-context .relative {
    position: relative;
}

.inherited-context .sticky {
    position: sticky;
}

.inherited-context .inset-0 {
    inset: 0px;
}

.inherited-context .-bottom-1 {
    bottom: -0.25rem;
}

.inherited-context .bottom-6 {
    bottom: 1.5rem;
}

.inherited-context .left-0 {
    left: 0px;
}

.inherited-context .left-3 {
    left: 0.75rem;
}

.inherited-context .left-4 {
    left: 1rem;
}

.inherited-context .left-6 {
    left: 1.5rem;
}

.inherited-context .right-0 {
    right: 0px;
}

.inherited-context .right-6 {
    right: 1.5rem;
}

.inherited-context .top-0 {
    top: 0px;
}

.inherited-context .top-1\/2 {
    top: 50%;
}

.inherited-context .top-24 {
    top: 6rem;
}

.inherited-context .top-4 {
    top: 1rem;
}

.inherited-context .z-50 {
    z-index: 50;
}

.inherited-context .z-\[100\] {
    z-index: 100;
}

.inherited-context .mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.inherited-context .mb-12 {
    margin-bottom: 3rem;
}

.inherited-context .mb-2 {
    margin-bottom: 0.5rem;
}

.inherited-context .mb-3 {
    margin-bottom: 0.75rem;
}

.inherited-context .mb-4 {
    margin-bottom: 1rem;
}

.inherited-context .mb-6 {
    margin-bottom: 1.5rem;
}

.inherited-context .ml-1 {
    margin-left: 0.25rem;
}

.inherited-context .ml-2 {
    margin-left: 0.5rem;
}

.inherited-context .ml-auto {
    margin-left: auto;
}

.inherited-context .mt-1 {
    margin-top: 0.25rem;
}

.inherited-context .mt-3 {
    margin-top: 0.75rem;
}

.inherited-context .mt-4 {
    margin-top: 1rem;
}

.inherited-context .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    max-height: 3em;
    overflow: hidden;
    text-overflow: ellipsis;
}

.inherited-context .block {
    display: block;
}

.inherited-context .inline-block {
    display: inline-block;
}

.inherited-context .flex {
    display: flex;
}

.inherited-context .inline-flex {
    display: inline-flex;
}

.inherited-context .grid {
    display: grid;
}

.inherited-context .hidden {
    display: none;
}

.inherited-context .h-0\.5 {
    height: 0.125rem;
}

.inherited-context .h-10 {
    height: 2.5rem;
}

.inherited-context .h-12 {
    height: 3rem;
}

.inherited-context .h-20 {
    height: 5rem;
}

.inherited-context .h-3 {
    height: 0.75rem;
}

.inherited-context .h-4 {
    height: 1rem;
}

.inherited-context .h-48 {
    height: 12rem;
}

.inherited-context .h-5 {
    height: 1.25rem;
}

.inherited-context .h-6 {
    height: 1.5rem;
}

.inherited-context .h-64 {
    height: 16rem;
}

.inherited-context .h-8 {
    height: 2rem;
}

.inherited-context .h-9 {
    height: 2.25rem;
}

.inherited-context .h-auto {
    height: auto;
}

.inherited-context .h-full {
    height: 100%;
}

.inherited-context .max-h-screen {
    max-height: 100vh;
}

.inherited-context .min-h-screen {
    min-height: 100vh;
}

.inherited-context .w-0 {
    width: 0px;
}

.inherited-context .w-1 {
    width: 0.25rem;
}

.inherited-context .w-10 {
    width: 2.5rem;
}

.inherited-context .w-12 {
    width: 3rem;
}

.inherited-context .w-20 {
    width: 5rem;
}

.inherited-context .w-3 {
    width: 0.75rem;
}

.inherited-context .w-4 {
    width: 1rem;
}

.inherited-context .w-5 {
    width: 1.25rem;
}

.inherited-context .w-6 {
    width: 1.5rem;
}

.inherited-context .w-8 {
    width: 2rem;
}

.inherited-context .w-full {
    width: 100%;
}

.inherited-context .min-w-0 {
    min-width: 0px;
}

.inherited-context .max-w-3xl {
    max-width: 48rem;
}

.inherited-context .max-w-sm {
    max-width: 24rem;
}

.inherited-context .flex-1 {
    flex: 1 1 0%;
}

.inherited-context .flex-shrink-0,
.inherited-context .shrink-0 {
    flex-shrink: 0;
}

.inherited-context .-translate-y-1\/2 {
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.inherited-context .cursor-pointer {
    cursor: pointer;
}

.inherited-context .flex-col {
    flex-direction: column;
}

.inherited-context .flex-col-reverse {
    flex-direction: column-reverse;
}

.inherited-context .flex-wrap {
    flex-wrap: wrap;
}

.inherited-context .items-start {
    align-items: flex-start;
}

.inherited-context .items-center {
    align-items: center;
}

.inherited-context .justify-center {
    justify-content: center;
}

.inherited-context .justify-between {
    justify-content: space-between;
}

.inherited-context .gap-1 {
    gap: 0.25rem;
}

.inherited-context .gap-12 {
    gap: 3rem;
}

.inherited-context .gap-2 {
    gap: 0.5rem;
}

.inherited-context .gap-3 {
    gap: 0.75rem;
}

.inherited-context .gap-4 {
    gap: 1rem;
}

.inherited-context .gap-6 {
    gap: 1.5rem;
}

.inherited-context .gap-8 {
    gap: 2rem;
}

.inherited-context .space-y-1\.5> :not([hidden])~ :not([hidden]) {
    margin-top: .375rem;
    margin-bottom: 0;
}

.inherited-context .space-y-2> :not([hidden])~ :not([hidden]) {
    margin-top: .5rem;
    margin-bottom: 0;
}

.inherited-context .space-y-3> :not([hidden])~ :not([hidden]) {
    margin-top: .75rem;
    margin-bottom: 0;
}

.inherited-context .space-y-4> :not([hidden])~ :not([hidden]) {
    margin-top: 1rem;
    margin-bottom: 0;
}

.inherited-context .space-y-8> :not([hidden])~ :not([hidden]) {
    margin-top: 2rem;
    margin-bottom: 0;
}

.inherited-context .overflow-hidden {
    overflow: hidden;
}

.inherited-context .whitespace-nowrap {
    white-space: nowrap;
}

.inherited-context .rounded-full {
    border-radius: 9999px;
}

.inherited-context .rounded-lg {
    border-radius: var(--radius);
}

.inherited-context .rounded-md {
    border-radius: calc(var(--radius) - 2px);
}

.inherited-context .border {
    border-width: 1px;
}

.inherited-context .border-0 {
    border-width: 0px;
}

.inherited-context .border-b {
    border-bottom-width: 1px;
}

.inherited-context .border-t {
    border-top-width: 1px;
}

.inherited-context .border-border {
    border-color: hsl(var(--border));
}

.inherited-context .border-border\/50 {
    border-color: hsl(var(--border) / .5);
}

.inherited-context .border-input {
    border-color: hsl(var(--input));
}

.inherited-context .border-primary {
    border-color: hsl(var(--primary));
}

.inherited-context .border-primary-foreground\/10 {
    border-color: hsl(var(--primary-foreground) / .1);
}

.inherited-context .border-transparent {
    border-color: transparent;
}

.inherited-context .bg-accent {
    background-color: hsl(var(--accent));
}

.inherited-context .bg-background {
    background-color: hsl(var(--background));
}

.inherited-context .bg-blog-heading {
    background-color: rgb(21 34 176 / 1);
}

.inherited-context .bg-blog-heading\/10 {
    background-color: rgba(21, 34, 176, 0.1);
}

.inherited-context .bg-card {
    background-color: hsl(var(--card));
}

.inherited-context .bg-card\/95 {
    background-color: hsl(var(--card) / .95);
}

.inherited-context .bg-primary {
    background-color: hsl(var(--primary));
}

.inherited-context .bg-primary-foreground\/10 {
    background-color: hsl(var(--primary-foreground) / .1);
}

.inherited-context .bg-secondary {
    background-color: hsl(var(--secondary));
}

.inherited-context .bg-gradient-to-br {
    background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}

.inherited-context .bg-gradient-to-t {
    background-image: linear-gradient(to top, var(--tw-gradient-stops));
}

.inherited-context .from-black\/70 {
    --tw-gradient-from: rgb(0 0 0 / .7) var(--tw-gradient-from-position);
    --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.inherited-context .from-primary {
    --tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.inherited-context .from-primary\/10 {
    --tw-gradient-from: hsl(var(--primary) / .1) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.inherited-context .via-background {
    --tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--background)) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.inherited-context .to-secondary\/10 {
    --tw-gradient-to: hsl(var(--secondary) / .1) var(--tw-gradient-to-position);
}

.inherited-context .to-transparent {
    --tw-gradient-to: transparent var(--tw-gradient-to-position);
}

.inherited-context .object-cover {
    object-fit: cover;
}

.inherited-context .p-0 {
    padding: 0px;
}

.inherited-context .p-2 {
    padding: 0.5rem;
}

.inherited-context .p-3 {
    padding: 0.75rem;
}

.inherited-context .p-4 {
    padding: 1rem;
}

.inherited-context .p-6 {
    padding: 1.5rem;
}

.inherited-context .px-2\.5 {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}

.inherited-context .px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.inherited-context .px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}

.inherited-context .py-0\.5 {
    padding-top: 0.125rem;
    padding-bottom: 0.125rem;
}

.inherited-context .py-1 {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.inherited-context .py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.inherited-context .py-2 {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.inherited-context .py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.inherited-context .py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.inherited-context .pb-12 {
    padding-bottom: 3rem;
}

.inherited-context .pl-10 {
    padding-left: 2.5rem;
}

.inherited-context .pt-0 {
    padding-top: 0px;
}

.inherited-context .pt-32 {
    padding-top: 8rem;
}

.inherited-context .text-left {
    text-align: left;
}

.inherited-context .text-center {
    text-align: center;
}

.inherited-context .font-display {
    font-family: Inter, sans-serif;
}

.inherited-context .text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
}

.inherited-context .text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
}

.inherited-context .text-base {
    font-size: 1rem;
    line-height: 1.5rem;
}

.inherited-context .text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
}

.inherited-context .text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
}

.inherited-context .text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
}

.inherited-context .text-xs {
    font-size: 0.75rem;
    line-height: 1rem;
}

.inherited-context .font-bold {
    font-weight: 700;
}

.inherited-context .font-medium {
    font-weight: 500;
}

.inherited-context .font-semibold {
    font-weight: 600;
}

.inherited-context .tracking-tight {
    letter-spacing: -0.025em;
}

.inherited-context .text-accent-foreground {
    color: hsl(var(--accent-foreground));
}

.inherited-context .text-blog-heading {
    color: rgb(21 34 176 / 1);
}

.inherited-context .text-blog-text {
    color: rgb(20 24 76 / 1);
}

.inherited-context .text-blog-text\/80 {
    color: rgba(20, 24, 76, 0.8);
}

.inherited-context .text-card-foreground {
    color: hsl(var(--card-foreground));
}

.inherited-context .text-foreground {
    color: hsl(var(--foreground));
}

.inherited-context .text-muted-foreground {
    color: hsl(var(--muted-foreground));
}

.inherited-context .text-primary {
    color: hsl(var(--primary));
}

.inherited-context .text-primary-foreground {
    color: hsl(var(--primary-foreground));
}

.inherited-context .text-primary-foreground\/60 {
    color: hsl(var(--primary-foreground) / .6);
}

.inherited-context .text-primary-foreground\/70 {
    color: hsl(var(--primary-foreground) / .7);
}

.inherited-context .text-primary-foreground\/80 {
    color: hsl(var(--primary-foreground) / .8);
}

.inherited-context .text-secondary-foreground {
    color: hsl(var(--secondary-foreground));
}

.inherited-context .text-white {
    color: rgb(255 255 255 / 1);
}

.inherited-context .text-white\/70 {
    color: rgba(255, 255, 255, 0.7);
}

.inherited-context .text-white\/80 {
    color: rgba(255, 255, 255, 0.8);
}

.inherited-context .shadow-md {
    box-shadow: 0 4px 6px -1px rgb(0 0 0 / .1),
        0 2px 4px -2px rgb(0 0 0 / .1);
}

.inherited-context .shadow-sm {
    box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);
}

.inherited-context .ring-offset-background {
    --tw-ring-offset-color: hsl(var(--background));
}

.inherited-context .backdrop-blur-md {
    --tw-backdrop-blur: blur(12px);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.inherited-context .transition-all {
    transition-property: all;
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.inherited-context .transition-colors {
    transition-property: color, background-color, border-color,
        text-decoration-color, fill, stroke;
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.inherited-context .transition-transform {
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.inherited-context .duration-300 {
    transition-duration: 0.3s;
}

.inherited-context .duration-500 {
    transition-duration: 0.5s;
}

.inherited-context .bg-gradient-primary {
    background: var(--gradient-primary);
}

.inherited-context .placeholder\:text-muted-foreground::placeholder {
    color: hsl(var(--muted-foreground));
}

.inherited-context .hover\:border-blog-heading:hover {
    border-color: rgb(21 34 176 / 1);
}

.inherited-context .hover\:border-primary\/30:hover {
    border-color: hsl(var(--primary) / .3);
}

.inherited-context .hover\:bg-accent:hover {
    background-color: hsl(var(--accent));
}

.inherited-context .hover\:bg-blog-heading:hover {
    background-color: rgb(21 34 176 / 1);
}

.inherited-context .hover\:bg-blog-heading\/90:hover {
    background-color: rgba(21, 34, 176, 0.9);
}

.inherited-context .hover\:bg-muted\/50:hover {
    background-color: hsl(var(--muted) / .5);
}

.inherited-context .hover\:bg-primary:hover {
    background-color: hsl(var(--primary));
}

.inherited-context .hover\:bg-primary-foreground\/10:hover {
    background-color: hsl(var(--primary-foreground) / .1);
}

.inherited-context .hover\:bg-primary\/80:hover {
    background-color: hsl(var(--primary) / .8);
}

.inherited-context .hover\:bg-secondary:hover {
    background-color: hsl(var(--secondary));
}

.inherited-context .hover\:bg-secondary\/80:hover {
    background-color: hsl(var(--secondary) / .8);
}

.inherited-context .hover\:bg-secondary\/90:hover {
    background-color: hsl(var(--secondary) / .9);
}

.inherited-context .hover\:text-blog-heading:hover {
    color: rgb(21 34 176 / 1);
}

.inherited-context .hover\:text-blog-heading\/80:hover {
    color: rgba(21, 34, 176, 0.8);
}

.inherited-context .hover\:text-primary:hover {
    color: hsl(var(--primary));
}

.inherited-context .hover\:text-primary-foreground:hover {
    color: hsl(var(--primary-foreground));
}

.inherited-context .hover\:text-secondary:hover {
    color: hsl(var(--secondary));
}

.inherited-context .hover\:text-secondary-foreground:hover {
    color: hsl(var(--secondary-foreground));
}

.inherited-context .hover\:text-white:hover {
    color: rgb(255 255 255 / 1);
}

.inherited-context .hover\:shadow-xl:hover {
    box-shadow: 0 20px 25px -5px rgb(0 0 0 / .1),
        0 8px 10px -6px rgb(0 0 0 / .1);
}

.inherited-context .focus\:outline-none:focus {
    outline: transparent solid 2px;
    outline-offset: 2px;
}

.inherited-context .focus\:ring-2:focus {
    --tw-ring-offset-shadow: 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.inherited-context .focus\:ring-ring:focus {
    --tw-ring-color: hsl(var(--ring));
}

.inherited-context .focus\:ring-offset-2:focus {
    --tw-ring-offset-width: 2px;
}

.inherited-context .disabled\:pointer-events-none:disabled {
    pointer-events: none;
}

.inherited-context .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
}

.inherited-context .disabled\:opacity-50:disabled {
    opacity: 0.5;
}

.inherited-context .group:hover .group-hover\:w-full {
    width: 100%;
}

.inherited-context .group:hover .group-hover\:scale-105 {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(1.05) scaleY(1.05);
}

.inherited-context .group:hover .group-hover\:gap-2 {
    gap: 0.5rem;
}

.inherited-context .group:hover .group-hover\:text-blog-heading {
    color: rgb(21 34 176 / 1);
}

.inherited-context .dark\:border-destructive:is(.dark *) {
    border-color: hsl(var(--destructive));
}

@media (min-width: 640px) {
    .inherited-context .sm\:bottom-0 {
        bottom: 0px;
    }

    .inherited-context .sm\:right-0 {
        right: 0px;
    }

    .inherited-context .sm\:top-auto {
        top: auto;
    }

    .inherited-context .sm\:flex-col {
        flex-direction: column;
    }
}

@media (min-width: 768px) {
    .inherited-context .md\:block {
        display: block;
    }

    .inherited-context .md\:h-80 {
        height: 20rem;
    }

    .inherited-context .md\:w-96 {
        width: 24rem;
    }

    .inherited-context .md\:max-w-\[420px\] {
        max-width: 420px;
    }

    .inherited-context .md\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0px, 1fr));
    }

    .inherited-context .md\:flex-row {
        flex-direction: row;
    }

    .inherited-context .md\:text-3xl {
        font-size: 1.875rem;
        line-height: 2.25rem;
    }

    .inherited-context .md\:text-5xl {
        font-size: 3rem;
        line-height: 1;
    }

    .inherited-context .md\:text-sm {
        font-size: 0.875rem;
        line-height: 1.25rem;
    }
}

@media (min-width: 1024px) {
    .inherited-context .lg\:col-span-1 {
        grid-column: span 1 / span 1;
    }

    .inherited-context .lg\:col-span-2 {
        grid-column: span 2 / span 2;
    }

    .inherited-context .lg\:flex {
        display: flex;
    }

    .inherited-context .lg\:hidden {
        display: none;
    }

    .inherited-context .lg\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0px, 1fr));
    }

    .inherited-context .lg\:grid-cols-5 {
        grid-template-columns: repeat(5, minmax(0px, 1fr));
    }

    .inherited-context .lg\:text-6xl {
        font-size: 3.75rem;
        line-height: 1;
    }
}

.inherited-context [class*="pl-7"]>svg~* {
    padding-left: 1.75rem;
}

.inherited-context [class*="pointer-events-none"] svg {
    pointer-events: none;
}

.inherited-context [class*="size-4"] svg {
    width: 1rem;
    height: 1rem;
}

.inherited-context [class*="shrink-0"] svg {
    flex-shrink: 0;
}

/* Lovable badge styles */
#lovable-badge {
    display: none;
    /* Hidden by default */
}

@media (prefers-reduced-motion: reduce) {

    #lovable-badge-cta,
    #lovable-badge-close,
    #lovable-badge-close svg path {
        transition: none;
    }

    #lovable-badge-cta:active,
    #lovable-badge-close:active {
        transform: none;
    }
}

@media (prefers-contrast: high) {
    #lovable-badge {
        --badge-bg: #000;
        --badge-text: #fff;
        --badge-text-hover: #fff;
        border: 2px solid currentcolor;
    }
}

:where(html[dir="ltr"]),
:where([data-sonner-toaster][dir="ltr"]) {
    --toast-icon-margin-start: -3px;
    /* unused */
    --toast-icon-margin-end: 4px;
    /* unused */
    --toast-svg-margin-start: -1px;
    /* unused */
    --toast-svg-margin-end: 0px;
    /* unused */
    --toast-button-margin-start: auto;
    /* unused */
    --toast-button-margin-end: 0;
    /* unused */
    --toast-close-button-start: 0;
    /* unused */
    --toast-close-button-end: unset;
    /* unused */
    --toast-close-button-transform: translate(-35%, -35%);
    /* unused */
}

:where(html[dir="rtl"]),
:where([data-sonner-toaster][dir="rtl"]) {
    --toast-icon-margin-start: 4px;
    /* unused */
    --toast-icon-margin-end: -3px;
    /* unused */
    --toast-svg-margin-start: 0px;
    /* unused */
    --toast-svg-margin-end: -1px;
    /* unused */
    --toast-button-margin-start: 0;
    /* unused */
    --toast-button-margin-end: auto;
    /* unused */
    --toast-close-button-start: unset;
    /* unused */
    --toast-close-button-end: 0;
    /* unused */
    --toast-close-button-transform: translate(35%, -35%);
    /* unused */
}

:where([data-sonner-toast]) :where([data-icon])>* {
    flex-shrink: 0;
}

:where([data-sonner-toast])>* {
    transition: opacity 0.4s;
}

:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>* {
    opacity: 0;
}

@media (prefers-reduced-motion) {

    [data-sonner-toast],
    [data-sonner-toast]>*,
    .sonner-loading-bar {
        transition: none !important;
        animation: auto ease 0s 1 normal none running none !important;
    }
}