/*
 * ╔══════════════════════════════════════════════════════════════════╗
 * ║  YADUWANSHI.COM — TAILWIND PRODUCTION BUILD  v2.14.0            ║
 * ║  Generated: 2026-06-17                                          ║
 * ║  Replaces: cdn.tailwindcss.com on all 16 pages                  ║
 * ║  Includes: all utility classes used + custom theme extensions   ║
 * ╚══════════════════════════════════════════════════════════════════╝
 *
 * HOW THIS WAS BUILT:
 *   All Tailwind class names were extracted from every *.html and
 *   *.js file in the project. Only classes actually used are included,
 *   keeping the file ~92% smaller than the full CDN build (~380 kB).
 *
 * CUSTOM THEME TOKENS (matches tailwind.config in every page):
 *   maroon  : DEFAULT #7B1D1D  light #9B2D2D  dark #5B0D0D
 *   gold    : DEFAULT #C8970A  light #E8B020
 *   ivory   :          #FEFDF8
 *   font-playfair: 'Playfair Display', serif
 */

/* ─────────────────────────────────────────────────────
   1. PREFLIGHT / RESET
───────────────────────────────────────────────────── */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
body{margin:0;line-height:inherit}
hr{height:0;color:inherit;border-top-width:1px}
abbr:where([title]){text-decoration:underline dotted}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
b,strong{font-weight:bolder}
code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1em}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-0.25em}
sup{top:-0.5em}
table{text-indent:0;border-color:inherit;border-collapse:collapse}
button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button,select{text-transform:none}
button,[type='button'],[type='reset'],[type='submit']{-webkit-appearance:button;background-color:transparent;background-image:none}
:-moz-focusring{outline:auto}
:-moz-ui-invalid{box-shadow:none}
progress{vertical-align:baseline}
::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}
[type='search']{-webkit-appearance:textfield;outline-offset:-2px}
::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
summary{display:list-item}
blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}
fieldset{margin:0;padding:0}
legend{padding:0}
ol,ul,menu{list-style:none;margin:0;padding:0}
textarea{resize:vertical}
input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}
button,[role="button"]{cursor:pointer}
:disabled{cursor:default}
img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}
img,video{max-width:100%;height:auto}

/* ─────────────────────────────────────────────────────
   2. LAYOUT — DISPLAY
───────────────────────────────────────────────────── */
.block{display:block}
.inline-block{display:inline-block}
.inline{display:inline}
.flex{display:flex}
.inline-flex{display:inline-flex}
.grid{display:grid}
.hidden{display:none}
.table{display:table}
.contents{display:contents}

/* ─────────────────────────────────────────────────────
   3. POSITION
───────────────────────────────────────────────────── */
.static{position:static}
.fixed{position:fixed}
.absolute{position:absolute}
.relative{position:relative}
.sticky{position:sticky}
.inset-0{inset:0}
.inset-x-0{left:0;right:0}
.top-0{top:0}
.right-0{right:0}
.bottom-0{bottom:0}
.left-0{left:0}
.top-1{top:0.25rem}
.top-1\/2{top:50%}
.right-1{right:0.25rem}
.top-2{top:0.5rem}
.right-2{right:0.5rem}
.top-3{top:0.75rem}
.right-3{right:0.75rem}
.top-4{top:1rem}
.right-4{right:1rem}
.top-full{top:100%}
.right-full{right:100%}
.top-\[64px\]{top:64px}
.-top-1{top:-0.25rem}
.-right-1{right:-0.25rem}
.z-0{z-index:0}
.z-10{z-index:10}
.z-20{z-index:20}
.z-30{z-index:30}
.z-40{z-index:40}
.z-50{z-index:50}
.z-\[100\]{z-index:100}
.z-\[999\]{z-index:999}
.z-\[9999\]{z-index:9999}
.-translate-y-1\/2{--tw-translate-y:-50%;transform:translateY(var(--tw-translate-y))}

/* ─────────────────────────────────────────────────────
   4. FLEXBOX
───────────────────────────────────────────────────── */
.flex-row{flex-direction:row}
.flex-col{flex-direction:column}
.flex-wrap{flex-wrap:wrap}
.flex-nowrap{flex-wrap:nowrap}
.flex-1{flex:1 1 0%}
.flex-auto{flex:1 1 auto}
.flex-none{flex:none}
.flex-shrink-0{flex-shrink:0}
.flex-grow{flex-grow:1}
.items-start{align-items:flex-start}
.items-center{align-items:center}
.items-end{align-items:flex-end}
.items-stretch{align-items:stretch}
.justify-start{justify-content:flex-start}
.justify-center{justify-content:center}
.justify-end{justify-content:flex-end}
.justify-between{justify-content:space-between}
.justify-around{justify-content:space-around}
.self-center{align-self:center}
.self-start{align-self:flex-start}
.self-end{align-self:flex-end}

/* ─────────────────────────────────────────────────────
   5. GRID
───────────────────────────────────────────────────── */
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.col-span-1{grid-column:span 1/span 1}
.col-span-2{grid-column:span 2/span 2}
.col-span-3{grid-column:span 3/span 3}
.col-span-full{grid-column:1/-1}

/* ─────────────────────────────────────────────────────
   6. GAP / SPACE
───────────────────────────────────────────────────── */
.gap-0{gap:0}
.gap-0\.5{gap:0.125rem}
.gap-1{gap:0.25rem}
.gap-1\.5{gap:0.375rem}
.gap-2{gap:0.5rem}
.gap-2\.5{gap:0.625rem}
.gap-3{gap:0.75rem}
.gap-4{gap:1rem}
.gap-5{gap:1.25rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}
.gap-10{gap:2.5rem}
.gap-x-2{column-gap:0.5rem}
.gap-x-4{column-gap:1rem}
.gap-y-2{row-gap:0.5rem}
.gap-y-4{row-gap:1rem}
.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.25rem*var(--tw-space-y-reverse))}
.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.5rem*var(--tw-space-y-reverse))}
.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.75rem*var(--tw-space-y-reverse))}
.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}
.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}
.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}
.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.5rem*var(--tw-space-x-reverse));margin-left:calc(0.5rem*(1 - var(--tw-space-x-reverse)))}
.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(0.75rem*var(--tw-space-x-reverse));margin-left:calc(0.75rem*(1 - var(--tw-space-x-reverse)))}

/* ─────────────────────────────────────────────────────
   7. SIZING
───────────────────────────────────────────────────── */
.w-0{width:0}
.w-1{width:0.25rem}
.w-2{width:0.5rem}
.w-3{width:0.75rem}
.w-4{width:1rem}
.w-5{width:1.25rem}
.w-6{width:1.5rem}
.w-7{width:1.75rem}
.w-8{width:2rem}
.w-9{width:2.25rem}
.w-10{width:2.5rem}
.w-11{width:2.75rem}
.w-12{width:3rem}
.w-14{width:3.5rem}
.w-16{width:4rem}
.w-20{width:5rem}
.w-24{width:6rem}
.w-28{width:7rem}
.w-32{width:8rem}
.w-36{width:9rem}
.w-40{width:10rem}
.w-48{width:12rem}
.w-56{width:14rem}
.w-64{width:16rem}
.w-72{width:18rem}
.w-80{width:20rem}
.w-96{width:24rem}
.w-auto{width:auto}
.w-px{width:1px}
.w-full{width:100%}
.w-screen{width:100vw}
.w-1\/2{width:50%}
.w-1\/3{width:33.333333%}
.w-2\/3{width:66.666667%}
.w-1\/4{width:25%}
.w-3\/4{width:75%}
.min-w-0{min-width:0}
.min-w-full{min-width:100%}
.max-w-xs{max-width:20rem}
.max-w-sm{max-width:24rem}
.max-w-md{max-width:28rem}
.max-w-lg{max-width:32rem}
.max-w-xl{max-width:36rem}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-5xl{max-width:64rem}
.max-w-6xl{max-width:72rem}
.max-w-7xl{max-width:80rem}
.max-w-full{max-width:100%}
.max-w-screen-sm{max-width:640px}
.max-w-screen-md{max-width:768px}
.max-w-screen-lg{max-width:1024px}
.max-w-screen-xl{max-width:1280px}
.h-0{height:0}
.h-1{height:0.25rem}
.h-2{height:0.5rem}
.h-3{height:0.75rem}
.h-4{height:1rem}
.h-5{height:1.25rem}
.h-6{height:1.5rem}
.h-7{height:1.75rem}
.h-8{height:2rem}
.h-9{height:2.25rem}
.h-10{height:2.5rem}
.h-11{height:2.75rem}
.h-12{height:3rem}
.h-14{height:3.5rem}
.h-16{height:4rem}
.h-20{height:5rem}
.h-24{height:6rem}
.h-28{height:7rem}
.h-32{height:8rem}
.h-36{height:9rem}
.h-40{height:10rem}
.h-48{height:12rem}
.h-56{height:14rem}
.h-64{height:16rem}
.h-80{height:20rem}
.h-96{height:24rem}
.h-auto{height:auto}
.h-px{height:1px}
.h-full{height:100%}
.h-screen{height:100vh}
.min-h-0{min-height:0}
.min-h-full{min-height:100%}
.min-h-screen{min-height:100vh}
.max-h-full{max-height:100%}
.max-h-screen{max-height:100vh}
.max-h-96{max-height:24rem}
.max-h-\[90vh\]{max-height:90vh}
.max-h-\[80vh\]{max-height:80vh}

/* ─────────────────────────────────────────────────────
   8. PADDING & MARGIN
───────────────────────────────────────────────────── */
.p-0{padding:0}
.p-0\.5{padding:0.125rem}
.p-1{padding:0.25rem}
.p-1\.5{padding:0.375rem}
.p-2{padding:0.5rem}
.p-2\.5{padding:0.625rem}
.p-3{padding:0.75rem}
.p-4{padding:1rem}
.p-5{padding:1.25rem}
.p-6{padding:1.5rem}
.p-7{padding:1.75rem}
.p-8{padding:2rem}
.p-10{padding:2.5rem}
.p-12{padding:3rem}
.px-0{padding-left:0;padding-right:0}
.px-1{padding-left:0.25rem;padding-right:0.25rem}
.px-1\.5{padding-left:0.375rem;padding-right:0.375rem}
.px-2{padding-left:0.5rem;padding-right:0.5rem}
.px-2\.5{padding-left:0.625rem;padding-right:0.625rem}
.px-3{padding-left:0.75rem;padding-right:0.75rem}
.px-4{padding-left:1rem;padding-right:1rem}
.px-5{padding-left:1.25rem;padding-right:1.25rem}
.px-6{padding-left:1.5rem;padding-right:1.5rem}
.px-8{padding-left:2rem;padding-right:2rem}
.py-0{padding-top:0;padding-bottom:0}
.py-0\.5{padding-top:0.125rem;padding-bottom:0.125rem}
.py-1{padding-top:0.25rem;padding-bottom:0.25rem}
.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem}
.py-2{padding-top:0.5rem;padding-bottom:0.5rem}
.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}
.py-3{padding-top:0.75rem;padding-bottom:0.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.py-8{padding-top:2rem;padding-bottom:2rem}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem}
.py-12{padding-top:3rem;padding-bottom:3rem}
.py-16{padding-top:4rem;padding-bottom:4rem}
.pt-0{padding-top:0}
.pt-1{padding-top:0.25rem}
.pt-2{padding-top:0.5rem}
.pt-3{padding-top:0.75rem}
.pt-4{padding-top:1rem}
.pt-6{padding-top:1.5rem}
.pr-0{padding-right:0}
.pr-1{padding-right:0.25rem}
.pr-2{padding-right:0.5rem}
.pr-3{padding-right:0.75rem}
.pr-4{padding-right:1rem}
.pb-0{padding-bottom:0}
.pb-1{padding-bottom:0.25rem}
.pb-2{padding-bottom:0.5rem}
.pb-3{padding-bottom:0.75rem}
.pb-4{padding-bottom:1rem}
.pb-6{padding-bottom:1.5rem}
.pl-0{padding-left:0}
.pl-1{padding-left:0.25rem}
.pl-2{padding-left:0.5rem}
.pl-3{padding-left:0.75rem}
.pl-4{padding-left:1rem}
.pl-5{padding-left:1.25rem}
.m-0{margin:0}
.m-1{margin:0.25rem}
.m-2{margin:0.5rem}
.m-4{margin:1rem}
.m-auto{margin:auto}
.mx-0{margin-left:0;margin-right:0}
.mx-1{margin-left:0.25rem;margin-right:0.25rem}
.mx-2{margin-left:0.5rem;margin-right:0.5rem}
.mx-4{margin-left:1rem;margin-right:1rem}
.mx-auto{margin-left:auto;margin-right:auto}
.my-0{margin-top:0;margin-bottom:0}
.my-1{margin-top:0.25rem;margin-bottom:0.25rem}
.my-2{margin-top:0.5rem;margin-bottom:0.5rem}
.my-3{margin-top:0.75rem;margin-bottom:0.75rem}
.my-4{margin-top:1rem;margin-bottom:1rem}
.mt-0{margin-top:0}
.mt-0\.5{margin-top:0.125rem}
.mt-1{margin-top:0.25rem}
.mt-1\.5{margin-top:0.375rem}
.mt-2{margin-top:0.5rem}
.mt-3{margin-top:0.75rem}
.mt-4{margin-top:1rem}
.mt-5{margin-top:1.25rem}
.mt-6{margin-top:1.5rem}
.mt-8{margin-top:2rem}
.mt-10{margin-top:2.5rem}
.mt-12{margin-top:3rem}
.mt-auto{margin-top:auto}
.mr-0{margin-right:0}
.mr-0\.5{margin-right:0.125rem}
.mr-1{margin-right:0.25rem}
.mr-1\.5{margin-right:0.375rem}
.mr-2{margin-right:0.5rem}
.mr-3{margin-right:0.75rem}
.mr-4{margin-right:1rem}
.mb-0{margin-bottom:0}
.mb-0\.5{margin-bottom:0.125rem}
.mb-1{margin-bottom:0.25rem}
.mb-1\.5{margin-bottom:0.375rem}
.mb-2{margin-bottom:0.5rem}
.mb-3{margin-bottom:0.75rem}
.mb-4{margin-bottom:1rem}
.mb-5{margin-bottom:1.25rem}
.mb-6{margin-bottom:1.5rem}
.mb-8{margin-bottom:2rem}
.ml-0{margin-left:0}
.ml-0\.5{margin-left:0.125rem}
.ml-1{margin-left:0.25rem}
.ml-2{margin-left:0.5rem}
.ml-3{margin-left:0.75rem}
.ml-4{margin-left:1rem}
.ml-auto{margin-left:auto}
.-mt-1{margin-top:-0.25rem}
.-mt-2{margin-top:-0.5rem}
.-mt-px{margin-top:-1px}

/* ─────────────────────────────────────────────────────
   9. TYPOGRAPHY
───────────────────────────────────────────────────── */
.font-playfair{font-family:'Playfair Display',serif}
.font-sans{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.text-xs{font-size:0.75rem;line-height:1rem}
.text-sm{font-size:0.875rem;line-height:1.25rem}
.text-base{font-size:1rem;line-height:1.5rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.text-2xl{font-size:1.5rem;line-height:2rem}
.text-3xl{font-size:1.875rem;line-height:2.25rem}
.text-4xl{font-size:2.25rem;line-height:2.5rem}
.text-5xl{font-size:3rem;line-height:1}
.font-thin{font-weight:100}
.font-light{font-weight:300}
.font-normal{font-weight:400}
.font-medium{font-weight:500}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.font-extrabold{font-weight:800}
.font-black{font-weight:900}
.italic{font-style:italic}
.not-italic{font-style:normal}
.leading-none{line-height:1}
.leading-tight{line-height:1.25}
.leading-snug{line-height:1.375}
.leading-normal{line-height:1.5}
.leading-relaxed{line-height:1.625}
.leading-loose{line-height:2}
.tracking-tight{letter-spacing:-0.025em}
.tracking-normal{letter-spacing:0}
.tracking-wide{letter-spacing:0.025em}
.tracking-wider{letter-spacing:0.05em}
.tracking-widest{letter-spacing:0.1em}
.text-left{text-align:left}
.text-center{text-align:center}
.text-right{text-align:right}
.text-justify{text-align:justify}
.uppercase{text-transform:uppercase}
.lowercase{text-transform:lowercase}
.capitalize{text-transform:capitalize}
.normal-case{text-transform:none}
.underline{text-decoration-line:underline}
.line-through{text-decoration-line:line-through}
.no-underline{text-decoration-line:none}
.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.text-ellipsis{text-overflow:ellipsis}
.whitespace-normal{white-space:normal}
.whitespace-nowrap{white-space:nowrap}
.whitespace-pre{white-space:pre}
.whitespace-pre-wrap{white-space:pre-wrap}
.break-normal{overflow-wrap:normal;word-break:normal}
.break-words{overflow-wrap:break-word}
.break-all{word-break:break-all}
.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.list-disc{list-style-type:disc}
.list-decimal{list-style-type:decimal}
.list-none{list-style-type:none}
.list-inside{list-style-position:inside}
.list-outside{list-style-position:outside}
.pl-4.list-disc,.pl-5.list-disc,.pl-6.list-disc{padding-left:revert}

/* ─────────────────────────────────────────────────────
   10. COLOUR — TEXT
───────────────────────────────────────────────────── */
.text-transparent{color:transparent}
.text-white{color:#fff}
.text-black{color:#000}
.text-gray-50{color:#f9fafb}
.text-gray-100{color:#f3f4f6}
.text-gray-200{color:#e5e7eb}
.text-gray-300{color:#d1d5db}
.text-gray-400{color:#9ca3af}
.text-gray-500{color:#6b7280}
.text-gray-600{color:#4b5563}
.text-gray-700{color:#374151}
.text-gray-800{color:#1f2937}
.text-gray-900{color:#111827}
.text-red-400{color:#f87171}
.text-red-500{color:#ef4444}
.text-red-600{color:#dc2626}
.text-red-700{color:#b91c1c}
.text-orange-400{color:#fb923c}
.text-orange-500{color:#f97316}
.text-orange-600{color:#ea580c}
.text-yellow-400{color:#facc15}
.text-yellow-500{color:#eab308}
.text-yellow-600{color:#ca8a04}
.text-green-400{color:#4ade80}
.text-green-500{color:#22c55e}
.text-green-600{color:#16a34a}
.text-green-700{color:#15803d}
.text-blue-400{color:#60a5fa}
.text-blue-500{color:#3b82f6}
.text-blue-600{color:#2563eb}
.text-blue-700{color:#1d4ed8}
.text-indigo-500{color:#6366f1}
.text-indigo-600{color:#4f46e5}
.text-purple-500{color:#a855f7}
.text-purple-600{color:#9333ea}
.text-pink-400{color:#f472b6}
.text-pink-500{color:#ec4899}
.text-pink-600{color:#db2777}
/* Custom theme tokens */
.text-maroon{color:#7B1D1D}
.text-maroon-light{color:#9B2D2D}
.text-maroon-dark{color:#5B0D0D}
.text-gold{color:#C8970A}
.text-gold-light{color:#E8B020}
.text-ivory{color:#FEFDF8}

/* ─────────────────────────────────────────────────────
   11. COLOUR — BACKGROUND
───────────────────────────────────────────────────── */
.bg-transparent{background-color:transparent}
.bg-white{background-color:#fff}
.bg-black{background-color:#000}
.bg-gray-50{background-color:#f9fafb}
.bg-gray-100{background-color:#f3f4f6}
.bg-gray-200{background-color:#e5e7eb}
.bg-gray-300{background-color:#d1d5db}
.bg-gray-400{background-color:#9ca3af}
.bg-gray-500{background-color:#6b7280}
.bg-gray-600{background-color:#4b5563}
.bg-gray-700{background-color:#374151}
.bg-gray-800{background-color:#1f2937}
.bg-gray-900{background-color:#111827}
.bg-red-50{background-color:#fef2f2}
.bg-red-100{background-color:#fee2e2}
.bg-red-200{background-color:#fecaca}
.bg-red-500{background-color:#ef4444}
.bg-red-600{background-color:#dc2626}
.bg-orange-50{background-color:#fff7ed}
.bg-orange-100{background-color:#ffedd5}
.bg-yellow-50{background-color:#fefce8}
.bg-yellow-100{background-color:#fef9c3}
.bg-yellow-400{background-color:#facc15}
.bg-amber-50{background-color:#fffbeb}
.bg-green-50{background-color:#f0fdf4}
.bg-green-100{background-color:#dcfce7}
.bg-green-500{background-color:#22c55e}
.bg-blue-50{background-color:#eff6ff}
.bg-blue-100{background-color:#dbeafe}
.bg-blue-500{background-color:#3b82f6}
.bg-indigo-50{background-color:#eef2ff}
.bg-purple-50{background-color:#faf5ff}
.bg-purple-100{background-color:#f3e8ff}
.bg-pink-50{background-color:#fdf2f8}
.bg-pink-100{background-color:#fce7f3}
/* Custom theme tokens */
.bg-maroon{background-color:#7B1D1D}
.bg-maroon-light{background-color:#9B2D2D}
.bg-maroon-dark{background-color:#5B0D0D}
.bg-gold{background-color:#C8970A}
.bg-gold-light{background-color:#E8B020}
.bg-ivory{background-color:#FEFDF8}

/* ─────────────────────────────────────────────────────
   12. BORDER
───────────────────────────────────────────────────── */
.border{border-width:1px}
.border-0{border-width:0}
.border-2{border-width:2px}
.border-4{border-width:4px}
.border-t{border-top-width:1px}
.border-t-0{border-top-width:0}
.border-r{border-right-width:1px}
.border-b{border-bottom-width:1px}
.border-b-0{border-bottom-width:0}
.border-l{border-left-width:1px}
.border-l-2{border-left-width:2px}
.border-l-4{border-left-width:4px}
.border-solid{border-style:solid}
.border-dashed{border-style:dashed}
.border-none{border-style:none}
.border-transparent{border-color:transparent}
.border-white{border-color:#fff}
.border-gray-100{border-color:#f3f4f6}
.border-gray-200{border-color:#e5e7eb}
.border-gray-300{border-color:#d1d5db}
.border-gray-400{border-color:#9ca3af}
.border-red-200{border-color:#fecaca}
.border-red-300{border-color:#fca5a5}
.border-yellow-200{border-color:#fde68a}
.border-green-200{border-color:#bbf7d0}
.border-blue-200{border-color:#bfdbfe}
.border-maroon{border-color:#7B1D1D}
.border-gold{border-color:#C8970A}
.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}
.divide-gray-100>:not([hidden])~:not([hidden]){border-color:#f3f4f6}
.divide-gray-200>:not([hidden])~:not([hidden]){border-color:#e5e7eb}

/* ─────────────────────────────────────────────────────
   13. BORDER RADIUS
───────────────────────────────────────────────────── */
.rounded-none{border-radius:0}
.rounded-sm{border-radius:0.125rem}
.rounded{border-radius:0.25rem}
.rounded-md{border-radius:0.375rem}
.rounded-lg{border-radius:0.5rem}
.rounded-xl{border-radius:0.75rem}
.rounded-2xl{border-radius:1rem}
.rounded-3xl{border-radius:1.5rem}
.rounded-full{border-radius:9999px}
.rounded-t{border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}
.rounded-t-lg{border-top-left-radius:0.5rem;border-top-right-radius:0.5rem}
.rounded-t-xl{border-top-left-radius:0.75rem;border-top-right-radius:0.75rem}
.rounded-b-lg{border-bottom-left-radius:0.5rem;border-bottom-right-radius:0.5rem}
.rounded-b-xl{border-bottom-left-radius:0.75rem;border-bottom-right-radius:0.75rem}
.rounded-l-lg{border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem}
.rounded-r-lg{border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem}

/* ─────────────────────────────────────────────────────
   14. SHADOWS
───────────────────────────────────────────────────── */
.shadow-none{box-shadow:none}
.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0/0.05)}
.shadow{box-shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1)}
.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1)}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1)}
.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0/0.1),0 8px 10px -6px rgb(0 0 0/0.1)}
.shadow-2xl{box-shadow:0 25px 50px -12px rgb(0 0 0/0.25)}
.drop-shadow{filter:drop-shadow(0 1px 2px rgb(0 0 0/0.1)) drop-shadow(0 1px 1px rgb(0 0 0/0.06))}

/* ─────────────────────────────────────────────────────
   15. OPACITY
───────────────────────────────────────────────────── */
.opacity-0{opacity:0}
.opacity-25{opacity:0.25}
.opacity-40{opacity:0.4}
.opacity-50{opacity:0.5}
.opacity-60{opacity:0.6}
.opacity-70{opacity:0.7}
.opacity-75{opacity:0.75}
.opacity-80{opacity:0.8}
.opacity-90{opacity:0.9}
.opacity-100{opacity:1}

/* ─────────────────────────────────────────────────────
   16. OVERFLOW & SCROLL
───────────────────────────────────────────────────── */
.overflow-auto{overflow:auto}
.overflow-hidden{overflow:hidden}
.overflow-visible{overflow:visible}
.overflow-scroll{overflow:scroll}
.overflow-x-auto{overflow-x:auto}
.overflow-x-hidden{overflow-x:hidden}
.overflow-y-auto{overflow-y:auto}
.overflow-y-hidden{overflow-y:hidden}
.overflow-y-scroll{overflow-y:scroll}
.scroll-smooth{scroll-behavior:smooth}
.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}
.scrollbar-hide::-webkit-scrollbar{display:none}

/* ─────────────────────────────────────────────────────
   17. CURSOR & POINTER EVENTS
───────────────────────────────────────────────────── */
.cursor-auto{cursor:auto}
.cursor-default{cursor:default}
.cursor-pointer{cursor:pointer}
.cursor-not-allowed{cursor:not-allowed}
.pointer-events-none{pointer-events:none}
.pointer-events-auto{pointer-events:auto}
.select-none{user-select:none}
.select-text{user-select:text}
.select-all{user-select:all}

/* ─────────────────────────────────────────────────────
   18. TRANSITIONS & TRANSFORMS
───────────────────────────────────────────────────── */
.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms}
.duration-75{transition-duration:75ms}
.duration-100{transition-duration:100ms}
.duration-150{transition-duration:150ms}
.duration-200{transition-duration:200ms}
.duration-300{transition-duration:300ms}
.duration-500{transition-duration:500ms}
.duration-700{transition-duration:700ms}
.ease-linear{transition-timing-function:linear}
.ease-in{transition-timing-function:cubic-bezier(0.4,0,1,1)}
.ease-out{transition-timing-function:cubic-bezier(0,0,0.2,1)}
.ease-in-out{transition-timing-function:cubic-bezier(0.4,0,0.2,1)}
.scale-95{transform:scale(0.95)}
.scale-100{transform:scale(1)}
.scale-105{transform:scale(1.05)}
.scale-110{transform:scale(1.1)}
.rotate-0{transform:rotate(0deg)}
.rotate-45{transform:rotate(45deg)}
.rotate-90{transform:rotate(90deg)}
.rotate-180{transform:rotate(180deg)}
.-rotate-90{transform:rotate(-90deg)}
.translate-x-0{transform:translateX(0)}
.translate-y-0{transform:translateY(0)}
.-translate-x-full{transform:translateX(-100%)}
.translate-x-full{transform:translateX(100%)}
.-translate-y-full{transform:translateY(-100%)}

/* ─────────────────────────────────────────────────────
   19. FILTERS & BACKDROP
───────────────────────────────────────────────────── */
.blur{filter:blur(8px)}
.blur-sm{filter:blur(4px)}
.blur-md{filter:blur(12px)}
.blur-lg{filter:blur(16px)}
.backdrop-blur{backdrop-filter:blur(8px)}
.backdrop-blur-sm{backdrop-filter:blur(4px)}
.backdrop-blur-md{backdrop-filter:blur(12px)}
.backdrop-blur-lg{backdrop-filter:blur(16px)}

/* ─────────────────────────────────────────────────────
   20. OBJECT FIT / ASPECT RATIO
───────────────────────────────────────────────────── */
.object-cover{object-fit:cover}
.object-contain{object-fit:contain}
.object-center{object-position:center}
.object-top{object-position:top}
.aspect-square{aspect-ratio:1/1}
.aspect-video{aspect-ratio:16/9}

/* ─────────────────────────────────────────────────────
   21. RING / OUTLINE
───────────────────────────────────────────────────── */
.ring-0{box-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color)}
.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + 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)}
.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 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)}
.ring-maroon{--tw-ring-color:#7B1D1D}
.ring-gold{--tw-ring-color:#C8970A}
.outline-none{outline:2px solid transparent;outline-offset:2px}

/* ─────────────────────────────────────────────────────
   22. ANIMATION
───────────────────────────────────────────────────── */
.animate-spin{animation:spin 1s linear infinite}
.animate-ping{animation:ping 1s cubic-bezier(0,0,0.2,1) infinite}
.animate-pulse{animation:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite}
.animate-bounce{animation:bounce 1s infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes ping{75%,100%{transform:scale(2);opacity:0}}
@keyframes pulse{50%{opacity:.5}}
@keyframes bounce{0%,100%{transform:translateY(-25%);animation-timing-function:cubic-bezier(0.8,0,1,1)}50%{transform:none;animation-timing-function:cubic-bezier(0,0,0.2,1)}}

/* ─────────────────────────────────────────────────────
   23. VISIBILITY
───────────────────────────────────────────────────── */
.visible{visibility:visible}
.invisible{visibility:hidden}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}

/* ─────────────────────────────────────────────────────
   24. MISC UTILITIES
───────────────────────────────────────────────────── */
.container{width:100%;margin-left:auto;margin-right:auto}
.box-border{box-sizing:border-box}
.box-content{box-sizing:content-box}
.isolate{isolation:isolate}
.float-left{float:left}
.float-right{float:right}
.clear-both{clear:both}
.indent-0{text-indent:0}
.align-top{vertical-align:top}
.align-middle{vertical-align:middle}
.align-bottom{vertical-align:bottom}
.resize{resize:both}
.resize-none{resize:none}

/* ─────────────────────────────────────────────────────
   25. FOCUS STATES (a11y)
───────────────────────────────────────────────────── */
.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}
.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 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)}
.focus\:border-gold:focus{border-color:#C8970A}
.focus\:border-maroon:focus{border-color:#7B1D1D}

/* ─────────────────────────────────────────────────────
   26. HOVER STATES
───────────────────────────────────────────────────── */
.hover\:bg-gray-50:hover{background-color:#f9fafb}
.hover\:bg-gray-100:hover{background-color:#f3f4f6}
.hover\:bg-amber-50:hover{background-color:#fffbeb}
.hover\:text-maroon:hover{color:#7B1D1D}
.hover\:text-gold:hover{color:#C8970A}
.hover\:text-white:hover{color:#fff}
.hover\:border-gold:hover{border-color:#C8970A}
.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1)}
.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1)}
.hover\:scale-105:hover{transform:scale(1.05)}
.hover\:-translate-y-1:hover{transform:translateY(-0.25rem)}
.hover\:-translate-y-2:hover{transform:translateY(-0.5rem)}
.hover\:opacity-80:hover{opacity:0.8}
.group:hover .group-hover\:opacity-100{opacity:1}
.group:hover .group-hover\:visible{visibility:visible}
.group:hover .group-hover\:scale-105{transform:scale(1.05)}

/* ─────────────────────────────────────────────────────
   27. RESPONSIVE — sm: (640px)
───────────────────────────────────────────────────── */
@media(min-width:640px){
  .sm\:block{display:block}
  .sm\:flex{display:flex}
  .sm\:hidden{display:none}
  .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sm\:flex-row{flex-direction:row}
  .sm\:items-center{align-items:center}
  .sm\:gap-4{gap:1rem}
  .sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}
  .sm\:py-4{padding-top:1rem;padding-bottom:1rem}
  .sm\:w-auto{width:auto}
  .sm\:max-w-md{max-width:28rem}
  .sm\:text-sm{font-size:0.875rem;line-height:1.25rem}
  .sm\:text-base{font-size:1rem;line-height:1.5rem}
  .sm\:text-lg{font-size:1.125rem;line-height:1.75rem}
  .sm\:text-xl{font-size:1.25rem;line-height:1.75rem}
  .sm\:text-2xl{font-size:1.5rem;line-height:2rem}
  .sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .sm\:text-left{text-align:left}
  .sm\:mt-0{margin-top:0}
  .sm\:mt-4{margin-top:1rem}
  .sm\:ml-4{margin-left:1rem}
}

/* ─────────────────────────────────────────────────────
   28. RESPONSIVE — md: (768px)
───────────────────────────────────────────────────── */
@media(min-width:768px){
  .md\:block{display:block}
  .md\:flex{display:flex}
  .md\:grid{display:grid}
  .md\:hidden{display:none}
  .md\:inline-flex{display:inline-flex}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .md\:col-span-2{grid-column:span 2/span 2}
  .md\:flex-row{flex-direction:row}
  .md\:flex-col{flex-direction:column}
  .md\:items-start{align-items:flex-start}
  .md\:items-center{align-items:center}
  .md\:justify-between{justify-content:space-between}
  .md\:gap-4{gap:1rem}
  .md\:gap-6{gap:1.5rem}
  .md\:gap-8{gap:2rem}
  .md\:px-6{padding-left:1.5rem;padding-right:1.5rem}
  .md\:px-8{padding-left:2rem;padding-right:2rem}
  .md\:py-8{padding-top:2rem;padding-bottom:2rem}
  .md\:p-6{padding:1.5rem}
  .md\:p-8{padding:2rem}
  .md\:w-auto{width:auto}
  .md\:w-64{width:16rem}
  .md\:w-80{width:20rem}
  .md\:w-1\/2{width:50%}
  .md\:max-w-xl{max-width:36rem}
  .md\:max-w-2xl{max-width:42rem}
  .md\:text-sm{font-size:0.875rem;line-height:1.25rem}
  .md\:text-base{font-size:1rem;line-height:1.5rem}
  .md\:text-lg{font-size:1.125rem;line-height:1.75rem}
  .md\:text-xl{font-size:1.25rem;line-height:1.75rem}
  .md\:text-2xl{font-size:1.5rem;line-height:2rem}
  .md\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .md\:text-4xl{font-size:2.25rem;line-height:2.5rem}
  .md\:text-5xl{font-size:3rem;line-height:1}
  .md\:text-left{text-align:left}
  .md\:text-center{text-align:center}
  .md\:mt-0{margin-top:0}
  .md\:mt-4{margin-top:1rem}
  .md\:mt-8{margin-top:2rem}
  .md\:ml-0{margin-left:0}
  .md\:ml-4{margin-left:1rem}
  .md\:ml-8{margin-left:2rem}
  .md\:mb-0{margin-bottom:0}
  .md\:mb-4{margin-bottom:1rem}
  .md\:order-first{order:-9999}
  .md\:order-last{order:9999}
  .md\:sticky{position:sticky}
  .md\:top-4{top:1rem}
}

/* ─────────────────────────────────────────────────────
   29. RESPONSIVE — lg: (1024px)
───────────────────────────────────────────────────── */
@media(min-width:1024px){
  .lg\:block{display:block}
  .lg\:flex{display:flex}
  .lg\:grid{display:grid}
  .lg\:hidden{display:none}
  .lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .lg\:col-span-1{grid-column:span 1/span 1}
  .lg\:col-span-2{grid-column:span 2/span 2}
  .lg\:col-span-3{grid-column:span 3/span 3}
  .lg\:flex-row{flex-direction:row}
  .lg\:items-center{align-items:center}
  .lg\:gap-6{gap:1.5rem}
  .lg\:gap-8{gap:2rem}
  .lg\:px-8{padding-left:2rem;padding-right:2rem}
  .lg\:py-12{padding-top:3rem;padding-bottom:3rem}
  .lg\:p-8{padding:2rem}
  .lg\:w-64{width:16rem}
  .lg\:w-80{width:20rem}
  .lg\:w-96{width:24rem}
  .lg\:max-w-3xl{max-width:48rem}
  .lg\:max-w-4xl{max-width:56rem}
  .lg\:text-2xl{font-size:1.5rem;line-height:2rem}
  .lg\:text-3xl{font-size:1.875rem;line-height:2.25rem}
  .lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}
  .lg\:mt-0{margin-top:0}
  .lg\:ml-0{margin-left:0}
  .lg\:sticky{position:sticky}
  .lg\:top-4{top:1rem}
  .lg\:top-20{top:5rem}
}

/* ─────────────────────────────────────────────────────
   30. RESPONSIVE — xl: (1280px)
───────────────────────────────────────────────────── */
@media(min-width:1280px){
  .xl\:block{display:block}
  .xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .xl\:col-span-1{grid-column:span 1/span 1}
  .xl\:col-span-2{grid-column:span 2/span 2}
  .xl\:px-0{padding-left:0;padding-right:0}
}

/* ─────────────────────────────────────────────────────
   31. LAST-CHILD / FIRST-CHILD VARIANTS
───────────────────────────────────────────────────── */
.last\:border-0:last-child{border-width:0}
.last\:mb-0:last-child{margin-bottom:0}
.first\:mt-0:first-child{margin-top:0}

/* ─────────────────────────────────────────────────────
   32. FA SPINNER (FontAwesome compatibility)
───────────────────────────────────────────────────── */
.fa-spin{animation:fa-spin 1s infinite linear}
@keyframes fa-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
