/*
	Theme Name: NOS
	Theme URI: https://wpdedicated.uk
	Description: Hand Crafted theme
	Version: 1.5
	Author: Ben Kitching
	Author URI: https://benkitching.uk
	Tags: Blank, HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

:root {
  --black: #141414;
  --gray: #8c8c8c;
  --light: #fafafa;
}

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
html {
	font-size:1vw;
	margin:0;
	padding:0;
}

body {
	font: 300 1rem/1.25 'mundial', Helvetica, Arial, sans-serif;
	color: var(--black);
	margin: 0;
	padding: 1rem;
	max-width: 100vw;
	overflow-x: clip;
	background-color: var(--light);
}
body.loading, body.info {
	overflow:hidden;
}

/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}

img {
	max-width:100%;
	vertical-align:bottom;
}

/*------------------------------------*\
    LINKS
\*------------------------------------*/

a {
	color: inherit;
	text-decoration: none;
	transition: 0.5s all;
  position: relative;
  padding-bottom: 0.1rem;
}

a:after {
  content: '';
  width: 0;
  border-bottom: 1px solid;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: 0.5s width;
}
a:hover {
	text-decoration: none;
}
a.no-hover:after {
  display: none
}
a:hover:after, a.active:after {
  width: 100%;
}
a:focus {
	outline: 0;
}
a:hover,
a:active {
	outline: 0;
}

a.btn {
  text-align: center;
  color: var(--gray);
  text-decoration: none;
  padding: 0.15rem 1rem 0.25rem;
  border: 0.5px solid;
  border-radius: 2rem;
  display: inline-block;
  line-height: 1.2;
  margin-right: 0.25rem;
}
.btn:after {
  display: none;
}
a.btn:hover, a.btn.active {
	color: var(--black);
}

a.btn.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

a.fake-radio {
  display: flex;
  align-items: center;
  margin-right: 1rem;
  line-height: 1;
}
a.fake-radio span {
  display: inline-block;
  width: 1rem;
  height: 1rem;
  margin-right: 0.5rem;
  border-radius: 50%;
  border: 1px solid;
  position: relative;
  top: 0.05rem;
}

a.fake-radio.active span {
  background-color: var(--black);
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

.wrapper {
	width: 100%
	margin: 0 auto;
	position: elative;
}

#header {
	position: fixed;
	width: 100%;
  max-width: 100vw;
	padding: 1rem;
	top: 0;
	left: 0;
  transition: 0.5s background-color;
  z-index: 10;
}

.scrolled #header {
  background-color: rgba(250,250,250, 0.2);
  backdrop-filter: blur(2px);
}

main {
	padding-top: 4rem;;
}

.footer {
  margin-top: 8rem;
}
.footer .grid {
  align-items: end;
}
.footer svg {
  width: 100%
}
.footer p {
  margin-bottom: 0;
}
.footer a {
  margin-left: 0.5rem;
}
.footer a#back-top {
	margin: 0 0 4rem;
	display: inline-block;
}


/*------------------------------------*\
    Colors
\*------------------------------------*/

.fill-black {
  fill: var(--black);
}
.text-gray {
  color: var(--gray);
}

.bg-black {
	background-color: var(--black);
}

/*------------------------------------*\
	MISC
\*------------------------------------*/

::selection {
	background: var(--black);
	color: var(--gray);
	text-shadow: none;
}
::-webkit-selection {
	background: var(--black);
  color: var(--gray);
  text-shadow: none;
}
::-moz-selection {
	background: var(--black);
  color: var(--gray);
  text-shadow: none;
}

/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

p, h1, .h1, h2, .h2, h3, .h3, h4, h5, h6 {
	margin:1rem 0;
	font-weight: 300;
}

h1, .h1 {
	font-size: 1.6rem;
}

h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-size: 1rem;
}

.morion {
	font-family: 'Morion';
}

.regular, strong {
  font-weight: 600;
} 

.text-right {
  text-align: right;
}

@font-face {
    font-family: 'Morion';
    src: url('./fonts/Morion-Italic.woff2') format('woff2'),
        url('./fonts/Morion-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Morion';
    src: url('./fonts/Morion.woff2') format('woff2'),
        url('./fonts/Morion.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/*------------------------------------*\
    Spacing and Grid
\*------------------------------------*/

.grid {
  display: grid;
  align-items: stretch;
  grid-column-gap: 0.5rem;
  grid-row-gap: 0.5rem;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.grid.align-center {
  align-items: center;
}

.grid1 {
  grid-column-end: span 1;
}

.grid2 {
  grid-column-end: span 2;
}

.grid3 {
  grid-column-end: span 3;
}

.grid4 {
  grid-column-end: span 4;
}

.grid5 {
  grid-column-end: span 5;
}

.grid6 {
  grid-column-end: span 6;
}

.w100, iframe {
  width: 100%;
}
img.w100, video.w100 {
  height: auto;
}

#gmap iframe {
	height: 40rem;
}

/*------------------------------------*\
    POSTS
\*------------------------------------*/

#portfolio-filter {
  margin-bottom: 1rem;
}
.post-thumbnail.has-video {
	margin-bottom: -5px;
}
.post-meta h2, .post-meta p, .mt25 {
  margin-bottom: 6rem;
  margin-top: 0.25rem;
  font-size: 0.8rem;
}
.team-meta p {
	font-size: 1rem;
}
.post-meta h2 span, .post-meta p span {
	margin-left: 0.5rem;
}

.post-meta p {
	margin-top: 0.25rem;
}

#home-intro h1 {
  margin: 6rem 0 8rem;
}

#observe-this {
  width: 100%;
  height: 1px;
}

#date-sort {
  display: flex;
  margin-top: 1rem;
}

.post-text h1, .post-text h2, .post-text h3 {
  font-family: 'Morion', serif;
}

.post-text {
  margin: 4rem 0;
}

.post-text a {
	padding-bottom: 1px;
}
.post-text a:after {
	width: 100%;
}
.post-text a:hover {
	opacity: 0.7;
}

#prevnext {
	margin-top: 4rem;
	padding-top: 4rem;
	border-top: 1px solid var(--gray);

}
#related {
	padding-top: 4rem;
	border-top: 1px solid var(--gray);
}
.related-title {
	font-family: 'Morion', serif;
	font-size: 1.4rem;
	margin: 0 0 4rem;
}

#about-page h1, #about-page h2, #about-page .h1 {
	font-family: 'Morion', serif;
	font-size: 1.6rem;
}

#about-page h1, .post-text h1, #about-page .h1 {
	margin-bottom: 4rem;
}

#team {
	margin-top: 8rem;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

.sfs {
	display: none;
}

@media (orientation:portrait) {

	html {
		font-size: 3vw;
	}


	.hfs {
		display: none;
	}

	.sfs {
		display: block;
	}

	a.btn {
		padding-left: 0.8rem;
		padding-right: 0.8rem;
		margin: 0.25rem 0;
	}

	.grid-mob3 {
		grid-column-end: span 3;
	}
	.grid-mob6 {
		grid-column-end: span 6;
	}

}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.block-editor-block-list__block {
	width: 80%;
	max-width: 1440px;
}

.block-editor-block-list__block.acf-block-preview {
	zoom:0.5;
}
html .mceContentBody {
    font-size: 18px;
    padding:10px;
}
.editor-styles-wrapper a {
	text-decoration: none;
}
.editor-styles-wrapper input[type=text], .editor-styles-wrapper input[type=textarea], .editor-styles-wrapper input[type=email], .editor-styles-wrapper input[type=password] {
	border-radius: 4px;
	border-color:#8c8f94;
}

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}