        /* 
           VINTAGE SCRAPBOOK THEME 
        */

        :root {
            --paper-bg: #f4e4bc;
            --paper-texture: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.15'/%3E%3C/svg%3E");
            --ink-color: #2c1a0b;
            --vintage-green: #3d5a37;
            /* Muted olive/botanical green */
            --sepia-border: #8b7355;
            --tape-color: rgba(255, 255, 255, 0.4);
        }

        body {
            background-color: #dcca9c;
            background-image:
                var(--paper-texture),
                radial-gradient(circle at 10% 20%, rgba(0, 0, 0, 0.05) 0%, transparent 20%),
                radial-gradient(circle at 90% 80%, rgba(0, 0, 0, 0.05) 0%, transparent 20%);
            color: var(--ink-color);
            font-family: 'EB Garamond', serif;
            overflow-x: hidden;
        }

        /* Handwritten Decorative Headers */
        .heading-page {
            padding-top: 50px;
            padding-bottom: 50px;
            text-align: center;
            position: relative;
        }

        .heading-page h2 {
            font-family: 'Playfair Display', serif;
            font-weight: 800;
            font-size: clamp(2.5rem, 6vw, 4rem);
            color: #1a0f00;
            text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.1);
            margin-top: 10px;
            position: relative;
            display: inline-block;
            transform: rotate(-2deg);
        }

        .heading-page h6 {
            font-family: 'Special Elite', cursive;
            color: var(--vintage-green);
            font-size: 1.1rem;
            letter-spacing: 2px;
            text-transform: uppercase;
            background: #fdfdf5;
            padding: 5px 15px;
            border: 1px dashed var(--vintage-green);
            display: inline-block;
            transform: rotate(1deg);
            box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
        }

        .header-icons {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 10px;
        }
        
        .nav-icon {
            color: var(--ink-color);
            text-decoration: none;
            font-size: 1.5rem;
            transition: all 0.3s;
            background: #fdfdf5;
            width: 45px;
            height: 45px;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 1px dashed var(--vintage-green);
            border-radius: 50%;
            box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
        }

        .nav-icon:hover {
            color: var(--vintage-green);
            transform: scale(1.05);
            background: #f4e4bc;
        }

        /* Scrapbook Container */
        .reg-container {
            padding-bottom: 100px;
        }

        /* Main Form Card - The "glued paper" style */
        .reg-card {
            background-color: #fdfdf5;
            background-image: var(--paper-texture);
            border-radius: 2px;
            padding: 50px;
            border: none;
            position: relative;
            box-shadow:
                0 1px 4px rgba(0, 0, 0, 0.3),
                0 0 40px rgba(0, 0, 0, 0.1) inset;
            transform: rotate(-1deg);
            margin-top: 20px;
            max-width: 100%;
        }

        /* Washi Tape Effect on Corners */
        .reg-card::before {
            content: '';
            position: absolute;
            top: -15px;
            left: 50%;
            transform: translateX(-50%) rotate(2deg);
            width: 120px;
            height: 35px;
            background-color: rgba(255, 255, 255, 0.6);
            border-left: 2px dashed rgba(0, 0, 0, 0.1);
            border-right: 2px dashed rgba(0, 0, 0, 0.1);
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
            z-index: 10;
        }

        /* Cutout / Collage effect background element */
        .reg-card::after {
            content: '';
            position: absolute;
            bottom: -20px;
            right: -20px;
            width: 100px;
            height: 100px;
            background: url('https://www.transparenttextures.com/patterns/aged-paper.png');
            /* Fallback texture */
            background-color: var(--vintage-green);
            opacity: 0.2;
            z-index: -1;
            transform: rotate(15deg);
        }

        fieldset {
            border: none;
            margin-bottom: 40px;
            padding: 25px;
            background-color: rgba(255, 255, 255, 0.4);
            background-image: var(--paper-texture);
            border: 1px solid rgba(139, 115, 85, 0.2);
            border-radius: 2px;
            box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.05);
            position: relative;
        }

        /* Alternate fieldset rotations for collage look */
        fieldset:nth-of-type(even) {
            transform: rotate(0.5deg);
        }

        fieldset:nth-of-type(odd) {
            transform: rotate(-0.5deg);
        }

        legend {
            font-family: 'Pinyon Script', cursive;
            /* Handwritten cursive */
            color: #1a0f00;
            font-size: clamp(1.5rem, 5vw, 2.2rem);
            border-bottom: none;
            margin-bottom: 20px;
            padding: 0 10px;
            width: auto;
            text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.8);
        }

        /* Typewriter Inputs */
        .form-group label {
            font-family: 'Special Elite', monospace;
            color: var(--vintage-green);
            font-size: 0.85rem;
            text-transform: uppercase;
            letter-spacing: 1px;
            opacity: 0.9;
        }

        .form-control-custom {
            display: block;
            width: 100%;
            background: transparent;
            border: 2px solid transparent;
            border-bottom: 2px dashed var(--sepia-border);
            border-radius: 0;
            color: #000;
            font-family: 'Special Elite', monospace;
            /* Typewriter font */
            font-size: clamp(0.95rem, 3vw, 1.1rem);
            padding: 10px 5px;
            margin: 5px 0 15px 0;
            transition: all 0.3s;
        }

        .form-control-custom:focus {
            background: rgba(255, 255, 200, 0.3);
            border-bottom-style: solid;
            border-bottom-color: var(--vintage-green);
            box-shadow: none;
            outline: none;
        }

        .form-control-custom::placeholder {
            color: rgba(139, 115, 85, 0.5);
            font-style: italic;
            font-size: 0.95rem;
        }

        /* Summary Panel - Tag/Ticket Style */
        .event-summary-panel {
            background-color: #efe5d4;
            background-image:
                var(--paper-texture),
                repeating-linear-gradient(45deg, rgba(0, 0, 0, 0.02) 0px, rgba(0, 0, 0, 0.02) 2px, transparent 2px, transparent 8px);
            border: 1px solid var(--sepia-border);
            padding: 30px;
            position: sticky;
            top: 40px;
            transform: rotate(2deg);
            box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.15);
        }

        /* "Hole punch" reinforcement ring effect */
        .event-summary-panel::before {
            content: '';
            position: absolute;
            top: 15px;
            left: 50%;
            transform: translateX(-50%);
            width: 15px;
            height: 15px;
            background: #333;
            border-radius: 50%;
            box-shadow: 0 0 0 5px #e0cda8;
            /* Ring color */
        }

        /* String hanging the tag */
        .event-summary-panel::after {
            content: '';
            position: absolute;
            top: -50px;
            left: 50%;
            height: 60px;
            width: 2px;
            background: rgba(0, 0, 0, 0.3);
            transform: rotate(-2deg);
            z-index: -1;
        }

        .summary-title {
            font-family: 'Playfair Display', serif;
            font-weight: 700;
            text-align: center;
            font-size: 1.5rem;
            border-bottom: 2px double var(--sepia-border);
            padding-bottom: 10px;
            margin-bottom: 25px;
            margin-top: 15px;
        }

        .summary-item {
            margin-bottom: 22px;
        }

        .summary-label {
            font-family: 'Special Elite', monospace;
            font-size: 0.75rem;
            color: var(--vintage-green);
            display: block;
            margin-bottom: 4px;
        }

        .summary-value {
            font-family: 'EB Garamond', serif;
            font-weight: 600;
            font-size: clamp(1rem, 4vw, 1.2rem);
            color: #2c1a0b;
        }

        /* Submit Button - Vintage Ticket/Stamp */
        .btn-submit {
            background-color: var(--vintage-green);
            color: #fdfdf5;
            font-family: 'Special Elite', cursive;
            font-size: clamp(1rem, 4vw, 1.3rem);
            text-transform: uppercase;
            letter-spacing: 2px;
            padding: 15px;
            border: 2px dashed rgba(255, 255, 255, 0.3);
            border-radius: 2px;
            box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
            transition: all 0.2s;
            margin-top: 20px;
            position: relative;
            overflow: hidden;
        }

        /* Grunge overlay on button */
        .btn-submit::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: var(--paper-texture);
            opacity: 0.3;
            pointer-events: none;
        }

        .btn-submit:hover:not(:disabled) {
            transform: translate(-2px, -2px);
            box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.2);
            background-color: #2e4629;
            color: #fff;
        }

        .btn-submit:active:not(:disabled) {
            transform: translate(2px, 2px);
            box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
        }

        /* Checkbox & Radio */
        .form-check-input {
            border-color: var(--sepia-border);
            cursor: pointer;
        }

        .form-check-input:checked {
            background-color: var(--vintage-green);
            border-color: var(--vintage-green);
        }

        .form-check-label {
            color: var(--ink-color);
            font-family: 'EB Garamond', serif;
            font-size: 1.05rem;
            cursor: pointer;
            padding-left: 5px;
        }

        /* Coffee Ring Element */
        .coffee-stain {
            position: absolute;
            z-index: 0;
            width: 150px;
            height: 150px;
            border: 5px solid rgba(86, 54, 36, 0.15);
            border-radius: 50%;
            pointer-events: none;
            filter: blur(2px);
        }

        .coffee-stain::before {
            content: '';
            position: absolute;
            top: 10px;
            left: 5px;
            right: 5px;
            bottom: 5px;
            border: 2px solid rgba(86, 54, 36, 0.1);
            border-radius: 52%;
        }

        /* Mobile Adjustments */
        @media (max-width: 991px) {
            .event-summary-panel {
                transform: rotate(0deg);
                top: 0;
                padding: 15px;
                margin-bottom: 15px;
            }

            .summary-title {
                font-size: 1.1rem;
                margin-bottom: 10px;
                margin-top: 0;
            }

            .summary-item {
                margin-bottom: 8px;
            }

            #s_fee_container {
                margin-top: 10px !important;
                padding-top: 8px !important;
            }

            #s_fee {
                font-size: 1.2rem !important;
            }

            .reg-card {
                transform: rotate(0deg);
                padding: 20px;
            }

            .event-summary-panel::before,
            .event-summary-panel::after {
                display: none;
            }
        }

        /* Preview Cert Box */
        .cert-preview-box {
            background-color: #fdfdf5;
            background-image: var(--paper-texture);
            border: 4px double var(--sepia-border);
            padding: 30px;
            font-family: 'Playfair Display', serif;
            position: relative;
            box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.02);
        }

        .cert-preview-box::after {
            color: rgba(0, 0, 0, 0.03);
            font-family: 'Special Elite', cursive;
        }

        /* Success Panel */
        .success-panel {
            text-align: center;
            padding: 50px 20px;
            display: none;
        }

        .success-icon {
            font-size: 4rem;
            color: #00a651;
            margin-bottom: 20px;
            animation: popIn 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
        }

        @keyframes popIn {
            0% {
                transform: scale(0);
                opacity: 0;
            }

            100% {
                transform: scale(1);
                opacity: 1;
            }
        }

        /* Utilities */
        .hidden {
            display: none !important;
        }

        .repeater-row {
            display: flex;
            gap: 10px;
            align-items: flex-end;
            margin-bottom: 10px;
            background: rgba(0, 0, 0, 0.02);
            padding: 10px;
            border-radius: 5px;
        }

        /* Animations & Highlights */
        @keyframes pulse-yellow {
            0% {
                box-shadow: 0 0 0 0 rgba(255, 193, 7, 0.7);
            }

            70% {
                box-shadow: 0 0 0 20px rgba(255, 193, 7, 0);
            }

            100% {
                box-shadow: 0 0 0 0 rgba(255, 193, 7, 0);
            }
        }

        .pulse-animation {
            animation: pulse-yellow 2s infinite;
            border-style: solid !important;
            border-color: #ffc107 !important;
            transform: scale(1.05) rotate(-1deg) !important;
        }

        /* SweetAlert2 Vintage Customization */
        .vintage-swal-popup {
            font-family: 'EB Garamond', serif !important;
            border: 2px solid var(--sepia-border) !important;
            box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.2) !important;
        }

        .vintage-swal-button {
            font-family: 'Special Elite', cursive !important;
            letter-spacing: 1px !important;
            text-transform: uppercase !important;
        }

        .payment-verified-highlight {
            background-color: #fff3cd !important;
            border: 2px solid #ffeeba !important;
        }

        @media (max-width: 991px) {
            .event-summary-panel {
                position: relative;
                top: 0;
                margin-bottom: 30px;
            }

            .col-lg-4 {
                order: -1;
            }
        }

        /* Modern File Upload Styling */
        .file-upload-wrapper {
            position: relative;
            width: 100%;
        }

        .file-upload-dropzone {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            border: 2px dashed var(--sepia-border);
            border-radius: 4px;
            padding: 25px;
            text-align: center;
            background: #fffef0;
            background-image: var(--paper-texture);
            transition: all 0.3s ease;
            cursor: pointer;
            position: relative;
            overflow: hidden;
            color: var(--ink-color);
            font-family: 'Special Elite', monospace;
        }

        .file-upload-dropzone:hover {
            border-color: var(--vintage-green);
            background: #fdfdf5;
            transform: translateY(-2px);
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }

        .file-upload-dropzone i {
            font-size: 1.5rem;
            color: #00a651;
            margin-bottom: 8px;
            display: block;
        }

        .file-upload-dropzone span {
            display: block;
            font-size: 0.85rem;
            color: #ccc;
        }

        .file-upload-dropzone .file-name {
            font-weight: 600;
            color: #fff;
            margin-top: 5px;
            font-size: 0.9rem;
        }

        .file-upload-input {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: 0;
            cursor: pointer;
        }

/* Premium Compact Certificate Preview */
.cert-preview-box {
    max-width: 500px !important;
    margin: 0 auto !important;
    padding: 25px 20px !important;
    text-align: center !important;
}

.cert-preview-box h3 {
    color: #3b2a1a !important; /* Deep brown */
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
}

.cert-preview-box p {
    color: #634b38 !important; /* Soft brown */
    font-size: 0.95rem !important;
    font-style: italic !important;
    margin: 5px 0 !important;
    font-family: 'Playfair Display', serif !important;
}

.cert-preview-box h2 {
    color: #1a1005 !important; /* Very dark rich brown for name */
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    margin: 12px 0 !important;
}

.cert-preview-box h4 {
    color: #4a3424 !important; /* Dark brown for event title */
    font-size: 1.25rem !important;
    margin-top: 8px !important;
    margin-bottom: 0 !important;
}

/* Custom Checkbox Style */
.checkbox-wrapper-62 input[type="checkbox"].check,
.checkbox-wrapper-62 input[type="radio"].check {
  visibility: hidden;
  display: none;
}
.checkbox-wrapper-62 *,
.checkbox-wrapper-62 ::after,
.checkbox-wrapper-62 ::before {
  box-sizing: border-box;
}
.checkbox-wrapper-62 {
  position: relative;
  display: flex;
  overflow: hidden;
  align-items: center;
  margin-bottom: 0.5rem;
}
.checkbox-wrapper-62 .check {
  width: 30px;
  height: 30px;
  position: absolute;
  opacity: 0;
  cursor: pointer;
  z-index: 2;
  left: 0;
  margin: 0;
}
.checkbox-wrapper-62 .label {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin: 0;
}
.checkbox-wrapper-62 .label svg {
  vertical-align: middle;
  margin-right: 10px;
  flex-shrink: 0;
}
.checkbox-wrapper-62 .path1 {
  stroke-dasharray: 400;
  stroke-dashoffset: 400;
  transition: .5s all;
}
.checkbox-wrapper-62 .check:checked + .label svg g path {
  stroke-dashoffset: 0;
}
.checkbox-wrapper-62 .check:disabled + .label {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.checkbox-wrapper-62 .check:disabled + .label svg rect,
.checkbox-wrapper-62 .check:disabled + .label svg path {
  stroke: #999 !important;
}
:root {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
}
.container {
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) { .container { max-width: 540px; } }
@media (min-width: 768px) { .container { max-width: 720px; } }
@media (min-width: 992px) { .container { max-width: 960px; } }
@media (min-width: 1200px) { .container { max-width: 1140px; } }
@media (min-width: 1400px) { .container { max-width: 1320px; } }

.row {
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-.5 * var(--bs-gutter-x));
  margin-left: calc(-.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-top: var(--bs-gutter-y);
}

.col-12 { flex: 0 0 auto; width: 100%; }
.col-6 { flex: 0 0 auto; width: 50%; }
.col-8 { flex: 0 0 auto; width: 66.66666667%; }
.col-4 { flex: 0 0 auto; width: 33.33333333%; }
.col-2 { flex: 0 0 auto; width: 16.66666667%; }

@media (min-width: 768px) {
  .col-md-6 { flex: 0 0 auto; width: 50%; }
  .col-md-4 { flex: 0 0 auto; width: 33.33333333%; }
  .col-md-8 { flex: 0 0 auto; width: 66.66666667%; }
}

@media (min-width: 992px) {
  .col-lg-12 { flex: 0 0 auto; width: 100%; }
  .col-lg-8 { flex: 0 0 auto; width: 66.66666667%; }
  .col-lg-6 { flex: 0 0 auto; width: 50%; }
  .col-lg-4 { flex: 0 0 auto; width: 33.33333333%; }
  .col-lg-2 { flex: 0 0 auto; width: 16.66666667%; }
}

/* Utilities */
.mb-0 { margin-bottom: 0 !important; }
.mb-1 { margin-bottom: 0.25rem !important; }
.mb-2 { margin-bottom: 0.5rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.mb-5 { margin-bottom: 3rem !important; }
.mt-0 { margin-top: 0 !important; }
.mt-1 { margin-top: 0.25rem !important; }
.mt-2 { margin-top: 0.5rem !important; }
.mt-3 { margin-top: 1rem !important; }
.mt-4 { margin-top: 1.5rem !important; }
.mt-5 { margin-top: 3rem !important; }
.ml-2 { margin-left: 0.5rem !important; }
.mr-2 { margin-right: 0.5rem !important; }

@media (min-width: 768px) {
  .mb-md-0 { margin-bottom: 0 !important; }
}

.w-100 { width: 100% !important; }
.text-center { text-align: center !important; }
.text-right { text-align: right !important; }
.bg-white { background-color: #fff !important; }
.shadow-sm { box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important; }

.d-flex { display: flex !important; }
.align-items-center { align-items: center !important; }
.justify-content-between { justify-content: space-between !important; }
.justify-content-center { justify-content: center !important; }

.text-muted { color: #6c757d !important; }

/* Forms */
.form-group {
  margin-bottom: 1rem;
}
.form-control {
  display: block;
  width: 100%;
  padding: .375rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: .25rem;
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.form-control:focus {
  color: #212529;
  background-color: #fff;
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 .25rem rgba(13,110,253,.25);
}

/* Cards (if used) */
.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0,0,0,.125);
  border-radius: .25rem;
}
.card-body {
  flex: 1 1 auto;
  padding: 1rem 1rem;
}
.es-53425f {margin-top:2px;} .es-389400 {color:inherit;text-decoration:none;} .es-c42e0e {margin-bottom:0;} .es-b0473a {margin-bottom:15px;} .es-53bdbc {font-size:1.5rem;color:#111827;margin-bottom:20px;font-weight:700;} .es-d53c7c {max-width:1000px;margin:0 auto;color:#4b5563;font-size:0.95rem;line-height:1.8;} .es-7addc9 {padding:60px 20px;background-color:#f8f9fa;border-top:1px solid #eef0f2;margin-top:40px;} .es-621e20 {display:flex;justify-content:center;flex-wrap:wrap;} .es-feff6e {display:flex;justify-content:center;width:100%;} .es-138f8f {margin-bottom:40px;} .es-08ff7a {color:#0b5394;} .es-7f4ee4 {margin-right:8px;} .es-255461 {font-size:0.9rem} .es-da5cd6 {flex:1} .es-b1f70f {margin-right:15px;} .es-7b6770 {font-style:italic;margin-bottom:5px;} .es-a5d2ba {font-weight:600;} .es-439d83 {color:var(--vintage-green);text-decoration:none;border-bottom:1px dashed var(--vintage-green);} .es-5c937a {font-size:0.95rem;margin-top:5px;display:inline-block;} .es-52f076 {text-align:center;padding:30px 20px;font-family:'EB Garamond',serif;color:var(--ink-color);font-size:1.1rem;} .es-851f44 {font-family:'EB Garamond',serif;font-weight:700;} .es-3a6336 {font-family:'Special Elite',monospace;} .es-c8dca5 {background:rgba(255,255,255,0.4);background-image:var(--paper-texture);border:1px dashed var(--sepia-border);text-align:left;transform:rotate(1deg);} .es-9aabba {font-family:'Special Elite',monospace;color:var(--ink-color);} .es-a89d16 {color:var(--ink-color);font-family:'Playfair Display',serif;font-style:italic;} .es-1126d6 {color:var(--vintage-green);} .es-7f54e2 {text-transform:none;} .es-fb2a71 {font-size:0.8rem;} .es-af89d6 {font-size:0.75rem;} .es-b28cb1 {font-size:1.2rem;} .es-087bdd {padding:15px;} .es-654ad5 {color:#dc3545;font-size:0.7rem;line-height:1.2;font-family:'Special Elite',monospace;} .es-1d1638 {margin-bottom:2px;} .es-72affd {color:#d39e00;font-size:0.85rem;font-weight:700;text-align:center;margin-top:10px;font-family:'Special Elite',monospace;} .es-aae430 {background-color:var(--vintage-green);border:none;padding:15px;font-weight:700;font-family:'Special Elite',cursive;} .es-5882ad {font-size:1rem;color:var(--ink-color);font-family:'Special Elite',monospace;line-height:1.6;} .es-19a4ff {font-family:'Playfair Display',serif;font-weight:700;color:var(--ink-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-size:clamp(1rem,4vw,1.5rem);} .es-4daeee {font-family:'Special Elite',cursive;margin:15px 0;} .es-28bc6a {font-family:'Special Elite',cursive;margin-bottom:15px;} .es-cc882c {font-family:'Playfair Display',serif;margin-bottom:20px;} .es-cdd8ca {text-align:center;} .es-d5bf85 {font-size:0.8rem;font-style:italic;} .es-b30001 {font-size:0.85rem;} .es-1f873f {height:auto;min-height:45px;display:flex;flex-wrap:wrap;gap:10px;} .es-084bb1 {font-size:0.9rem;font-style:italic;} .es-6039a3 {margin-top:0;} .es-dcab71 {font-size:0.7rem;} .es-a1fc96 {font-size:1.2rem;margin-bottom:4px;} .es-440dce {padding:10px;} .es-6a4e0f {display:inline;text-transform:none;} .es-8878cc {font-size:1rem;color:#6b7280;font-weight:600;} .es-2b9652 {font-size:1.5rem;color:#00a651;font-weight:800;} .es-4c7b33 {margin-top:20px;padding-top:15px;border-top:1px dashed #d4d4c0;} .es-bc5a7f {font-weight:800;font-size:1.2rem;padding:4px 12px;border-radius:6px;border:2px solid;display:inline-block;box-shadow:2px 2px 0px rgba(0,0,0,0.1);margin-top:5px;} .es-17d01b {display:none;align-items:center;} .es-d13e44 {transform:rotate(-1deg);} .es-4c9557 {font-size:60px;font-weight:600;} .es-e2b74b {margin:0;} .es-9611c1 {color:#0369a1;} .es-50f660 {padding-left:24px;border-color:rgba(3,105,161,.25);color:#0c4a6e;} .es-d9fce5 {position:absolute;left:10px;top:50%;transform:translateY(-50%);font-weight:700;color:#0369a1;font-size:0.9rem;} .es-d85c4e {position:relative;} .es-e7ec54 {margin-bottom:0} .es-bff69f {padding-left:24px;} .es-184d0b {position:absolute;left:10px;top:50%;transform:translateY(-50%);font-weight:700;color:var(--green-500);font-size:0.9rem;} .es-5a5479 {opacity:.5;font-weight:500;} .es-fdd1f8 {display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;} .es-ea2c11 {padding:60px 20px;max-width:1200px;margin:0 auto;} .es-a69ef3 {max-width:600px;margin:0 auto;text-align:center;} .es-ee72c3 {margin-bottom:20px;text-align:center;} .es-b0138f {color:#097969;font-weight:700;font-size:0.85rem;letter-spacing:2px;text-transform:uppercase;margin-bottom:15px;} .es-58fcf2 {text-align:center;background-color:#f9f9f9;padding-bottom:40px;} .es-8756a6 {padding:20px 0;border-top:1px solid rgba(0,0,0,0.1);font-size:0.85rem;color:#555;} .es-51625c {margin-top:50px;} .es-fc96d7 {display:grid;grid-template-columns:repeat(2,max-content);gap:12px;align-items:start;} .es-7002f9 {margin-bottom:20px;} .es-75b722 {color:#085D36 !important;font-weight:700 !important;text-transform:uppercase !important;} @font-face {font-family:'Inertia Matte';src:url('../fonts/inertia-matte.woff2') format('woff2');font-weight:normal;font-style:normal;font-display:swap;} @font-face {font-family:'Isidora';src:url('../fonts/Isidora.woff2') format('woff2');font-weight:normal;font-style:normal;font-display:swap;} @font-face {font-family:'Gibed';src:url('../fonts/gibed.woff2') format('woff2');font-weight:normal;font-style:normal;font-display:swap;} :root {--emerald-deep:#085D36;--emerald-royal:#004B3B;--emerald-main:#097969;--emerald-light:#50C878;--emerald-accent:#187C19;--royal-crimson:#940128;--rich-gold:#D4AF37;--primary-color:var(--emerald-main);--secondary-color:var(--emerald-light);--accent-color:var(--royal-crimson);--bg-dark:#021a11;--bg-darker:#01100a;--text-white:#f0fff4;--font-nature:'Isidora',sans-serif;--font-gibed:'Gibed',sans-serif;--font-size-base:clamp(1rem,0.85rem + 0.6vw,1.25rem);--font-size-xs:clamp(0.75rem,0.7rem + 0.25vw,0.875rem);--font-size-sm:clamp(0.875rem,0.8rem + 0.375vw,1rem);--font-size-md:clamp(1rem,0.9rem + 0.5vw,1.25rem);--font-size-lg:clamp(1.25rem,1rem + 1vw,2rem);--font-size-xl:clamp(1.5rem,1rem + 2vw,3rem);--font-size-2xl:clamp(2rem,1.5rem + 2.5vw,4rem);--font-size-3xl:clamp(2.5rem,1.5rem + 4vw,5rem);--font-size-4xl:clamp(3rem,2rem + 5vw,6rem);--container-padding:clamp(1rem,2vw,3rem);} *,*::before,*::after {box-sizing:border-box;} html,body,div,span,h1,h2,h3,h4,h5,h6,p,a,img,small,em,strong,i,ul,li,form,input,select,option,button,table,tr,td,th,header,footer,nav,section,article,aside,figure,template {margin:0;padding:0;border:0;outline:0;} ul,li {list-style:none;} header,nav,section,article,aside,footer {display:block;} body.events-page {font-family:var(--font-nature);font-weight:400;background-color:var(--bg-dark);color:var(--text-white);font-size:var(--font-size-base);line-height:1.5;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;} html::-webkit-scrollbar,body::-webkit-scrollbar {display:none;} a {text-decoration:none !important;color:var(--primary-color);} a:hover {color:var(--secondary-color);} h1 {font-size:var(--font-size-4xl);font-family:var(--font-gibed);} h2 {font-size:var(--font-size-3xl);font-family:var(--font-gibed);} h3 {font-size:var(--font-size-2xl);font-family:var(--font-gibed);} h4 {font-size:var(--font-size-xl);font-family:var(--font-gibed);} h5 {font-size:var(--font-size-lg);font-family:var(--font-gibed);} h6 {font-size:var(--font-size-md);font-family:var(--font-gibed);} p {font-size:var(--font-size-base);line-height:1.6;color:var(--text-white);} img,video,canvas,svg {display:block;max-width:100%;height:auto;}  ::selection {background:var(--primary-color);color:var(--text-white);} ::-moz-selection {background:var(--primary-color);color:var(--text-white);} body.events-page {background-color:#f8f9fa;color:#1a1a2e;} .container {width:100% !important;max-width:min(90rem,100% - var(--container-padding) * 2) !important;margin-inline:auto !important;padding-inline:var(--container-padding) !important;} .skip-link {position:absolute;left:-9999px;top:0;z-index:9999;background:#097969;color:#ffffff;padding:10px 18px;border-radius:0 0 8px 0;font-weight:700;text-decoration:none;} .skip-link:focus {left:0;color:#ffffff;}
/* User requested all fonts to be strong/bold, excluding header elements */
body:not(.z-header-area), p:not(.z-header-area *), span:not([class*='fa-']):not(.z-header-area *), div:not([class*='fa-']):not(.z-header-area *), a:not(.z-header-area *), li:not(.z-header-area *), button:not(.z-header-area *), input:not(.z-header-area *), label:not(.z-header-area *), h1:not(.z-header-area *), h2:not(.z-header-area *), h3:not(.z-header-area *), h4:not(.z-header-area *), h5:not(.z-header-area *), h6:not(.z-header-area *), th:not(.z-header-area *), td:not(.z-header-area *) {
    font-weight: 700 !important;
}

/* Ancient Pin Design for Checkboxes and Radios */
.reg-container input[type="radio"], 
.reg-container input[type="checkbox"],
.form-check-input {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 16px !important;
    height: 16px !important;
    background-color: rgba(255, 255, 255, 0.5) !important;
    border: 2px solid #5a4b3c !important; /* Vintage brown/bronze border */
    border-radius: 50% !important; /* Round for both to look like pins */
    position: relative !important;
    cursor: pointer !important;
    margin-right: 8px !important;
    vertical-align: middle !important;
    box-shadow: inset 1px 1px 3px rgba(0,0,0,0.2) !important;
}

.reg-container input[type="radio"]:checked::after, 
.reg-container input[type="checkbox"]:checked::after,
.form-check-input:checked::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 10px !important;
    height: 10px !important;
    /* Brass/Bronze pin head look */
    background: radial-gradient(circle at 35% 35%, #f4d068, #b8860b 50%, #5a4b3c) !important;
    border-radius: 50% !important;
    box-shadow: 1px 2px 4px rgba(0,0,0,0.6), inset -1px -1px 2px rgba(0,0,0,0.3) !important;
}

.reg-container input[type="radio"]:hover, 
.reg-container input[type="checkbox"]:hover,
.form-check-input:hover {
    border-color: #b8860b !important;
}

/* Adjust labels for vintage spacing */
.form-check-label {
    cursor: pointer;
    padding-top: 2px;
}

/* Custom Form Check Spacing */
.reg-container .form-check-inline {
    margin-right: 20px !important;
}
.reg-container .form-check-inline:last-child {
    margin-right: 0 !important;
}
.form-check-label {
    margin-left: 4px;
}
