/**
 * 2027 Re-up Request form – layout and styling to align with Reserve form.
 */
body.sre-reup-2027-page .reup-2027-page {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-bottom: 2.5rem;
}
@media (min-width: 992px) {
	body.sre-reup-2027-page .reup-2027-page {
		padding-top: 2rem;
		padding-left: 1.5rem;
		padding-right: 1.5rem;
		padding-bottom: 3.5rem;
	}
}
.reup-2027-form-wrap {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	margin: 1em 0 0;
}
.reup-2027-form-title {
	margin-top: 0;
	margin-bottom: 1.25rem;
	padding-top: 0;
	font-size: 1.5rem;
}
@media (min-width: 992px) {
	.reup-2027-form-title {
		padding-top: 0.5rem;
		margin-bottom: 1.5rem;
		font-size: 1.65rem;
	}
}
.reup-2027-request-type {
	margin: 0 0 1.75rem;
	padding: 0;
	border: none;
	min-width: 0;
}
.reup-2027-radio-label {
	display: block;
	width: 100%;
	margin: 0 0 1rem;
	padding: 0;
	font-weight: 600;
	font-size: 1.05rem;
	line-height: 1.4;
}
.reup-2027-radio-option {
	display: block;
	margin: 0.35rem 0;
}
.reup-2027-radio-option input {
	margin-right: 0.5rem;
}
.reup-2027-or {
	margin: 1rem 0;
	padding: 0;
	text-align: center;
	font-weight: 600;
	font-size: 0.95rem;
	color: #444;
	letter-spacing: 0.02em;
}
.reup-2027-section {
	margin-top: 1rem;
	padding: 1rem 0;
	border-top: 1px solid #eee;
}
.reup-2027-subtitle {
	font-size: 1.2rem;
	margin-bottom: 1rem;
}
.reup-date-blocks {
	margin-bottom: 1rem;
}
.reup-date-block {
	margin-bottom: 1.5rem;
	padding: 1rem;
	background: #f9f9f9;
	border-radius: 4px;
}
.reup-date-block-label {
	font-weight: 600;
	margin: 0.75rem 0 0.25rem;
}
.reup-date-block-label:first-child {
	margin-top: 0;
}
.reup-date-desc {
	font-size: 0.9em;
	color: #666;
	margin: 0 0 0.5rem;
}
.reup-date-row {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin: 0.5rem 0;
	width: 100%;
}
.reup-field {
	flex: 1 1 200px;
	min-width: 0;
}
.reup-field label {
	display: block;
	font-size: 0.9em;
	margin-bottom: 0.25rem;
}
.reup-field .form-control {
	width: 100%;
	padding: 8px 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.reup-checkbox-label {
	display: block;
	margin: 0.5rem 0;
}
.reup-add-more-dates {
	display: inline-block;
	margin-bottom: 1rem;
}
.reup-contact-heading {
	margin: 1.5rem 0 0.75rem;
	font-size: 1.15rem;
	font-weight: 600;
	line-height: 1.3;
}
.reup-datepicker-input {
	cursor: pointer;
}
.reup-contact-fields input,
.reup-contact-fields select {
	display: block;
	width: 100%;
	margin-bottom: 0.75rem;
	padding: 8px 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.reup-contact-fields label {
	display: block;
	margin: 0.5rem 0 0.25rem;
	font-weight: 500;
}
.reup-findme-listing-ids {
	margin: 1.25rem 0 0;
	padding-bottom: 2.5rem;
}
.reup-findme-listing-ids + .reup-contact-heading {
	margin-top: 2.25rem;
}
.reup-findme-listing-ids label {
	display: block;
	margin: 0 0 0.35rem;
	font-weight: 500;
}
.reup-findme-listing-ids .form-control {
	width: 100%;
	padding: 8px 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.reup-findme-extra {
	margin: 1rem 0;
	padding: 1rem 0;
	border-top: 1px solid #eee;
}
.reup-findme-extra input[type="text"] {
	width: 100%;
	margin-bottom: 0.75rem;
	padding: 8px 10px;
}
.reup-2027-form-wrap .form-group-terms.agreetxt {
	text-align: center;
	margin: 14px 0;
	padding: 14px 0;
	font-size: 0.9em;
}
.reup-2027-form-wrap .reup-2027-submit {
	margin-top: 1rem;
}
.reup-2027-response {
	margin-top: 1.5rem;
	padding: 1rem;
}
.reup-2027-success-msg {
	font-weight: 500;
	margin-bottom: 1rem;
}
.reup-2027-success-img {
	display: block;
	margin-top: 12px;
	max-width: 100%;
}
.reup-2027-error {
	color: #c00;
}

/* SRE 2027 Re-up cinematic filmstrip chooser, added 2026-05-13 */
body.sre-reup-2027-page .reup-2027-filmstrip-chooser {
    border: 0;
    padding: 0;
    margin: 24px 0 34px;
}

body.sre-reup-2027-page .reup-2027-filmstrip-chooser .reup-2027-radio-label {
    display: block;
    width: 100%;
    margin: 0 0 18px;
    text-align: center;
    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
}

body.sre-reup-2027-page .reup-2027-choice-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
    align-items: stretch;
}

body.sre-reup-2027-page .reup-2027-choice-card {
    display: flex;
    flex-direction: column;
    cursor: pointer;
    background: #fffaf0;
    border: 3px solid rgba(22, 36, 53, 0.18);
    border-radius: 22px;
    padding: 14px;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.12);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

body.sre-reup-2027-page .reup-2027-choice-card:hover,
body.sre-reup-2027-page .reup-2027-choice-card:focus-within {
    transform: translateY(-3px);
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.18);
    border-color: rgba(15, 81, 125, 0.55);
}

body.sre-reup-2027-page .reup-2027-choice-card.is-selected {
    border-color: #0f517d;
    box-shadow: 0 0 0 4px rgba(15, 81, 125, 0.18), 0 18px 42px rgba(0, 0, 0, 0.18);
}

body.sre-reup-2027-page .reup-2027-choice-card input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

body.sre-reup-2027-page .reup-2027-choice-image-wrap {
    display: block;
    width: 100%;
    overflow: hidden;
    border-radius: 16px;
    background: #111;
}

body.sre-reup-2027-page .reup-2027-choice-image-wrap picture,
body.sre-reup-2027-page .reup-2027-choice-image-wrap img {
    display: block;
    width: 100%;
}

body.sre-reup-2027-page .reup-2027-choice-image-wrap img {
    height: auto;
}

body.sre-reup-2027-page .reup-2027-choice-title {
    display: block;
    min-height: 54px;
    margin: 16px 4px 12px;
    color: #182434;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
}

body.sre-reup-2027-page .reup-2027-choice-button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 52px;
    margin-top: auto;
    border-radius: 12px;
    background: #0f517d;
    color: #fff;
    font-size: 18px;
    line-height: 1.15;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.01em;
}

body.sre-reup-2027-page .reup-2027-choice-card.is-selected .reup-2027-choice-button {
    background: #14324a;
}

@media (max-width: 767.98px) {
    body.sre-reup-2027-page .reup-2027-page {
        padding-left: 12px;
        padding-right: 12px;
    }

    body.sre-reup-2027-page .reup-2027-filmstrip-chooser {
        margin-top: 14px;
    }

    body.sre-reup-2027-page .reup-2027-filmstrip-chooser .reup-2027-radio-label {
        font-size: 24px;
        margin-bottom: 16px;
    }

    body.sre-reup-2027-page .reup-2027-choice-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    body.sre-reup-2027-page .reup-2027-choice-card {
        padding: 12px;
        border-radius: 20px;
    }

    body.sre-reup-2027-page .reup-2027-choice-title {
        min-height: 0;
        font-size: 20px;
        margin: 14px 3px 12px;
    }

    body.sre-reup-2027-page .reup-2027-choice-button {
        min-height: 50px;
        font-size: 17px;
    }
}

/* SRE 2027 Re-up filmstrip layout correction, added 2026-05-13 */
body.sre-reup-2027-page .reup-2027-form-wrap {
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.sre-reup-2027-page .reup-2027-choice-grid {
    width: 100% !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
}

body.sre-reup-2027-page .reup-2027-choice-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

body.sre-reup-2027-page .reup-2027-choice-card input[type="radio"] {
    width: 1px !important;
    height: 1px !important;
    margin: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    overflow: hidden !important;
    white-space: nowrap !important;
}

body.sre-reup-2027-page .reup-2027-choice-image-wrap img {
    max-width: 100% !important;
    height: auto !important;
}

@media (max-width: 767.98px) {
    body.sre-reup-2027-page .reup-2027-form-wrap {
        max-width: 100% !important;
    }

    body.sre-reup-2027-page .reup-2027-choice-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        max-width: 480px !important;
        width: 100% !important;
    }

    body.sre-reup-2027-page .reup-2027-choice-card {
        width: 100% !important;
    }
}

/* FINAL cinematic chooser cleanup, 2026-05-13 */
#reup-2027-form-wrap .reup-2027-choice-card{
    align-items:center !important;
}

#reup-2027-form-wrap .reup-2027-choice-image-wrap{
    flex:0 0 340px !important;
    width:340px !important;
    max-width:340px !important;
    margin:0 auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:transparent !important;
    overflow:visible !important;
}

#reup-2027-form-wrap .reup-2027-choice-image-wrap picture{
    width:100% !important;
    display:block !important;
}

#reup-2027-form-wrap .reup-2027-choice-image-wrap img{
    width:100% !important;
    display:block !important;
    border-radius:14px !important;
    box-shadow:0 10px 28px rgba(0,0,0,.22) !important;
}

#reup-2027-form-wrap .reup-2027-choice-content{
    text-align:left !important;
    align-items:flex-start !important;
}

#reup-2027-form-wrap .reup-2027-choice-title{
    text-align:left !important;
    margin:0 0 14px !important;
    font-size:34px !important;
    line-height:1.1 !important;
}

#reup-2027-form-wrap .reup-2027-choice-description{
    max-width:520px !important;
}

#reup-2027-form-wrap .reup-2027-choice-button{
    width:auto !important;
    min-width:260px !important;
    padding:0 28px !important;
}

@media (max-width: 767.98px){

    #reup-2027-form-wrap .reup-2027-choice-card{
        flex-direction:column !important;
        align-items:center !important;
    }

    #reup-2027-form-wrap .reup-2027-choice-image-wrap{
        width:100% !important;
        max-width:100% !important;
        flex:0 0 auto !important;
    }

    #reup-2027-form-wrap .reup-2027-choice-content{
        width:100% !important;
        text-align:center !important;
        align-items:center !important;
    }

    #reup-2027-form-wrap .reup-2027-choice-title{
        text-align:center !important;
        font-size:28px !important;
    }

    #reup-2027-form-wrap .reup-2027-choice-description{
        text-align:center !important;
    }

    #reup-2027-form-wrap .reup-2027-choice-button{
        width:100% !important;
        max-width:100% !important;
    }
}

/* SRE single-image chooser: full left/right halves (replaces old small % hotspots, 2026-05-09) */
#reup-2027-form-wrap .reup-2027-choice-layout-wrap {
	width: 100% !important;
	max-width: 1196px !important;
	margin: 0 auto 34px !important;
}

#reup-2027-form-wrap .reup-2027-choice-layout-image-wrap {
	position: relative !important;
	width: 100% !important;
	max-width: 1196px !important;
	margin: 0 auto !important;
}

#reup-2027-form-wrap .reup-2027-choice-layout-image {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	border-radius: 18px !important;
	box-shadow: 0 16px 38px rgba(0, 0, 0, 0.16) !important;
	vertical-align: top !important;
	position: relative !important;
	z-index: 0 !important;
	pointer-events: none !important;
	-webkit-user-select: none !important;
	user-select: none !important;
}

#reup-2027-form-wrap .reup-2027-choice-radios-offscreen {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

#reup-2027-form-wrap .reup-2027-choice-radios-offscreen input {
	position: absolute !important;
	opacity: 0 !important;
	width: 1px !important;
	height: 1px !important;
	pointer-events: none !important;
}

#reup-2027-form-wrap .reup-2027-overlay-choice {
	position: absolute !important;
	top: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 50% !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	cursor: pointer !important;
	z-index: 50 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	pointer-events: auto !important;
	touch-action: manipulation !important;
}

#reup-2027-form-wrap .reup-2027-overlay-right {
	left: 50% !important;
}

@media (max-width: 767.98px) {
	#reup-2027-form-wrap .reup-2027-choice-layout-wrap {
		max-width: 100% !important;
	}

	#reup-2027-form-wrap .reup-2027-choice-layout-image {
		border-radius: 14px !important;
	}
}

/* SRE Reup 2027 form visual redesign layer, 2026-05-13 */
#reup-2027-form-wrap .reup-2027-section {
    max-width: 980px !important;
    margin: 34px auto 0 !important;
    padding: 34px !important;
    border: 1px solid rgba(15, 81, 125, 0.16) !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
    box-shadow: 0 18px 46px rgba(18, 36, 58, 0.12) !important;
}

#reup-2027-form-wrap .reup-2027-subtitle {
    margin: 0 0 24px !important;
    padding: 0 0 14px !important;
    border-bottom: 2px solid rgba(15, 81, 125, 0.12) !important;
    color: #113a5c !important;
    font-size: 30px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
}

#reup-2027-form-wrap .reup-date-block {
    position: relative !important;
    padding: 24px !important;
    border: 1px solid rgba(15, 81, 125, 0.12) !important;
    border-radius: 20px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 24px rgba(18, 36, 58, 0.08) !important;
}

#reup-2027-form-wrap .reup-date-block-label {
    display: inline-flex !important;
    align-items: center !important;
    margin: 12px 0 8px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    background: rgba(15, 81, 125, 0.09) !important;
    color: #0f517d !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: 0.01em !important;
}

#reup-2027-form-wrap .reup-date-block-label:first-child {
    margin-top: 0 !important;
}

#reup-2027-form-wrap .reup-date-desc {
    margin: 0 0 14px !important;
    color: #5a6b7b !important;
    font-size: 15px !important;
}

#reup-2027-form-wrap .reup-date-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    margin: 12px 0 22px !important;
}

#reup-2027-form-wrap .reup-field label {
    color: #26394d !important;
    font-weight: 700 !important;
}

#reup-2027-form-wrap .reup-field .form-control,
#reup-2027-form-wrap .reup-contact-fields input,
#reup-2027-form-wrap .reup-contact-fields select,
#reup-2027-form-wrap .reup-findme-listing-ids .form-control {
    min-height: 48px !important;
    border: 1px solid rgba(38, 57, 77, 0.22) !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.8) !important;
}

#reup-2027-form-wrap .reup-checkbox-label {
    margin: 12px 0 18px !important;
    padding: 13px 14px !important;
    border-radius: 14px !important;
    background: #fff7e7 !important;
    color: #384656 !important;
    font-weight: 700 !important;
}

#reup-2027-form-wrap .reup-deposit-section .sre-deposit-method-radio,
#reup-2027-form-wrap .reup-home-buying-section .sre-sale-info-radio {
    position: relative !important;
    opacity: 1 !important;
    width: 1.1em !important;
    height: 1.1em !important;
    margin: 0 10px 0 2px !important;
    pointer-events: auto !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
}

#reup-2027-form-wrap .reup-contact-changed-label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 14px !important;
    padding: 8px 12px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

#reup-2027-form-wrap .reup-contact-changed-label .sre-contact-changed {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    pointer-events: auto !important;
    vertical-align: middle !important;
}

#reup-2027-form-wrap .reup-contact-heading {
    margin: 28px 0 14px !important;
    color: #113a5c !important;
    font-size: 24px !important;
    font-weight: 800 !important;
}

#reup-2027-form-wrap .reup-contact-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 18px !important;
}

#reup-2027-form-wrap .reup-contact-fields label,
#reup-2027-form-wrap .reup-contact-fields select {
    grid-column: 1 / -1 !important;
}

#reup-2027-form-wrap .reup-2027-submit {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 54px !important;
    padding: 0 30px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: #0f517d !important;
    box-shadow: 0 12px 26px rgba(15, 81, 125, 0.28) !important;
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 800 !important;
}

@media (max-width: 767.98px) {
    #reup-2027-form-wrap .reup-2027-section {
        padding: 20px !important;
        border-radius: 18px !important;
    }

    #reup-2027-form-wrap .reup-2027-subtitle {
        font-size: 24px !important;
    }

    #reup-2027-form-wrap .reup-date-block {
        padding: 18px !important;
    }

    #reup-2027-form-wrap .reup-date-row,
    #reup-2027-form-wrap .reup-contact-fields {
        grid-template-columns: 1fr !important;
    }
}

/* SRE Reup chooser top label buttons override, 2026-05-13 */
#reup-2027-form-wrap .reup-2027-form-title,
#reup-2027-form-wrap .reup-2027-radio-label {
    text-align: center !important;
    width: 100% !important;
}

#reup-2027-form-wrap .reup-2027-form-title {
    font-weight: 400 !important;
}

#reup-2027-form-wrap .reup-2027-radio-label {
    display: block !important;
    font-weight: 400 !important;
}

#reup-2027-form-wrap .reup-2027-choice-top-labels {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
    max-width: 1196px !important;
    margin: 0 auto 10px !important;
}

#reup-2027-form-wrap .reup-2027-choice-top-label {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 8px 16px !important;
    border-radius: 10px !important;
    background: #0f517d !important;
    color: #ffffff !important;
    font-size: 20px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    text-align: center !important;
    box-shadow: 0 8px 18px rgba(15,81,125,.22) !important;
}

#reup-2027-form-wrap select.form-control {
    min-height: 52px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

@media (max-width: 767.98px) {
    #reup-2027-form-wrap .reup-2027-choice-top-labels {
        gap: 8px !important;
    }

    #reup-2027-form-wrap .reup-2027-choice-top-label {
        min-height: 42px !important;
        font-size: 14px !important;
        padding: 8px !important;
    }
}

/* SRE AI disclosure cinematic styling upgrade, 2026-05-13 */
#reup-2027-form-wrap .reup-ai-disclaimer{
    position:relative!important;
    max-width:760px!important;
    margin:110px auto 30px!important;
    padding:22px 24px 0!important;
    text-align:center!important;
    font-family:'Edu Australia VIC WA NT',cursive!important;
    font-size:16px!important;
    line-height:1.7!important;
    letter-spacing:.04em!important;
    color:rgba(38,38,38,.72)!important;
    font-style:italic!important;
}
#reup-2027-form-wrap .reup-ai-disclaimer:before{
    content:''!important;
    display:block!important;
    width:140px!important;
    height:1px!important;
    margin:0 auto 18px!important;
    background:linear-gradient(90deg,rgba(0,0,0,0),rgba(0,0,0,.22),rgba(0,0,0,0))!important;
}
@media (max-width:767.98px){
    #reup-2027-form-wrap .reup-ai-disclaimer{
        margin:70px auto 24px!important;
        padding:18px 18px 0!important;
        font-size:14px!important;
        line-height:1.6!important;
    }
}\n\n

/* Corresponding Weeks Chart Accordion, 2026-05-16 */
.reup-weeks-chart-accordion{
    margin:18px 0 24px;
    border:1px solid #d7d7d7;
    border-radius:10px;
    background:#fafafa;
    overflow:hidden;
}

.reup-weeks-chart-accordion summary{
    cursor:pointer;
    padding:16px 18px;
    font-size:16px;
    font-weight:600;
    line-height:1.4;
    list-style:none;
    user-select:none;
    position:relative;
}

.reup-weeks-chart-accordion summary::-webkit-details-marker{
    display:none;
}

.reup-weeks-chart-accordion summary:after{
    content:'+';
    position:absolute;
    right:18px;
    top:50%;
    transform:translateY(-50%);
    font-size:22px;
    font-weight:400;
}

.reup-weeks-chart-accordion[open] summary:after{
    content:'−';
}

.reup-weeks-chart-wrap{
    overflow-x:auto;
    padding:0 16px 18px;
}

.reup-weeks-chart{
    width:100%;
    border-collapse:collapse;
    min-width:320px;
    background:#fff;
}

.reup-weeks-chart th{
    background:#f1f1f1;
    font-size:15px;
    font-weight:700;
    padding:12px;
    border:1px solid #dcdcdc;
    text-align:center;
}

.reup-weeks-chart td{
    padding:10px 12px;
    border:1px solid #e2e2e2;
    text-align:center;
    font-size:15px;
    line-height:1.4;
}

@media (max-width: 767px){

    .reup-weeks-chart-accordion summary{
        padding:14px 42px 14px 14px;
        font-size:15px;
    }

    .reup-weeks-chart-wrap{
        padding:0 10px 14px;
    }

    .reup-weeks-chart th,
    .reup-weeks-chart td{
        font-size:14px;
        padding:9px 8px;
        white-space:nowrap;
    }
}\n\n

/* Corresponding Weeks Chart clickable table refinement, 2026-05-16 */
.reup-weeks-chart-title,
.reup-weeks-chart .reup-week-select,
.reup-weeks-chart td:nth-child(3){
    font-size:18px;
    font-weight:700;
}

.reup-weeks-chart th{
    background:#eef6ff;
    font-weight:700;
}

.reup-weeks-chart td{
    background:#f8fbff;
    border:1px solid #d6dde6;
}

.reup-weeks-chart th,
.reup-weeks-chart td{
    border:1px solid #cfd8e3;
}

.reup-weeks-chart .reup-week-select{
    width:100%;
    border:0;
    background:transparent;
    cursor:pointer;
    padding:0;
    color:inherit;
}

.reup-weeks-chart .reup-week-select:hover,
.reup-weeks-chart .reup-week-select:focus,
.reup-weeks-chart .reup-week-select.is-selected{
    text-decoration:underline;
    outline:none;
}

.reup-weeks-chart td:nth-child(2){
    width:72px;
    font-size:24px;
    font-weight:700;
}

@media (max-width: 767px){
    .reup-weeks-chart-title,
    .reup-weeks-chart .reup-week-select,
    .reup-weeks-chart td:nth-child(3){
        font-size:16px;
    }
}



/* SRE Corresponding Weeks Chart final override, 2026-05-16 */
body.sre-reup-2027-page .reup-date-block-label{
    font-size:18px!important;
    line-height:1.35!important;
    font-weight:700!important;
}

body.sre-reup-2027-page .reup-weeks-chart-accordion{
    margin:18px 0 26px!important;
    border:0!important;
    background:transparent!important;
    overflow:visible!important;
}

body.sre-reup-2027-page .reup-weeks-chart-accordion summary{
    margin:0 0 14px!important;
    padding:0!important;
    font-size:15px!important;
    line-height:1.4!important;
    font-weight:500!important;
}

body.sre-reup-2027-page .reup-weeks-chart-intro{
    margin:0 0 18px!important;
}

body.sre-reup-2027-page .reup-weeks-chart-title{
    display:block!important;
    margin:0 0 8px!important;
    font-size:18px!important;
    line-height:1.35!important;
    font-weight:700!important;
    color:#111!important;
}

body.sre-reup-2027-page .reup-weeks-chart-subtitle{
    display:block!important;
    margin:0 0 16px!important;
    font-size:16px!important;
    line-height:1.55!important;
    color:#333!important;
}

body.sre-reup-2027-page .reup-weeks-chart-wrap{
    width:100%!important;
    padding:0!important;
    overflow-x:auto!important;
}

body.sre-reup-2027-page table.reup-weeks-chart{
    width:100%!important;
    min-width:640px!important;
    border-collapse:collapse!important;
    border:1px solid #9ca8b3!important;
    background:#fff!important;
}

body.sre-reup-2027-page table.reup-weeks-chart th{
    padding:10px 12px!important;
    border:1px solid #9ca8b3!important;
    background:#eaf4ff!important;
    color:#111!important;
    text-align:center!important;
    font-size:18px!important;
    line-height:1.25!important;
    font-weight:700!important;
}

body.sre-reup-2027-page table.reup-weeks-chart td{
    padding:7px 12px!important;
    border:1px solid #9ca8b3!important;
    background:#f7fbff!important;
    color:#111!important;
    text-align:center!important;
    font-size:17px!important;
    line-height:1.25!important;
}

body.sre-reup-2027-page table.reup-weeks-chart td:nth-child(2){
    width:86px!important;
    font-size:22px!important;
    font-weight:700!important;
}

body.sre-reup-2027-page table.reup-weeks-chart .reup-week-select{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    color:#1f5fbf!important;
    font-size:17px!important;
    line-height:1.25!important;
    font-weight:700!important;
    text-align:center!important;
    cursor:pointer!important;
    text-decoration:none!important;
}

body.sre-reup-2027-page table.reup-weeks-chart .reup-week-select:hover,
body.sre-reup-2027-page table.reup-weeks-chart .reup-week-select:focus,
body.sre-reup-2027-page table.reup-weeks-chart .reup-week-select.is-selected{
    color:#003f8f!important;
    text-decoration:underline!important;
    outline:none!important;
}

@media (max-width: 767px){
    body.sre-reup-2027-page .reup-date-block-label,
    body.sre-reup-2027-page .reup-weeks-chart-title{
        font-size:17px!important;
    }

    body.sre-reup-2027-page .reup-weeks-chart-subtitle{
        font-size:15px!important;
    }

    body.sre-reup-2027-page table.reup-weeks-chart{
        min-width:540px!important;
    }

    body.sre-reup-2027-page table.reup-weeks-chart th,
    body.sre-reup-2027-page table.reup-weeks-chart td,
    body.sre-reup-2027-page table.reup-weeks-chart .reup-week-select{
        font-size:15px!important;
    }
}



/* SRE Reup chart visual force override, 2026-05-16 */
#reup-2027-form-wrap .reup-weeks-chart-title{
    margin:12px 0 10px!important;
    font-family:inherit!important;
    font-size:18px!important;
    line-height:1.45!important;
    font-weight:700!important;
    color:#0b3558!important;
}

#reup-2027-form-wrap .reup-weeks-chart-subtitle{
    margin:0 0 18px!important;
    font-family:inherit!important;
    font-size:16px!important;
    line-height:1.55!important;
    font-weight:400!important;
    color:#334155!important;
}

#reup-2027-form-wrap table.reup-weeks-chart{
    width:100%!important;
    min-width:640px!important;
    border-collapse:collapse!important;
    border:1px solid #9ca8b3!important;
    background:#ffffff!important;
}

#reup-2027-form-wrap table.reup-weeks-chart th{
    padding:10px 12px!important;
    border:1px solid #9ca8b3!important;
    background:#eaf4ff!important;
    font-family:inherit!important;
    font-size:18px!important;
    line-height:1.25!important;
    font-weight:700!important;
    color:#111827!important;
    text-align:center!important;
}

#reup-2027-form-wrap table.reup-weeks-chart td{
    padding:7px 12px!important;
    border:1px solid #9ca8b3!important;
    background:#f7fbff!important;
    font-family:inherit!important;
    font-size:17px!important;
    line-height:1.25!important;
    font-weight:500!important;
    color:#111827!important;
    text-align:center!important;
}

#reup-2027-form-wrap table.reup-weeks-chart td:nth-child(2){
    width:86px!important;
    font-size:22px!important;
    font-weight:700!important;
}

#reup-2027-form-wrap table.reup-weeks-chart .reup-week-select{
    display:block!important;
    width:100%!important;
    border:0!important;
    background:transparent!important;
    font-family:inherit!important;
    font-size:17px!important;
    line-height:1.25!important;
    font-weight:700!important;
    color:#1f5fbf!important;
    text-align:center!important;
    cursor:pointer!important;
}

#reup-2027-form-wrap .reup-2027-form-title,
#reup-2027-form-wrap .reup-different-week-warning-note{
    font-family:inherit!important;
    letter-spacing:normal!important;
}

#reup-2027-form-wrap .reup-different-week-warning-note{
    font-size:16px!important;
    line-height:1.55!important;
    font-style:normal!important;
}

@media (max-width: 767px){
    #reup-2027-form-wrap table.reup-weeks-chart{
        min-width:540px!important;
    }
}


/* SRE warning/error font sync, 2026-05-17 */
#reup-2027-form-wrap .reup-different-week-warning-red,
#reup-2027-form-wrap .reup-different-week-warning-note{
    font-family:'Quicksand',sans-serif!important;
}

#reup-2027-form-wrap .reup-2027-response,
#reup-2027-form-wrap .reup-2027-response *,
#reup-2027-form-wrap .reup-error-message,
#reup-2027-form-wrap .reup-error-message *{
    font-family:'Edu Australia VIC WA NT',cursive!important;
}


/* SRE hard-force response/error font override, 2026-05-17 */
.reup-2027-response,
.reup-2027-response *,
.reup-error-message,
.reup-error-message *{
    font-family:'Edu Australia VIC WA NT',cursive!important;
}

#reup-2027-form-wrap .reup-2027-response .reup-2027-success-msg,
#reup-2027-form-wrap .reup-2027-response .reup-2027-success-msg *{
    font-family:'Quicksand',sans-serif!important;
}

.reup-different-week-warning-red,
.reup-different-week-warning-note{
    font-family:'Quicksand',sans-serif!important;
}


/* SRE 2027 required-field markers + legend + delete button, 2026-07-07 */
#reup-2027-form-wrap .reup-req-star{
    color:#c00 !important;
    font-weight:700 !important;
}

#reup-2027-form-wrap .reup-required-legend{
    margin:0 0 14px !important;
    font-size:14px !important;
    font-weight:600 !important;
    color:#384656 !important;
}

#reup-2027-form-wrap .reup-contact-fields .reup-req{
    position:relative !important;
    display:block !important;
    width:100% !important;
}

#reup-2027-form-wrap .reup-contact-fields .reup-req.reup-req-full{
    grid-column:1 / -1 !important;
}

#reup-2027-form-wrap .reup-contact-fields .reup-req > input,
#reup-2027-form-wrap .reup-contact-fields > input{
    margin-bottom:0 !important;
}

#reup-2027-form-wrap .reup-contact-fields .reup-req::after{
    content:"*" !important;
    position:absolute !important;
    top:8px !important;
    right:12px !important;
    color:#c00 !important;
    font-size:16px !important;
    font-weight:700 !important;
    line-height:1 !important;
    pointer-events:none !important;
}

#reup-2027-form-wrap .reup-date-block-remove{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:30px !important;
    height:30px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:50% !important;
    background:#c62828 !important;
    color:#fff !important;
    font-size:20px !important;
    line-height:1 !important;
    font-weight:700 !important;
    cursor:pointer !important;
    z-index:5 !important;
    box-shadow:0 2px 6px rgba(0,0,0,0.2) !important;
}

#reup-2027-form-wrap .reup-date-block-remove:hover,
#reup-2027-form-wrap .reup-date-block-remove:focus{
    background:#a91b1b !important;
    outline:none !important;
}

/* SRE 2027 inline required-field validation (jump-to-field), 2026-07-07 */
#reup-2027-form-wrap input.reup-invalid,
#reup-2027-form-wrap select.reup-invalid{
    border-color:#c00 !important;
    box-shadow:0 0 0 2px rgba(204,0,0,0.16) !important;
}

#reup-2027-form-wrap .reup-field-error{
    margin:6px 0 2px !important;
    color:#c00 !important;
    font-size:13.5px !important;
    font-weight:700 !important;
    line-height:1.35 !important;
}

#reup-2027-form-wrap .reup-contact-fields > .reup-field-error{
    grid-column:1 / -1 !important;
    margin-top:-6px !important;
}

@keyframes reupErrorPulse{
    0%,100%{opacity:1;}
    50%{opacity:0.12;}
}

#reup-2027-form-wrap .reup-field-error.reup-field-error-pulse{
    animation:reupErrorPulse 1s ease-in-out infinite !important;
}

/* SRE 2027 "Schlosser Smart Fill" address autocomplete, 2026-07-07 */
#reup-2027-form-wrap .reup-smartfill-note{
    margin:0 !important;
    padding:6px 2px 10px !important;
    background:transparent !important;
    border:0 !important;
    color:#6b7280 !important;
    font-size:13px !important;
    line-height:1.45 !important;
    font-weight:400 !important;
}

#reup-2027-form-wrap .reup-smartfill-note strong{
    color:#6b7280 !important;
    font-weight:700 !important;
}

#reup-2027-form-wrap .reup-smartfill-wrap{
    position:relative !important;
}

#reup-2027-form-wrap .reup-smartfill-suggestions{
    position:absolute !important;
    top:100% !important;
    left:0 !important;
    right:0 !important;
    z-index:60 !important;
    margin-top:4px !important;
    max-height:320px !important;
    overflow-y:auto !important;
    background:#fff !important;
    border:1px solid rgba(15,81,125,0.3) !important;
    border-radius:12px !important;
    box-shadow:0 16px 34px rgba(18,36,58,0.18) !important;
}

#reup-2027-form-wrap .reup-smartfill-suggestions[hidden]{
    display:none !important;
}

#reup-2027-form-wrap .reup-smartfill-heading{
    padding:10px 14px !important;
    border-bottom:1px solid rgba(15,81,125,0.14) !important;
    background:#fff7e7 !important;
    color:#c62828 !important;
    font-size:14px !important;
    font-weight:700 !important;
    line-height:1.35 !important;
}

#reup-2027-form-wrap .reup-smartfill-option{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:10px 14px !important;
    border:0 !important;
    border-bottom:1px solid rgba(15,81,125,0.08) !important;
    background:#fff !important;
    color:#1b2b3a !important;
    font-size:15px !important;
    line-height:1.3 !important;
    text-align:left !important;
    cursor:pointer !important;
}

#reup-2027-form-wrap .reup-smartfill-option:hover,
#reup-2027-form-wrap .reup-smartfill-option.is-active{
    background:#eaf4ff !important;
}

#reup-2027-form-wrap .reup-smartfill-addr{
    display:block !important;
    font-weight:700 !important;
}

#reup-2027-form-wrap .reup-smartfill-sub{
    display:block !important;
    margin-top:2px !important;
    color:#5a6b7b !important;
    font-size:12.5px !important;
    font-weight:600 !important;
}

#reup-2027-form-wrap .reup-smartfill-more{
    padding:8px 14px !important;
    background:#f7fbff !important;
    color:#5a6b7b !important;
    font-size:12.5px !important;
}


/* ============================================================
   SRE Re-Up 2027 corresponding-weeks chart – MOBILE, 2026-07-20
   Mobile-only stacked "card" layout for each 2026->2027 week
   mapping, plus a non-collapsible (always-open) accordion.
   Scoped strictly to the Re-Up corresponding-weeks charts inside
   #reup-2027-form-wrap .reup-date-block so it never touches other
   accordions/tables on the site. High specificity + !important is
   deliberate: it must win over the wp_head inline overrides.
   ============================================================ */
@media (max-width: 767px){

    /* --- Accordion summary behaves like a plain section heading --- */
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block .reup-weeks-chart-accordion > summary{
        cursor:default !important;
        list-style:none !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block .reup-weeks-chart-accordion > summary::-webkit-details-marker{
        display:none !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block .reup-weeks-chart-accordion > summary::marker{
        content:"" !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block .reup-weeks-chart-accordion > summary::after,
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block .reup-weeks-chart-accordion[open] > summary::after{
        content:"" !important;
        display:none !important;
    }

    /* --- Full mobile width, no horizontal scroll --- */
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block .reup-weeks-chart-wrap{
        overflow-x:visible !important;
        padding:0 !important;
    }

    /* --- Table -> vertical stack of cards --- */
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart{
        display:block !important;
        width:100% !important;
        min-width:0 !important;
        border:0 !important;
        background:transparent !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart thead{
        position:absolute !important;
        width:1px !important;
        height:1px !important;
        margin:-1px !important;
        padding:0 !important;
        overflow:hidden !important;
        clip:rect(0 0 0 0) !important;
        white-space:nowrap !important;
        border:0 !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody{
        display:block !important;
        width:100% !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody tr{
        display:block !important;
        width:100% !important;
        margin:0 0 14px !important;
        padding:14px 12px !important;
        border:1px solid #9ca8b3 !important;
        border-radius:14px !important;
        background:#f7fbff !important;
        box-shadow:0 1px 3px rgba(0,0,0,.08) !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody td{
        display:block !important;
        width:100% !important;
        padding:4px 0 !important;
        border:0 !important;
        background:transparent !important;
        text-align:center !important;
        white-space:normal !important;
    }

    /* Line 1 caption: "2026 Week" */
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody td:first-child::before{
        content:"2026 Week" !important;
        display:block !important;
        margin:0 0 8px !important;
        font-size:14px !important;
        font-weight:700 !important;
        letter-spacing:.04em !important;
        text-transform:uppercase !important;
        color:#5a6b7b !important;
    }

    /* Line 2: "Becomes" caption + the ➨ arrow already in the cell */
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody td:nth-child(2){
        width:100% !important;
        margin:2px 0 !important;
        font-size:22px !important;
        font-weight:700 !important;
        line-height:1.2 !important;
        color:#0b3558 !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody td:nth-child(2)::before{
        content:"Becomes " !important;
        font-size:13px !important;
        font-weight:700 !important;
        letter-spacing:.04em !important;
        text-transform:uppercase !important;
        color:#5a6b7b !important;
    }

    /* Line 3 caption: "2027 Week" (sits above the 2027 dates value) */
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody td:last-child{
        font-size:20px !important;
        font-weight:700 !important;
        line-height:1.25 !important;
        color:#0b3558 !important;
    }
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody td:last-child::before{
        content:"2027 Week" !important;
        display:block !important;
        margin:8px 0 4px !important;
        font-size:14px !important;
        font-weight:700 !important;
        letter-spacing:.04em !important;
        text-transform:uppercase !important;
        color:#5a6b7b !important;
    }

    /* Green selectable 2026 week button: large touch target, near-full width */
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-date-block table.reup-weeks-chart tbody tr td .reup-week-select{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        min-height:54px !important;
        padding:14px 14px !important;
        font-size:20px !important;
        line-height:1.25 !important;
        font-weight:700 !important;
        border-radius:12px !important;
    }
}


/* ============================================================
   SRE Re-Up 2027 "Submit" button – MOBILE centering fix, 2026-07-20
   Root cause: #reup-2027-form-wrap .reup-2027-submit is
   display:inline-flex with no width and no auto margins, so it is an
   inline-level box sized to its content (label + 2x30px padding). On
   narrow phones that intrinsic width exceeds the section's content box;
   because it is inline-level and left-anchored (parent text starts at
   the left) it cannot center and simply overflows to the right, which
   reads as "shifted / not centered".
   Fix: on mobile only, make it a block-level flex button at full content
   width with box-sizing:border-box and symmetric auto side margins, so it
   fits exactly inside the section's already-symmetric 20px padding and is
   therefore perfectly centered at every width (320/360/390/412/480+).
   No transforms, no negative margins, no pixel offsets. Desktop keeps the
   original inline-flex button (this block is mobile-scoped).
   ============================================================ */
@media (max-width: 767.98px){
    body.sre-reup-2027-page #reup-2027-form-wrap .reup-2027-submit{
        display:flex !important;
        width:100% !important;
        max-width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
        padding-left:18px !important;
        padding-right:18px !important;
        transform:none !important;
    }
}

/* ============================================================
   SRE Re-Up 2027 "keep original week(s)?" question, 2026-08-05
   Lives inside the changed-week warning box. The legend mirrors the
   existing date-field label styling (.reup-field label: Quicksand,
   0.9em, bold 700, #26394d) so it reads as a native form label, not
   a warning/note. Scoped to the new fieldset only — no other labels
   are affected.
   ============================================================ */
#reup-2027-form-wrap .reup-keep-original-week{
    border:0 !important;
    margin:12px 0 0 !important;
    padding:0 !important;
    min-width:0 !important;
}
#reup-2027-form-wrap .reup-keep-original-week-legend{
    display:block !important;
    width:100% !important;
    float:none !important;
    border:0 !important;
    margin:0 0 0.25rem !important;
    padding:0 !important;
    font-family:'Quicksand',sans-serif !important;
    font-size:0.9em !important;
    line-height:1.4 !important;
    color:#26394d !important;
    font-weight:700 !important;
    text-align:left !important;
}
