:root {
    --primary-font: 'Figtree', Arial, sans-serif;
    --secondary-font: 'Figtree', Arial, sans-serif;
    --nct-green: #FF6A5F; /* Green -> Coral */
    --nct-dark-green: #FF6A5F; /* Dark Green -> Coral */
    --nct-blue: #25A1AC;
    --nct-purple: #550047;
    --nct-orange: #F49F29;

    --nct-coral: #FF6A5F;
    --nct-coral-20: #FF2919;
    --nct-burgundy: #550047;
    --nct-burgundy-70: #884D7E;
    --nct-beige: #F7F3E7;
    --nct-beige-60: #FAF8F1;
    --nct-beige-10: #FEFEFD;
    --nct-sky-blue-160: #006A98;
    --nct-ui-red: #C10007;
    --nct-ui-green: #008236;
    --nct-ui-amber: #BB4D00;

 

    /* Styling hooks: Input field */
    --sds-c-input-radius-border: 0.5rem;
    --sds-c-input-color-background: var(--nct-beige-60, #FAF8F1);
    --sds-c-input-color-border: var(--nct-burgundy-70, #884D7E);
    --sds-c-input-text-color: var(--nct-burgundy, #550047);
    --sds-c-input-spacing-horizontal-start: 1rem;
    --sds-c-input-spacing-horizontal-end: 1rem;
    --sds-c-input-shadow-focus: 0 0 2px 1px rgba(136, 77, 126, 0.50);
    --sds-c-input-color-border-focus: var(--nct-burgundy, #550047);

    /* Styling hooks: Select dropdown */
    --sds-c-select-radius-border: 0.5rem;
    --sds-c-select-color-background: var(--nct-beige-60, #FAF8F1);
    --sds-c-select-color-border: var(--nct-burgundy-70, #884D7E);
    --sds-c-select-text-color: var(--nct-burgundy, #550047);
    --sds-c-select-shadow-focus: 0 0 2px 1px rgba(136, 77, 126, 0.50);
    --sds-c-select-color-border-focus:  var(--nct-burgundy, #550047);
    --sds-c-select-color-background-focus: var(--nct-beige-60, #FAF8F1);
    
    /* Styling hooks: Text area (NOT WORKING) */
    --sds-c-textarea-radius-border: 8px;
    --sds-c-textarea-color-background: var(--nct-beige-60, #FAF8F1);
    --sds-c-textarea-color-border: var(--nct-burgundy-70, #884D7E);
    --sds-c-textarea-text-color:  var(--nct-burgundy, #550047);

    /* Styling hooks: Checkbox */
    --sds-c-checkbox-color-border: var(--nct-burgundy, #550047);
    --sds-c-checkbox-radius-border: 0.2rem;
    --sds-c-checkbox-color-background: var(--nct-beige-60, #FAF8F1);
    --sds-c-checkbox-color-border-checked:  var(--nct-burgundy, #550047);
    --sds-c-checkbox-color-background-checked: var(--nct-burgundy, #550047);
    --sds-c-checkbox-mark-color-foreground: var(--nct-beige-60, #FAF8F1);
    --sds-c-checkbox-color-border-focus: var(--nct-burgundy, #550047);
    --sds-c-checkbox-shadow-focus:0 0 2px 1px rgba(136, 77, 126, 0.50);

    /* Styling hooks: Toggle  */
    --sds-c-checkbox-toggle-shadow-focus: 0 0 3px #C4C4C4;
    --sds-c-checkbox-toggle-color-border: #C4C4C4;
    --sds-c-checkbox-toggle-color-background-focus: #C4C4C4;
    --sds-c-checkbox-toggle-color-border-focus: #C4C4C4;
    --sds-c-checkbox-toggle-color-border-checked: #C4C4C4;
    --sds-c-checkbox-toggle-color-background-checked: var(--nct-green);
    --sds-c-checkbox-toggle-color-background-checked-hover: var(--nct-green);
    --sds-c-checkbox-toggle-color-background-checked-focus: var(--nct-green);


    /* Styling hooks: Button  */
    --sds-c-button-brand-color-background: var(--nct-coral, #FF6A5F);
    --sds-c-button-brand-color-border-hover: var(--nct-burgundy-70, #884D7E);

    --sds-c-button-brand-color-border: var(--nct-burgundy, #550047);
    --sds-c-button-brand-color-background-hover:  var(--nct-coral-20, #FF2919);
    --sds-c-button-brand-color-background-active: var(--nct-coral, #FF6A5F);
    --sds-c-button-brand-color-border-active: var(--nct-burgundy-70, #884D7E);
    --sds-c-button-brand-spacing-inline-start: 3.5rem;
    --sds-c-button-brand-spacing-inline-end: 3.5rem;
    --sds-c-button-line-height: 2.5;
    --sds-c-button-brand-text-color: var(--nct-burgundy, #550047);
    --sds-c-button-brand-text-color-hover: var(--nct-burgundy, #550047);
    --sds-c-button-brand-text-color-active: var(--nct-burgundy, #550047);
    --sds-c-button-shadow-focus: 0 0 3px #C4C4C4;
    --sds-c-button-radius-border: 1.5rem;
    --slds-c-button-brand-color-background: var(--nct-coral, #FF6A5F);
    --slds-kx-button-gradient-color: var(--nct-coral-20, #FF2919);

    --sds-c-button-neutral-color-border-hover: var(--nct-burgundy-70, #884D7E);
    --sds-c-button-neutral-color-border: var(--nct-burgundy, #550047);
    --sds-c-button-neutral-text-color: var(--nct-green);
    --sds-c-button-neutral-text-color-hover:var(--nct-burgundy, #550047);
    --sds-c-button-neutral-color-background-hover: var(--nct-coral, #FF6A5F);
    --sds-c-button-text-color: var(--nct-burgundy, #550047);
    --sds-c-button-text-color-hover: var(--nct-burgundy, #550047);

    /* Styling hooks: Radio buttons  */
    --sds-c-radio-shadow-focus: 0 0 3px #C4C4C4;
    --sds-c-radio-color-border: var(--nct-burgundy-70, #884D7E);
    --sds-c-radio-color-background: var(--nct-beige-60, #FAF8F1);
    --sds-c-radio-color-border-checked: var(--nct-burgundy, #550047);
    --sds-c-radio-color-background-checked: var(--nct-beige-60, #FAF8F1);
    --sds-c-radio-mark-color-foreground: var(--nct-burgundy, #550047);
    --sds-c-radio-color-border-focus: var(--nct-burgundy, #550047);

    /* Styling hooks: Accordion */
    --slds-c-accordion-heading-font-size: 1.125rem;
    --slds-c-accordion-section-spacing-block-end: 0rem;
    --slds-c-accordion-section-spacing-block-start: 0rem;
    --slds-c-accordion-section-spacing-inline-end: 0rem;
    --slds-c-accordion-section-spacing-inline-start: 0rem;
    --slds-c-accordion-summary-color-background: var(--nct-beige, #F7F3E7);
    --slds-c-icon-color-foreground-default: var(--nct-coral, #FF6A5F);
    --slds-c-accordion-heading-text-color-hover: var(--nct-burgundy, #550047); 
}

/****** Accordion ******/

.slds-accordion__content {
    padding: 1rem 0.5rem;
    border: 1px solid  var(--nct-beige, #F7F3E7);
}

.slds-accordion__summary-content {
    font-size: 1rem;
    margin-bottom: 0 !important;
    font-weight: 700;
}

.slds-accordion__summary-heading {
    padding: 0.25rem 0.5rem;
    margin-bottom: 0 !important;
}

/****** Form Labels ******/
.slds-form-element .slds-form-element__label, .slds-form-element__label, .slds-form-element__label span {
    font-size: 0.875rem !important;
    font-family: var(--primary-font);
    font-weight: 400;
    color: var(--nct-burgundy) !important;
    margin-bottom: 0.2rem !important;
    display: inline !important;
}

.slds-form-element .slds-required, .slds-form-element__label .slds-required {
    color: var(--nct-ui-red);
    font-size: 0.875rem;
    font-weight: 400;
}
.slds-form-element__label .slds-required {
    font-size: 1rem;
    line-height: 0;
}

.slds-form-element__legend {
    float: none !important;
    margin-bottom: 1rem !important;
    font-weight: 500 !important;
}

.slds-form-element {
    grid-gap: 0.5rem; /* Opt in checkbox & label gap */
    align-items: start !important;
}

lightning-picklist[data-field="salutation"], lightning-input[data-field="firstName"], lightning-input[data-field="lastName"] {
    width:100%;
}

.slds-combobox__input span {
    margin-bottom: 0 !important;
}

/****** Input field ******/
.slds-input {
    font-size: 1rem;
    font-family: var(--primary-font);
    padding-top: 0.3rem !important;
    padding-bottom: 0.3rem !important;
    margin-top: 0.2rem; /* W22 fix */
}

.slds-form-element__group .slds-form-element__row {
    margin-bottom: 1rem;
}

/*** Right-aligned icon within text input ***/
.slds-input-has-icon_right .slds-input__icon {
    width: 1rem;
    height: 1rem;
}

.slds-input-has-icon_right .slds-input__icon .slds-button_icon {
    line-height: 0.5;
    color: var(--nct-coral);
}

/*** Error text ***/
.slds-form-element__help, .slds-text-body_small {
    font-size: 0.85rem !important;
    font-family: var(--primary-font);
}

/****** Textarea ******/
.uiInput--textarea .textarea, .uiInput--textarea.textarea, .slds-textarea {
    font-size: 1rem;
    font-family: var(--primary-font);
    border-radius: 1rem !important;
    background-color: #FAFAFA !important;
    border-color: #C4C4C4 !important;
    color: #2d2d2d !important;
    margin-top: 0.5rem;
}

.uiInput--textarea .textarea:focus, .uiInput--textarea.textarea:focus, .uiInput--textarea .textarea:active, .uiInput--textarea.textarea:active, .slds-textarea:focus, .slds-textarea:active {
    border-color: #C4C4C4 !important;
    box-shadow: 0 0 3px #C4C4C4 !important;
}

/****** Select / dropdown field ******/
.slds-select_container .slds-select {
    font-size: 1rem;
    font-family: var(--primary-font);
    padding-top: 0.5rem !important;
    padding-bottom: 0.4rem !important;
    height: auto !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    margin-top: 0.2rem !important;
}

.slds-select_container:before, .slds-select_container:after {
    margin-top: 12px !important;
    margin-bottom: 5px !important;
}

.slds-combobox_container .slds-select, .slds-input_faux {
    font-size: 1rem;
    font-family: var(--primary-font);
    padding-top: 0.5rem !important;
    padding-bottom: 0.4rem !important;
    height: auto !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    margin-top: 0.5rem !important;
}

/****** Checkbox ******/
.slds-checkbox .slds-checkbox_faux {    /* Checkbox size overrides */
    width: 1.5rem !important;
    height: 1.5rem !important;
}

.slds-checkbox .slds-checkbox_faux::after {  /* Checkbox tick mark size overrides */
    height: .4rem !important;
    width: 0.8rem !important;
    border-bottom: 3px solid #FFFFFF !important;
    border-left: 3px solid #FFFFFF !important;
}

/****** Radio Button ******/
.slds-radio {
    margin-bottom: 0.5rem !important;
}

.slds-radio .slds-radio_faux {
    width: 1.5rem !important;
    height: 1.5rem !important;
}

.slds-radio [type=radio]:checked+.slds-radio_faux:after, .slds-radio [type=radio]:checked+.slds-radio--faux:after, .slds-radio [type=radio]:checked~.slds-radio_faux:after, .slds-radio [type=radio]:checked~.slds-radio--faux:after, .slds-radio [type=radio]:checked+.slds-radio__label .slds-radio_faux:after, .slds-radio [type=radio]:checked+.slds-radio__label .slds-radio--faux:after {
    width: 1rem !important;
    height: 1rem !important;
}

.slds-radio__label {
    display: flex;
    align-items: flex-start;
    margin-left: 1.5rem;
}

.slds-radio__label .slds-radio_faux {
    margin-top: 0.2rem;
}

/****** Button ******/
.slds-button {
    font-size: 1rem;
    font-family: var(--primary-font);
}

.nct-base-button button[kx-scope=button][kx-type=underline]:after {
    display: none;
}
 
.nct-base-button button:hover {
    color: var(--nct-dark-green);
    text-decoration: underline;
}

/****** Toggle ******/
.slds-checkbox_toggle {
    justify-content: space-between;
}

/****** Spinner ******/
.slds-spinner_container {
    position: fixed !important;
}

.slds-spinner_brand.slds-spinner:before,
.slds-spinner_brand.slds-spinner:after, 
.slds-spinner_brand .slds-spinner__dot-a:before, 
.slds-spinner_brand .slds-spinner__dot-b:before, 
.slds-spinner_brand .slds-spinner__dot-a:after, 
.slds-spinner_brand .slds-spinner__dot-b:after, 
.slds-spinner--brand.slds-spinner:before, 
.slds-spinner--brand.slds-spinner:after, 
.slds-spinner--brand .slds-spinner__dot-a:before, 
.slds-spinner--brand .slds-spinner__dot-b:before, 
.slds-spinner--brand .slds-spinner__dot-a:after, 
.slds-spinner--brand .slds-spinner__dot-b:after {
    background-color: var(--nct-coral) !important;
}

/****** Tabs ******/

.slds-tabs_default__nav {
    gap: 1rem;
    justify-content: center;
}

.slds-tabs_default__item {
    font-weight: 500 !important;
    font-family: var(--primary-font);
    padding-bottom: 0.5rem;
    margin-bottom: 0px !important;
}

.slds-tabs_default__link {
    color: #222222 !important;
    text-decoration: none !important;
}

.slds-tabs_default__item.slds-is-active a {
    color: var(--nct-burgundy) !important;
    font-weight: 600 !important;
}

.slds-tabs_default__overflow-button {
    width: 0px;
}

/****** Typography ******/
p {
    font-size: 1rem;
    font-family: var(--primary-font);
    font-weight: 300;
    margin-bottom: 1rem !important;
    line-height: 1.5;
}

a {
    color: var(--nct-sky-blue-160) !important;
    font-weight: 400 !important;
    text-decoration: underline !important;
}

a:hover {
    color: var(--nct-burgundy) !important;
}

.text-dark-green {
    color: var(--nct-burgundy) !important;
}

.text-purple {
    color: var(--nct-burgundy) !important;
}


h2 {
    font-style: normal !important;
    font-weight: 700 !important;
    font-size: 1.5rem !important; 
    font-family: var(--primary-font) !important;
    color: var(--nct-burgundy) !important;
    margin-bottom: 0.25rem !important;
}

h3 {
    font-style: normal !important;
    font-weight: 700 !important;
    font-size: 1.25rem !important;
    font-family: var(--primary-font) !important;
    color: var(--nct-burgundy) !important;
    margin: 0.25rem 0 0.25rem 0 !important
}

h4 {
    font-family: var(--primary-font) !important;
    color: var(--nct-burgundy) !important;
    font-weight: 700 !important;
    font-size: 1.125rem !important; 
    margin-bottom: 0.2rem !important;
}

@media (min-width: 1024px) {
    h2 {
        font-size: 1.875rem !important; 
    }
    h3 {
        font-size: 1.5rem !important; 
    }
    h4 {
        font-size: 1.25rem !important; 
    }
}

ul li {
    font-size: 1rem;
    font-family: var(--primary-font);
    font-weight: 300;
    margin-bottom: 1rem !important;
}

small {
    font-size: 0.875rem !important;
}

.margin-top-0 {
    margin-top: 0 !important;
}
.margin-top-1 {
    margin-top: 1rem !important;
}
.margin-top-3 {
    margin-top: 3rem !important;
}
.margin-bottom-0 {
    margin-bottom: 0 !important;
}

.margin-left-2 {
    margin-left: 2rem;
}

/***** Community style overrides ******/
.forceCommunitySection .cb-section_column {
    padding: 0 !important;
}

.cCenterPanel {
    margin-top: 0 !important;
}

@media (min-width:769px) and (max-width:1024px){
    .forceCommunityFlowCommunity .content {  /* Add padding for 1024px */
        padding: 0 3rem;
    }
}

.slds-card__footer.navigationBar {
    border-top: none !important; /* Remove border above screen navigation */
}
