@import url('./about-approach.css');
@import url('./directions.css');
@import url('./directions-visuals.css');
/* Explicit adaptation layer. Source design CSS remains in the original files. */
@font-face {
  font-family: 'Unbounded'; src: url('/fonts/Unbounded.ttf') format('truetype');
  font-style: normal; font-weight: 200 900; font-display: swap;
}
@font-face {
  font-family: 'Barnes Cyrillic'; src: url('/fonts/Manrope.ttf') format('truetype');
  font-style: normal; font-weight: 200 800; font-display: swap;
  unicode-range: U+0400-052F,U+2DE0-2DFF,U+A640-A69F;
}
body { font-family: 'Dennis Sans', 'Barnes Cyrillic', Arial, sans-serif; }
h1, h2, h3, h4, .demo-wordmark {
  font-family: 'Unbounded', 'Barnes Cyrillic', sans-serif;
  font-weight: 500;
}
h1 span, h2 span, h3 span, h4 span {
  font-family: inherit; font-weight: inherit;
}
.demo-wordmark { white-space: nowrap; }
.credits-top .btn-link .demo-logo {
  width: auto; height: auto; border: 0;
  border-radius: 0; overflow: visible; box-shadow: none;
}
.credits-top .demo-logo .btn-text { padding: 0; font-size: 1em; }
.credits-top .demo-logo .btn-fill { display: none; }
.fixed-nav { width: calc(15vw + 18.75em); }
.work-tiles-home .container ul li.visible { display: block; }
.home-directions-tiles ul li a h4 { font-size: clamp(1.3em, 2.3vw, 1.75em); line-height: 1.25; }
.home-directions-list .work-items li a h4 { font-size: clamp(1.5em, 3.25vw, 3.25em); line-height: 1.25; }
.home-header .demo-hero-role { max-width: 10.5em; }
.about-header h1 { font-size: calc(clamp(3.25em, 7vw, 8em) * .75); }
.about-copy { padding-top: calc(var(--section-padding) * .75); padding-bottom: calc(var(--section-padding) * .65); }
.about-copy p, .about-summary p { max-width: 42em; }
.about-services .row.demo-directions {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%; margin-left: 0; gap: 4em;
}
.about-services .row.demo-directions > .flex-col { width: 100%; padding: 0; }
.about-services .row.demo-directions h4 { line-height: 1.3; }
.about-services .row.demo-directions p { padding-top: 1.5em; }
.demo-direction-details { display: inline-flex; gap: .6em; align-items: center; margin-top: 1.25em; color: var(--color-dark); text-decoration: underline; text-underline-offset: .3em; }
.demo-direction-details:hover { color: var(--color-blue); }
.footer .container.medium { padding-bottom: calc(var(--section-padding) * .5); }
.home-header, .home-header .personal-image { background-color: #999d9e; }
.home-header .personal-image img { height: 94%; top: 16vh; max-width: none; }
.profile-picture {
  background-image: url('../img/barns-portrait.jpg');
  background-position: 50% 12%;
  background-size: 165%;
}
.single-about-image .overlay:nth-child(1),
.about-awwwards .single-image .overlay:nth-child(1) {
  background-image: url('../img/barns-portrait.jpg');
  background-position: 50% 22%;
}
.single-about-image .overlay:nth-child(1) { top: 0; height: 110%; background-position: center top; }
.demo-source-link { color: inherit; text-decoration: none; }
.demo-source-link:hover { text-decoration: underline; text-underline-offset: .25em; }
.demo-reference-label { line-height: 1.2; font-size: 1em; letter-spacing: -.025em; color: #777; }
.demo-case-credit { font-size: .8em; opacity: .7; margin: 0 0 1em; }
.demo-language { background: transparent; color: inherit; border: 0; cursor: pointer; font: inherit; padding: .5em; }
.theme-dark .demo-language { color: #fff; }
.fixed-nav .nav-row { position: relative; }
.demo-menu-language { position: absolute; right: 0; top: -.5em; z-index: 2; font-size: .8em; }
.demo-confirmation { clear: both; padding: 1.2em 0; color: #a6e2c4; max-width: 36em; line-height: 1.6; }
.demo-confirmation[hidden] { display: none; }
.contact-header .row:nth-child(2) .demo-personal-details li {
  height: auto; display: block; margin-bottom: .7em;
}
.contact-header .demo-personal-details li:last-child { margin-bottom: 0; }
.contact-header .demo-personal-details p { margin: 0; line-height: 1.55; }
.demo-field-error { color: #ffaaaa; font-size: .8em; padding-top: .6em; }
.form .field:focus-visible { outline: none; box-shadow: 0 1px 0 #fff; }
.btn-click:focus-visible, a:focus-visible, [role='button']:focus-visible, button:focus-visible {
  outline: 2px solid var(--color-blue); outline-offset: 6px;
}
.theme-dark :focus-visible { outline-color: #a4b0ff; }
.skip-link { position: fixed; left: 1em; top: -6em; z-index: 1000; background: #455ce9; color: white; padding: .8em 1.2em; border-radius: 2em; }
.skip-link:focus { top: 1em; }
@media (max-width: 540px) {
  .about-header h1 { font-size: clamp(1.65em, 7.8vw, 2.45em); line-height: 1.16; }
  .fixed-nav { width: 100%; }
  .home-header .personal-image img { height: 102%; top: 15vh; }
  .demo-source-link { display: inline-block; max-width: 14em; line-height: 1.45; }
  .demo-case-credit { max-width: 22em; }
}
@media (max-width: 720px) {
  .about-copy { padding-top: var(--section-padding); }
  .about-services .row.demo-directions { grid-template-columns: 1fr; gap: 2.5em; }
  .contact-header .row:nth-child(2) .flex-col:nth-child(2) h5.demo-personal-heading,
  .contact-header .row:nth-child(2) .flex-col:nth-child(2) ul.demo-personal-details { display: block; }
}
@media (prefers-reduced-motion: reduce) {
  main, .main-wrap { position: relative !important; height: auto !important; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
  .loading-container, .loading-fade { visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
  .mouse-pos-list-image, .mouse-pos-list-btn, .mouse-pos-list-span { display: none !important; }
  .once-in { transform: none !important; opacity: 1 !important; }
}

/* One sidebar menu type system on every portfolio route. */
.fixed-nav .nav-row .btn-text {font-family:Unbounded,sans-serif;font-weight:500;font-size:clamp(1.75rem,3.4vw,3rem);line-height:1.5;}
.fixed-nav .nav-row .btn-text-inner {font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;}
.fixed-nav .demo-language {font-family:Unbounded,sans-serif;font-weight:500;font-size:.7em;}
@media(max-width:540px){.fixed-nav .nav-row .btn-text {font-size:clamp(1.35rem,6vw,2rem);}}
