a, a:visited {
	color:#031c66;
}
a:hover {
	color:#031c66;
}

/* LAYOUT */
body {
	background-color:#e0e0e0;	color:#000000;
	font-family:Helvetica, Arial, sans-serif;
    font-size:14px;
}

.fButton, 
.fForm .buttons input,
.page-filters input {
	background-color:#616061;
	font-size: 14px;
	padding: 8px 14px;
	color:#ffffff !important;
	text-decoration: none;
	display: inline-block;
	border: 0px none;
}

#fWrapper {
	margin:20px auto;
	width:1024px;
	
		max-width: 1024px;
	width: 100%;
	}

.fForm input,
.fForm select,
.fForm textarea {
	border-color: #a3a3a3;
}
.fForm input:focus,
.fForm select:focus,
.fForm textarea:focus {
    outline:none;
}

#fPage {
	border:1px solid #a3a3a3;background-color:#ffffff;}

#fHeader {
	background-color:#ffffff;
			display:none	border:0px none;
}
#fContent h1 {
	color:#000000;
	font-family:Helvetica, Arial, sans-serif;
    font-size:18px;
}

.fModuleTitle,
.fForm legend {
	background-color:#616061;	
}
.fModuleTitle h3,
.fForm legend {
	color:#ffffff;
	font-family:Helvetica, Arial, sans-serif;
    font-size:14px;
}
.fForm legend {
	display:block;
	width:100%;
	padding:0px !important;
}

#fSidebarLeft {
	display:none;
}

#fSidebarRight {
display:none;
}

#fContent {
	background-color:#ffffff;}
#fContentContainer {
	width: 1024px;
	margin: 0 auto;
}

#fMatter {
	width: 100%;
}
#fMatter.sR {
		width:1004px;	
}
#fMatter.sL {
		width:1004px;	
}
#fMatter.sR.sL {
		width:1004px;
}


#fFooter {
	border:0px none;
}

/* FORM */
.fForm input, .fForm select, .fForm textarea {
font-size:;
}

.fListing {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #a3a3a3;
}
.fListing td,
.fListing th {
	padding: 0.5rem;
	border-bottom: 1px solid #a3a3a3;
	vertical-align: top;
	text-align: left;
}
.fListing th {
	color:#ffffff;
	font-family:Helvetica, Arial, sans-serif;
    font-size:14px;
	background-color:#616061;
	text-transform: uppercase;
}

#fContentContainer {
	max-width: 100%;
}
@media (max-width:1024px) {
	#fMatter.sR {
		width: calc(100% - 0px);	
	}
	#fMatter.sL {
		width: calc(100% - 0px);
	}
	#fMatter.sR.sL {
		width: calc(100% - 0px);
	}
	#fSidebarRight {
		width: 0px;
	}
}

@media (max-width: 768px) {
	.fForm label {
		width: 100%;
		text-align: left;
	}
	.fForm .buttons {
		text-align: left;
	}
	.fForm .hint,
	.fForm .error {
		margin-left: 0;
	}
}
@media (max-width: 576px) {
	#fMatter,
	#fSidebarRight {
		width: 100% !important;
	}
}

/* ================================================================
   Rehab to Recovery – eRegNow custom registration theme
   Visual direction: Richmond Fellowship conference website
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');

:root {
    --rehab-green: #176f59;
    --rehab-green-dark: #0f5b49;
    --rehab-green-deep: #0d4c3e;
    --rehab-green-soft: #dcefe8;
    --rehab-green-pale: #eef7f3;
    --rehab-cream: #f4f1eb;
    --rehab-white: #ffffff;
    --rehab-ink: #1f2d28;
    --rehab-muted: #66736e;
    --rehab-border: #dfe6e2;
    --rehab-danger: #b42318;
    --rehab-shadow: 0 20px 55px rgba(20, 74, 60, 0.12);
    --rehab-radius-xl: 24px;
    --rehab-radius-lg: 16px;
    --rehab-radius-md: 11px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    color: var(--rehab-ink);
    background:
        radial-gradient(circle at 12% 4%, rgba(23, 111, 89, 0.08), transparent 30%),
        var(--rehab-cream);
    font-family: 'DM Sans', Arial, sans-serif;
    font-size: 15px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body::before {
    content: '';
    display: block;
    height: 7px;
    background: linear-gradient(90deg, var(--rehab-green-deep), var(--rehab-green), #2f8a70);
}

a {
    color: var(--rehab-green);
    text-decoration: none;
    transition: color 0.2s ease, background-color 0.2s ease, transform 0.2s ease;
}

a:hover,
a:focus {
    color: var(--rehab-green-dark);
    text-decoration: none;
}

/* Keep platform-only modules hidden as in the original stylesheet. */
.fModuleFeeSlab,
.fFormPRovideInformation,
#field-para-data_54223 {
    display: none !important;
}

#fWrapper {
    width: 100%;
    min-height: 100vh;
    margin: 0 auto;
}

#fPage {
    width: 100%;
    border: 0;
    background: transparent;
}

/* ----------------------------------------------------------------
   Header
   ---------------------------------------------------------------- */
#fHeader {
    position: relative;
    z-index: 20;
    width: 100%;
    min-height: 92px;
    padding: 16px clamp(18px, 4vw, 68px);
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid rgba(15, 91, 73, 0.08);
    box-shadow: 0 8px 24px rgba(27, 55, 46, 0.05);
}

#fHeader h1 {
    margin: 0;
    color: var(--rehab-ink);
    font-family: 'DM Sans', Arial, sans-serif !important;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
    background-position: left center;
    background-repeat: no-repeat;
}

#fHeader h1 a {
    color: var(--rehab-ink);
}

#fHeader .tagline {
    display: block;
    margin-top: 3px;
    color: var(--rehab-muted);
    font-size: 12px;
    font-weight: 500;
}

#fNav ul.menu {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 14px 0 0;
    padding: 0;
    list-style: none;
}

#fNav ul.menu li {
    margin: 0;
}

#fNav ul.menu a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 7px 15px;
    color: var(--rehab-ink);
    background: #f2efea;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
}

#fNav ul.menu a:hover,
#fNav ul.menu a:focus {
    color: var(--rehab-white);
    background: var(--rehab-green);
}

/* ----------------------------------------------------------------
   Event title / hero
   ---------------------------------------------------------------- */
#fPageTitle {
    position: relative;
    width: min(1180px, calc(100% - 28px));
    margin: 18px auto 0;
    padding: clamp(44px, 7vw, 82px) clamp(24px, 6vw, 72px);
    overflow: hidden;
    color: var(--rehab-white);
    background:
        linear-gradient(90deg, rgba(9, 76, 61, 0.96), rgba(23, 111, 89, 0.90)),
        linear-gradient(135deg, #0c5746, #2b8a70);
    border-radius: var(--rehab-radius-xl);
    box-shadow: var(--rehab-shadow);
}

#fPageTitle::before,
#fPageTitle::after {
    content: '';
    position: absolute;
    pointer-events: none;
}

#fPageTitle::before {
    inset: 0;
    opacity: 0.22;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.18) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.18) 1px, transparent 1px);
    background-size: 220px 220px;
}

#fPageTitle::after {
    right: -120px;
    bottom: -180px;
    width: 420px;
    height: 420px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 50%;
    box-shadow:
        0 0 0 46px rgba(255, 255, 255, 0.035),
        0 0 0 94px rgba(255, 255, 255, 0.025);
}

#fPageTitle h1 {
    position: relative;
    z-index: 1;
    max-width: 800px;
    margin: 0;
    padding: 0;
    color: var(--rehab-white);
    font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(34px, 5vw, 58px) !important;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.02em;
    text-align: left;
    text-transform: none;
}

#fPageTitle h1::before {
    content: 'THE RICHMOND FELLOWSHIP SOCIETY (INDIA)';
    display: block;
    margin-bottom: 14px;
    font-family: 'DM Sans', Arial, sans-serif;
    font-size: clamp(12px, 1.4vw, 17px);
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

/* ----------------------------------------------------------------
   Main registration card
   ---------------------------------------------------------------- */
#fContent {
    position: relative;
    z-index: 5;
    top: 0;
    width: min(1040px, calc(100% - 28px));
    margin: -28px auto 64px !important;
    padding: 0;
    overflow: visible;
    background: var(--rehab-white);
    border: 1px solid rgba(23, 111, 89, 0.10);
    border-radius: var(--rehab-radius-xl);
    box-shadow: var(--rehab-shadow);
}

#fMatter {
    width: 100%;
    padding: clamp(22px, 4vw, 42px);
    font-size: 15px;
}

.fModuleContent {
    padding: 6px 0;
    color: var(--rehab-ink);
    font-size: 14px;
    text-align: left;
}

.fModuleContent a {
    color: var(--rehab-green);
    font-weight: 700;
    text-decoration: none;
}

.fModuleLoginInfo,
.fieldset-para {
    text-align: center;
}

/* ----------------------------------------------------------------
   Section cards
   ---------------------------------------------------------------- */
.fForm fieldset,
.fModule {
    min-width: 0;
    margin: 0 0 26px;
    padding: 0 24px 24px;
    overflow: hidden;
    background: var(--rehab-white);
    border: 1px solid var(--rehab-border);
    border-radius: var(--rehab-radius-lg);
}

.fForm legend,
.fModuleTitle {
    position: relative;
    display: block;
    width: calc(100% + 48px);
    max-width: none;
    margin: 0 -24px 22px;
    padding: 0;
    color: var(--rehab-green-deep);
    background: linear-gradient(90deg, var(--rehab-green-soft), var(--rehab-green-pale));
    border: 0;
    border-bottom: 1px solid rgba(23, 111, 89, 0.10);
    text-align: left;
    text-transform: none;
}

.fForm legend span,
.fModuleTitle h3,
.fModuleTitle {
    display: block;
    margin: 0;
    padding: 15px 20px !important;
    color: var(--rehab-green-deep);
    font-family: 'DM Sans', Arial, sans-serif;
    font-size: 17px !important;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0;
    text-align: left;
    text-transform: none;
}

.fModuleTitle h3::before,
.fForm legend::before {
    display: none;
}

.fForm p.heading,
p.heading {
    display: block;
    margin: 0 0 20px;
    padding: 14px 16px;
    color: #40514a;
    background: #f8faf9;
    border-left: 4px solid var(--rehab-green);
    border-radius: 0 var(--rehab-radius-md) var(--rehab-radius-md) 0;
    font-size: 13px;
    line-height: 1.65;
}

/* ----------------------------------------------------------------
   Form rows and fields
   ---------------------------------------------------------------- */
.fForm .field-para {
    display: grid;
    grid-template-columns: minmax(190px, 30%) minmax(0, 1fr);
    gap: 8px 24px;
    align-items: start;
    margin: 0;
    padding: 14px 0;
    border-bottom: 1px solid #edf1ef;
}

.fForm .field-para:last-child {
    border-bottom: 0;
}

.fForm label,
.fForm .label {
    display: block;
    width: 100%;
    margin: 0;
    padding: 4px 0;
    color: #30413a;
    font-size: 14px !important;
    line-height: 1.45;
    text-align: left;
}

.fForm label {
    font-weight: 700;
}

.fForm .label {
    color: var(--rehab-ink);
    font-weight: 500;
}

.fForm input:not([type='radio']):not([type='checkbox']):not([type='hidden']):not([type='submit']):not([type='button']),
.fForm select,
.fForm textarea {
    display: block;
    width: 100% !important;
    min-width: 0;
    margin: 0;
    padding: 11px 13px;
    color: var(--rehab-ink);
    background: var(--rehab-white);
    border: 1px solid #ccd7d2;
    border-radius: var(--rehab-radius-md);
    box-shadow: 0 1px 2px rgba(31, 45, 40, 0.04);
    font-family: 'DM Sans', Arial, sans-serif;
    font-size: 14px !important;
    line-height: 1.4;
    outline: 0;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.fForm input:not([type='radio']):not([type='checkbox']):not([type='hidden']):not([type='submit']):not([type='button']),
.fForm select {
    min-height: 44px;
}

.fForm textarea {
    min-height: 130px;
    resize: vertical;
    text-align: left;
}

.fForm select option {
    text-align: left;
}

.fForm input:focus,
.fForm select:focus,
.fForm textarea:focus {
    border-color: var(--rehab-green);
    box-shadow: 0 0 0 4px rgba(23, 111, 89, 0.12);
}

.fForm input[type='radio'],
.fForm input[type='checkbox'] {
    width: 17px !important;
    height: 17px !important;
    margin: 2px 8px 0 0;
    padding: 0;
    accent-color: var(--rehab-green);
    box-shadow: none;
}

.fForm .checks {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    align-items: flex-start;
}

.fForm .checks label,
.fForm table label {
    display: inline-flex;
    width: auto;
    gap: 7px;
    align-items: flex-start;
    padding: 0;
    font-weight: 600;
    text-align: left;
}

.fForm .hint,
.fForm .error {
    grid-column: 2;
    display: block;
    width: 100%;
    margin: 2px 0 0;
    font-size: 13px;
    line-height: 1.5;
    text-align: left;
}

.fForm .hint {
    color: var(--rehab-muted);
}

.fForm .error {
    color: var(--rehab-danger);
    font-weight: 600;
}

.fForm input.date {
    width: min(180px, 100%) !important;
}

.fForm input.small,
.fForm select.small,
.fForm input.smaller,
.fForm select.smaller,
select#data_50568,
input#data_55741,
input#data_55753 {
    width: 100% !important;
}

/* Costs shown alongside selection controls. */
.fForm .fFormCost,
#data_50568_cost_display.fFormCost,
#data_50972_cost_display {
    position: static;
    display: inline-flex;
    float: none;
    width: auto;
    margin: 8px 0 0;
    padding: 5px 10px;
    color: var(--rehab-green-deep);
    background: var(--rehab-green-pale);
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}

.registration_cost {
    width: auto;
}

/* ----------------------------------------------------------------
   Registration and financial tables
   ---------------------------------------------------------------- */
.fForm .registration_slab,
.fForm .financial,
table.registration_slab,
table.financial {
    width: 100%;
    margin: 8px 0 18px;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--rehab-border);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: var(--rehab-radius-md);
    font-size: 14px;
}

table.registration_slab td,
table.financial td,
table.registration_slab th,
table.financial th {
    padding: 12px 14px;
    vertical-align: middle;
    border: 0;
    border-bottom: 1px solid #e8eeeb;
    text-align: left;
}

table.registration_slab tr:last-child td,
table.financial tr:last-child td {
    border-bottom: 0;
}

table.registration_slab .heading td,
table.financial th {
    color: var(--rehab-white);
    background: var(--rehab-green);
    font-weight: 700;
}

table.registration_slab tr:hover td,
table.financial tr:hover td {
    background: var(--rehab-green-pale);
}

table.registration_slab td input,
table.registration_slab td select {
    width: auto !important;
}

.registration_slab .registration_fee {
    height: auto;
    padding-top: 0;
    font-weight: 600;
}

table.registration_slab .trsubtype label {
    font-size: 13px !important;
    font-weight: 500;
}

.registration_slab .trsubtype td {
    padding-top: 10px;
    padding-bottom: 10px;
    background: #fbfcfb;
}

table.registration_slab .lowlight {
    display: block;
    margin-top: 4px;
    color: var(--rehab-muted);
    font-size: 12px;
    font-weight: 400;
}

.fTable,
.tableTransaction,
.iframe {
    width: 100%;
    overflow-x: auto;
}

.tableTransaction td {
    padding: 10px;
    font-size: 13px;
}

.no-list {
    padding: 24px;
    color: var(--rehab-muted);
    background: #fafbf9;
    border: 1px dashed #ccd7d2;
    border-radius: var(--rehab-radius-md);
    text-align: center;
}

/* ----------------------------------------------------------------
   Buttons and action links
   ---------------------------------------------------------------- */
.buttons,
.fForm .buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin: 24px 0 4px;
    padding: 0;
    text-align: center;
}

.fForm .buttons input,
.fForm .buttons input.submit,
.fForm input[type='submit'],
.fForm input[type='button'],
.page-filters a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto !important;
    min-width: 154px;
    min-height: 44px;
    margin: 0;
    padding: 10px 22px;
    color: var(--rehab-white) !important;
    background: var(--rehab-green);
    border: 1px solid var(--rehab-green);
    border-radius: 999px;
    box-shadow: none;
    font-family: 'DM Sans', Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-transform: none;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.fForm .buttons input:hover,
.fForm .buttons input.submit:hover,
.fForm input[type='submit']:hover,
.fForm input[type='button']:hover,
.page-filters a:hover {
    color: var(--rehab-white) !important;
    background: var(--rehab-green-dark);
    border-color: var(--rehab-green-dark);
    box-shadow: 0 10px 22px rgba(15, 91, 73, 0.18);
    transform: translateY(-1px);
}

.fForm .buttons input:active,
.fForm input[type='submit']:active,
.page-filters a:active {
    transform: translateY(0);
}

.page-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-items: center;
    margin: 0 0 24px;
    padding: 14px;
    background: var(--rehab-green-pale);
    border: 1px solid rgba(23, 111, 89, 0.12);
    border-radius: var(--rehab-radius-md);
}

.page-filters > div {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-items: center;
}

.page-filters a {
    min-width: 0;
    min-height: 36px;
    padding: 8px 14px;
    font-size: 12px;
}

/* ----------------------------------------------------------------
   Status field and legacy platform exceptions
   ---------------------------------------------------------------- */
#field-para-status {
    text-align: left;
}

#field-para-status input[type='submit'] {
    margin-top: 10px;
}

.page-filters,
#fieldset-5517,
.fModuleInvoice,
p.heading,
#fieldset-5515 legend,
#fieldset-5516 legend {
    display: block;
}

#fieldset-5515,
#fieldset-5516 {
    border-top: 1px solid var(--rehab-border);
}

#fieldset-6975 span,
#fieldset-6976 span,
#fieldset-6977 span,
#fieldset-6975 .field-para span,
#fieldset-6976 .field-para span,
#fieldset-6977 .field-para span {
    width: 100%;
    text-align: left;
}

.intl-tel-input {
    width: 100%;
}

.intl-tel-input ul.country-list li.country {
    margin: 0;
}

ul li,
ol li {
    margin: 4px 0;
}

#fFooter {
    display: none;
}

/* ----------------------------------------------------------------
   Responsive behaviour
   ---------------------------------------------------------------- */
@media (max-width: 850px) {
    #fHeader {
        min-height: auto;
        padding: 14px 18px;
    }

    #fPageTitle {
        width: calc(100% - 20px);
        margin-top: 10px;
        padding: 42px 26px 64px;
        border-radius: 18px;
    }

    #fContent {
        width: calc(100% - 20px);
        margin-top: -24px !important;
        margin-bottom: 34px !important;
        border-radius: 18px;
    }

    #fMatter {
        padding: 22px 18px;
    }

    .fForm fieldset,
    .fModule {
        padding: 0 18px 20px;
        border-radius: 14px;
    }

    .fForm legend,
    .fModuleTitle {
        width: calc(100% + 36px);
        margin-right: -18px;
        margin-left: -18px;
    }

    .fForm .field-para {
        grid-template-columns: 1fr;
        gap: 5px;
        padding: 13px 0;
    }

    .fForm .hint,
    .fForm .error {
        grid-column: 1;
    }

    .fForm label,
    .fForm .label {
        text-align: left;
    }

    .fForm .fFormCost,
    #data_50568_cost_display.fFormCost,
    #data_50972_cost_display {
        margin-top: 7px;
    }
}

@media (max-width: 560px) {
    body {
        font-size: 14px;
    }

    #fHeader h1 {
        font-size: 18px;
    }

    #fNav ul.menu {
        gap: 6px;
    }

    #fNav ul.menu a {
        min-height: 34px;
        padding: 6px 11px;
        font-size: 12px;
    }

    #fPageTitle {
        padding: 34px 20px 56px;
    }

    #fPageTitle h1 {
        font-size: 34px !important;
    }

    #fPageTitle h1::before {
        margin-bottom: 10px;
        font-size: 11px;
        letter-spacing: 0.09em;
    }

    #fMatter {
        padding: 18px 12px;
    }

    .fForm fieldset,
    .fModule {
        margin-bottom: 18px;
        padding: 0 14px 16px;
    }

    .fForm legend,
    .fModuleTitle {
        width: calc(100% + 28px);
        margin-right: -14px;
        margin-left: -14px;
        margin-bottom: 16px;
    }

    .fForm legend span,
    .fModuleTitle h3,
    .fModuleTitle {
        padding: 13px 14px !important;
        font-size: 15px !important;
    }

    .fForm .buttons,
    .buttons {
        flex-direction: column;
    }

    .fForm .buttons input,
    .fForm .buttons input.submit,
    .fForm input[type='submit'],
    .fForm input[type='button'] {
        width: 100% !important;
    }

    .page-filters,
    .page-filters > div {
        align-items: stretch;
    }

    .page-filters a {
        flex: 1 1 auto;
    }

    table.registration_slab,
    table.financial {
        min-width: 620px;
    }
}

/* ----------------------------------------------------------------
   Header image mode
   The generated text title and green hero are hidden. An image can
   now be inserted inside #fHeader without the previous banner showing.
   ---------------------------------------------------------------- */
#fHeader {
    min-height: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

#fHeader > h1,
#fNav,
#fPageTitle {
    display: none !important;
}

#fHeader img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

#fContent {
    margin: 30px auto 64px !important;
}

@media (max-width: 850px) {
    #fHeader {
        padding: 0;
    }

    #fContent {
        margin: 20px auto 34px !important;
    }
}

@media print {
    body {
        background: #fff;
    }

    body::before,
    #fHeader,
    #fPageTitle,
    .page-filters,
    .buttons,
    #fFooter {
        display: none !important;
    }

    #fContent {
        width: 100%;
        margin: 0 !important;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    #fMatter {
        padding: 0;
    }
}
