/*
 Theme Name:   Coaty And Woods, P.C.
 Description:  Improvise Child Theme for Coaty And Woods, P.C.
 Author:       Crack-Ajax
 Author URI:   https://crack-ajax.com
 Template:     improvise
 Version:      1.0
*/

/** Changes for Improvise Theme **/

.page-content>.wp-block-cover:first-child {
	padding-top: var(--xl-spacing);
	
	@media (max-width: 781px) {
		min-height: auto;
		
		& h1 {
			font-size: 40px !important;
		}
	}
}

.blog .pagination {  /* line 2843 */
	position: relative;
}

.post-footer.alignwide { /* Post nav on single post change alignwide to alignfull in html */
	margin-left: calc(-100vw / 2 + 100% / 2);
    margin-right: calc(-100vw / 2 + 100% / 2);
	margin-bottom: var(--xl-spacing);
	max-width: 100vw !important;
    width: 100vw !important;
	padding: 0 var(--s-spacing);
	position: relative;
}

/*@media (min-width:1201px) {

	.alignwide {
		margin-left: calc(var(--xl-spacing) * -1) !important;
		margin-right: calc(var(--xl-spacing) * -1) !important;
	}
}*/

@media (max-width:1200px) {

	.alignwide {
		margin-left: 0;
		margin-right: 0;
		width: 100%;
	}
}

@media (min-width: 769px) and (max-width:1200px) {
	
	.content-flush.has-media-on-the-right .wp-block-media-text__content {
		padding-left: 0;
	}
	
	.content-flush:not(.has-media-on-the-right) .wp-block-media-text__content {
		padding-right: 0;
	}
}

@media (max-width:768px) {
	.content-flush .wp-block-media-text__content {
		padding-left: 0 !important;
		padding-right: 0!important;
	}
}

/** End Changes for Improvise Theme **/

body {
	--color-platinum: #D7DED7;
}

body.has-top-bar .document-header .main-bar {
	border-bottom: 1px solid white !important;
	min-height: var(--xl-spacing);
    max-height: var(--xl-spacing);
}
body.has-top-bar.fixed .document-header .main-bar {
	min-height: var(--l-spacing);
    max-height: var(--l-spacing);
}

main.blog {
	background-color: var(--color-accent);
}

.home article,
.page article {
	padding-bottom: 0;
}

h2 {
	font-weight: 400;	
}

.improvise img {
	border-radius: 4px !important;
}

.improvise hr.wp-block-separator {
	border: 0 !important;
	border-top: 1px solid var(--color-accent) !important;
	margin-top: var(--xl-spacing);
	margin-bottom: var(--xl-spacing);
}

.improvise .document-header .logo {
	padding: var(--s-spacing);
	padding-left: 0;
	
	& img {
		max-height: calc(var(--xl-spacing) - ( 2 * var(--s-spacing) ));
	}
}

.improvise.fixed .document-header .logo img {
	max-height: calc(var(--l-spacing) - ( 2 * var(--s-spacing) ));
}

.improvise .primary-nav .dropdown .caret {
	display: none;
}

.improvise.has-transparent-nav .document-header {
	border-bottom: 1px solid white !important;
}

.improvise .primary-nav #menu-main-menu {
	
	li > a:not(:hover) {
		border-bottom: 2px solid transparent;
	}
	
	& .button {
		background-color: inherit;
		border: 0;
		padding-right: 0;
		
		& a {
		color: var(--color-primary);
		background-color: white;
		border: 1px solid white;
		border-radius: 50px;
		text-decoration: none;
		padding: 10px 20px;
		
			&:hover {
				color: white;
				background-color: var(--color-accent);
			}
		}
		
		@media (max-width: 870px) {
			display: none;
		}
	}
	
	& .dropdown-menu {
		margin-top: calc( ( var(--xl-spacing) - 17px ) / 2 );
		border: 1px solid white;
		border-top: 0;
		
		li {
			background-color: rgba(0,60,59,0.9);
		
			& a {
				color: white;
				border-bottom: 2px solid transparent;
			
				&:hover {
					border-bottom: 2px solid white;
				}
			}
		}
		
		@media (max-width: 1200px) {
			margin-top: calc( ( var(--l-spacing) - 19px ) / 2 );
		}
		
		@media (max-width: 850px) {
			margin-top: 0;
			border: 0;
		}
	}
}

@media (max-width: 870px) {
	.mobile-telephone-button {
        box-shadow: 0 -1px 3px rgba(0, 0, 0, 0.2);
        display: block;
    }
	.mobile-telephone-button a {
        color: var(--color-white);
        display: block;
        font-size: 1.125rem;
        padding: 10px;
        text-decoration: none;
    }
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media,
.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media {
	text-align: initial;
	width: 100%;
}

.improvise.fixed .primary-nav #menu-main-menu {
	
	& .dropdown-menu {
		margin-top: calc( ( var(--l-spacing) - 17px ) / 2 );
		
		li {
			background-color: var(--color-primary);
		}
		
		@media (max-width: 850px) {
			margin-top: 0;
		}
	}
}

.wp-block-button .wp-block-button__link {
	font-family: var(--font-primary);
	font-weight: bold;
}

.wp-block-button.wide-button  .wp-block-button__link {
	width: 288px;
}

.wp-block-group.has-background > .wp-block-group__inner-container, 
.wp-block-group.alignwide.has-background > .wp-block-group__inner-container, 
.wp-block-group.alignfull.has-background > .wp-block-group__inner-container {
	padding: var(--l-spacing) var(--l-spacing);
	
	@media (max-width: 1200px) {
		padding: var(--m-spacing) var(--s-spacing);
	}
}

.home-hero-buttons {
	
	& .wp-block-button:first-child {
	
		& .wp-block-button__link {
		 	&:hover {
			 	border-color: var(--color-accent) !important;
				color: var(--color-accent) !important;
				background-color: white !important;
			}
		}
	}
	
	& .wp-block-button:last-child {
	
		& .wp-block-button__link {
		 	&:hover {
			 	border-color: white !important;
			 	color: white !important;
			 	background-color: var(--color-accent) !important;
			}
		}
	}
}

.homepage-services {
	
	& h2 {
		margin-bottom: var(--l-spacing);
	}
	
	& .wp-block-columns {
		
		/*&:first-of-type {*/
			margin-bottom: var(--m-spacing);
		/*}*/
		
		& .wp-block-column {
			border: 1px solid var(--color-platinum);
			border-radius: 4px;
			padding: var(--m-spacing);
			display: flex;
			flex-direction: column;
			
			&:not(:has(:not(:empty))) {
				border: 0;
			}
			
			& h3 {
				padding-bottom: var(--s-spacing);
				border-bottom: 1px solid var(--color-platinum);
				
				@media (min-width: 1200px) {
					white-space: nowrap;
				}
				
				@media (max-width: 480px) {
					display: flex;
					align-items: center;
				}
				
				& img {
					vertical-align: middle;
    				margin-right: var(--s-spacing);
				}
				
				& a {
					text-decoration: none;
					
					&:hover {
						text-decoration: underline;
					}
				}
			}
		
			& figure {
				display: flex;
				align-items: center;
				text-align: left;
				min-height: 80px;
			}
			
			& .wp-block-buttons {
				margin: auto 0;
				
				& .wp-block-button {
					width: calc( 100% + 20px );
					margin-left: -10px;
					margin-right: -10px;
					
					.wp-block-button__link {
						position: relative;
						border-color: transparent;
						padding-left: 10px;
						padding-right: 10px;
						border-radius: 50px;
						font-size: 16px;
					
						&:after {
							content: '>';
							position: absolute;
							color: var(--color-accent);
							right: 10px;
							top: 50%;
                    		transform: translateY(-50%);
						}
						
						&:hover {
							
							&:after {
								color: white;
							}
						}
					}
				}
			}
		}
	}
}

.improvise figure.wp-block-pullquote {
	margin-top: 0;
	padding: 0;
	border: 0;
	
	& blockquote {
		text-align: left;
		
		&:before {
			
			content: '';
			width: 0;
		}
		
		& p {
			position: relative;
			font-family: var(--font-primary);
			padding-bottom: 24px;
			border-bottom: 1px solid var(--color-platinum);
			
			& img {
				position: absolute;
    			left: -19px;
    			top: -10px;
    			width: 209px;
			}
		}
		
		& cite {
			color: var(--color-light-text) !important;
			font-size: 1rem;
			font-family: var(--font-primary);
			font-weight: bold;
			
			&:before {
				content: '\2014  ';
				color: var(--color-accent);
			}
		}
	}
}

.overlap-image {
	position: relative;
	margin-top: -76px;
	margin-bottom: var(--l-spacing);
	z-index: 1;
	
	& img {
		width: 100%;
	}
}

.restricted-width {
	margin-left: 0 
}

.improvise .service-hero {
	
	& .wp-block-cover__inner-container {
		max-width: 100%;
		flex-basis: 100%;
        flex-grow: 1;
		padding: 0 var(--l-spacing);
		
		& figure {
			position: relative;
			width: 598px;
			height: 483px;
			
			& img {
				position: absolute;
				width: 634px;
    			height: 634px;
    			left: -32px;
    			bottom: -96px;
			}
		}
	}
}

.wp-block-media-text.service-media-text {
	
	& .wp-block-media-text__content {
		padding-top: 0;
		
		@media (max-width: 768px) {
			padding-top: var(--l-spacing);
			padding-left: 0;
			padding-right: 0;
		}
	}
	
	& .wp-block-media-text__media {
		
		& img {
		
			@media (max-width: 768px) {
				position: relative;
			}
		}
	}
}

.need-help-nav {
	max-width: 1024px;
	margin: 0 auto;
	
	& hr.wp-block-separator {
		border-top-color: var(--color-platinum) !important;
	}
	
	& .wp-block-columns {
		margin-top: 12px;
		margin-left: auto;
		
		& .wp-block-column {
			
			& .wp-block-list {
				list-style-type: none;
				padding-left: 0;
				
				& li {
					position: relative;
					margin-bottom: var(--s-spacing);
						
					&:hover {
						color: var(--color-accent);
					}
					
					& a {
						text-decoration: none;
						
						img {
							vertical-align: middle;
							margin-right: 8px;
						}
					}
					
					&:after {
						content: '>';
						position: absolute;
						right: 10px;
						top: 50%;
                        transform: translateY(-50%);
					}
				}
			}
		}
	}
}

.wp-block-group:has(.need-help-nav) {
	position: relative;
	margin-top: var(--xl-spacing);
	margin-bottom: var(--xl-spacing);
	
	&:before {
		content: 'Coaty & Woods Coaty & Woods';
		position: absolute;font-family: var(--font-primary-heading);
        font-size: 100px;
        white-space: nowrap;
        text-align: center;
        width: 100vw;
        color: var(--color-platinum);
        z-index: -1;
        top: 50%;
		transform: translateY(-50%);
	}
}

.improvise .document-footer {
	
	& .footer-widgets {
		grid-template-columns: repeat(5, 18%);
    	grid-gap: 2.5%;
		margin-bottom: calc(var(--s-spacing) + 25px);
		
		& a:not(.wp-block-button__link), p {
			font-size: 14px;
			
			& strong {
				font-size: 1rem;
			}
		}
		
		& .wp-block-buttons {
			margin-top: var(--s-spacing);
				
				& .wp-block-button__link {
					font-size: 1rem;
					
					&:hover {
						background-color: white !important;
						border-color: var(--color-accent) !important;
						color: var(--color-accent) !important;
						text-decoration: none;
						opacity: 1 !important;
					}
				}
		}
		
		@media (max-width: 992px) {
			grid-template-columns: 100%;
			text-align: center;
			
			& li:first-child {
				grid-row: inherit;
        		grid-column: inherit;
			}
			
			& pre {
				max-width: 300px;
				margin: auto;
				text-align: center;
			}
			
			& .wp-block-button {
				margin: auto;
				margin-bottom: var(--l-spacing);
			}
		}
	}
}

/* ------ 11&1 Changes ------ */
.document-header {
	min-height: 120px !important;
    max-height: 120px !important;
}
.fixed .document-header {
	min-height: 90px !important;
    max-height: 90px !important;
}
.document-header .logo img {
    max-height: 80px !important;
}
.fixed .document-header .logo img {
    max-height: 55px !important;
}
nav .dropdown-menu {
    margin-top: calc((120px - 17px) / 2) !important;
}
.fixed nav .dropdown-menu {
    margin-top: calc((90px - 17px) / 2) !important;
}
body:not(.has-top-bar) .document-header, body.has-top-bar .document-header .main-bar {
	padding: 0 calc((100vw - 1327px) / 2) !important;
}
#menu-main-menu .button {
	padding-right: 0 !important;
}
.alignfull > .wp-block-cover__inner-container {
	padding-left: calc((100vw - 1312px) / 2) !important;
	padding-right: calc((100vw - 1312px) / 2) !important;
    max-width: unset !important;
}
.mega-menu ul > li > a {
	display: flex;
	align-items: center;
	column-gap: 15px;
}
.mm-icon {
	max-width: 40px !important;
}
h1 {
	font-weight: 400;
}
.content-flush.wp-block-media-text.has-media-on-the-right:not(.has-background):not(.alignfull) .wp-block-media-text__content {
    padding-left: 0 !important;
}
.wp-block-group.has-background:not(.need-help-nav) > .wp-block-group__inner-container, .wp-block-group.alignwide.has-background > .wp-block-group__inner-container, .wp-block-group.alignfull.has-background > .wp-block-group__inner-container  {
    padding-left: 0;
    padding-right: 0;
}
.mega-menu .dropdown-menu, .has-transparent-nav:not(.fixed) .document-header:hover {
	background-color: var(--color-header-bg) !important;
}
.mega-menu li {
    background-color: transparent !important;
    border-radius: 5px;
}
.mega-menu li:hover {
	background-color: rgb(255 255 255 / 5%) !important;
}
.mega-menu li > a {
	border: none !important;
}
.wp-block-buttons,
.wp-block-buttons.aligncenter {
	margin: var(--m-spacing) auto;
}
article {
    padding: 0 !important;
}
.attorney-bio {
	overflow: visible !important;
}
.attorney-bio > .wp-block-cover__inner-container {
	width: 100% !important;
    padding-bottom: 0 !important;
}
.wp-block-column.attorney-bio-img {
	margin-bottom: -60px !important;
}
.about-attorney {
	margin-top: 120px !important;
    max-width: 1000px;
}
.homepage-services .wp-block-button> .wp-block-button__link::after, .need-help-nav .wp-block-list li::after {
	font-family: 'Glyphicons Halflings';
    content: "\e080" !important;
}
.sub-heading {
	font-family: var(--font-primary) !important;
}
.about-attorney .wp-block-table {
	margin-top: 40px;
    background-color: var(--color-header-bg);
    padding: 0 20px;
    border-radius: 5px;
}
.about-attorney .wp-block-table td {
	border: none;
    color: #fff;
    padding: 1.5em 5px;
}
.about-attorney .wp-block-table tr {
	border-bottom: 1px solid #ffffff99;
}
.about-attorney .wp-block-table tr td:first-child {
	vertical-align: baseline;
}
.about-attorney table tr:last-child {
	border-bottom: none;
}
.about-attorney .wp-block-table h3 {
    color: #ffffff99 !important;
}

@media (max-width: 1350px) {
    .document-footer {
        padding: var(--m-spacing) var(--s-spacing) !important;
    }
    body:not(.has-top-bar) .document-header, body.has-top-bar .document-header .main-bar, .wp-block-group.alignfull {
    	padding: 0 var(--s-spacing) !important;
    }
    .alignfull > .wp-block-cover__inner-container, article {
    	padding-left: var(--s-spacing) !important;
        padding-right: var(--s-spacing) !important;
    }
}

@media (max-width: 1200px) {
    .primary-nav {
        top: 120px !important;
     }
     .fixed .primary-nav {
        top: 90px !important;
     }
     nav .dropdown-menu, .fixed nav .dropdown-menu {
        margin-top: calc((61px - 17px) / 2) !important;
    }
}

@media (max-width: 980px) {
    .page-content>.wp-block-cover:first-child {
        padding-top: 25vh !important;
        display: block !important;
    }
    .home .page-content>.wp-block-cover:first-child {
        padding-top: 40vh !important;
    }
}

@media (max-width: 850px) {
    .primary-nav .dropdown .dropdown-menu li a {
        padding: 0 0 0 10px !important;
    }
    .mega-menu .dropdown-menu li:last-child a {
    	padding-bottom: 15px !important;
    }
    nav .dropdown-menu, .fixed nav .dropdown-menu {
        margin-top: 0 !important;
    }
}

@media only screen and (min-width: 1200px) {
	.mega-menu .dropdown-menu {
		position: fixed !important;
		width: 100.5vw !important;
		display: grid !important;
		grid-template-columns: repeat(3, 1fr);
        padding-left: calc((100vw - 1312px) / 2) !important;
    	padding-right: calc((100vw - 1312px) / 2) !important;
	}
    .mm-icon {
        max-width: 80px !important;
    }
    .mega-menu li {
        padding: 0px !important;
    }
    .mega-menu li a {
        padding: 20px !important;
    }
    .alignwide {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    #menu-main-menu > li {
    	padding: 50px 15px !important;
    }
}