/**
 * Prevent Form.io / Bootstrap styles loaded for registration forms
 * from breaking the theme header and footer layout.
 */

body.wc-user-registration-active:not(.wc-registration-modal-template) footer,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer,
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon,
body.wc-user-registration-active:not(.wc-registration-modal-template) [role="contentinfo"] {
	clear: both;
}

/* Bootstrap grid rows inside footers only — not Storefront .footer-widgets */
body.wc-user-registration-active:not(.wc-registration-modal-template) footer .row,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer .row,
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon .row {
	display: flex !important;
	flex-wrap: wrap !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Bootstrap column children only — exclude theme wrappers like .col-full */
body.wc-user-registration-active:not(.wc-registration-modal-template) footer .row > [class*="col-"]:not(.col-full),
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer .row > [class*="col-"]:not(.col-full),
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon .row > [class*="col-"]:not(.col-full) {
	position: relative !important;
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: 100% !important;
}

/* Storefront: restore native float-based footer widget columns */
body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets {
	display: block !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets::before,
body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets::after {
	content: "" !important;
	display: table !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets::after {
	clear: both !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets .block {
	display: block !important;
	box-sizing: border-box !important;
	flex: none !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets.col-2 .block {
	width: 47.8260869565% !important;
	float: left !important;
	margin-right: 4.347826087% !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets.col-2 .block.footer-widget-2 {
	float: right !important;
	margin-right: 0 !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets.col-3 .block {
	width: 30.4347826087% !important;
	float: left !important;
	margin-right: 4.347826087% !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets.col-3 .block.footer-widget-3 {
	float: right !important;
	margin-right: 0 !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets.col-4 .block {
	width: 21.7391304348% !important;
	float: left !important;
	margin-right: 4.347826087% !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets.col-4 .block.footer-widget-4 {
	float: right !important;
	margin-right: 0 !important;
}

/* Storefront content wrapper */
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon > .col-full,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer > .col-full {
	width: 100% !important;
	max-width: 66.4989378333em !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 2.617924em !important;
	padding-right: 2.617924em !important;
	box-sizing: content-box !important;
	flex: none !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) footer .widget,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer .widget,
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon .widget,
body.wc-user-registration-active:not(.wc-registration-modal-template) .footer-widgets .widget {
	float: none !important;
	clear: none !important;
	margin-bottom: 1.5em;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) footer table,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer table,
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon table {
	border-collapse: collapse !important;
	width: 100% !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) footer table#wp-calendar,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer table#wp-calendar,
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon table#wp-calendar {
	table-layout: fixed !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) footer table#wp-calendar caption,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer table#wp-calendar caption,
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon table#wp-calendar caption {
	caption-side: top !important;
	text-align: center !important;
}

body.wc-user-registration-active:not(.wc-registration-modal-template) header a,
body.wc-user-registration-active:not(.wc-registration-modal-template) nav a,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-header a,
body.wc-user-registration-active:not(.wc-registration-modal-template) .main-navigation a,
body.wc-user-registration-active:not(.wc-registration-modal-template) footer a,
body.wc-user-registration-active:not(.wc-registration-modal-template) .site-footer a,
body.wc-user-registration-active:not(.wc-registration-modal-template) #colophon a {
	text-decoration: none;
}
