@import url('https://fonts.googleapis.com/css2?family=Cousine:ital,wght@0,400;0,700;1,400;1,700&family=Manrope:wght@200..800&display=swap');

.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
*, ul{
  margin: 0;
  padding: 0;  
  box-sizing: border-box;   
}
::selection{
  background-color: var(--dark);
  -webkit-text-fill-color: #fff; 
  color:#fff !important;
}

/* width */
::-webkit-scrollbar {
  width: var(--space-0-25);
}
/* Track */
::-webkit-scrollbar-track {
  background: var(--grey);
}
/* Handle */
::-webkit-scrollbar-thumb {
  background: var(--greydark);
  transition: opacity 300ms ease-out;
  cursor: pointer;
  opacity: 0.9;
}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  opacity: 1;
}

/* ==========================================================================
   GLOBAL WRAPPER UTILITIES
   ========================================================================== */

/* .gwrap (Gap Wrap)
  Controls the vertical layout structure. 
  Used to apply vertical spacing (gap) between child elements, 
  such as node fields or sub-components.
  
  .awrap (Alpha Wrap)
  The primary content container. 
  Used to apply styles to the general content container,
  e.q. if there is smedia it becomes flex.
  
  .rwrap (Root Wrap)
  The root wrapper for major entities (Nodes, Taxonomies, Blocks).
  Used primarily to apply vertical spacing (padding-block) to the 
  outermost layer of a component.
  
  .wwrap (Width Wrap)
  The constraint wrapper.
  Used to define the max-width, apply horizontal padding (padding-inline), 
  and center the content horizontally (margin-inline: auto).
*/

@view-transition {
  navigation: auto;
}

html{
  font-size: 100%; /* Keep the browser default! This ensures 'rem' is always stable for padding/margin */
  scroll-behavior: smooth;
}
body{
  font-size: var(--fs-base); /* Apply the fluid base size */
  line-height: 1.6; /* Gold standard for readability */
  font-family: "Manrope", serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #333;
  overflow-x: hidden;
}
.layout-container{
  overflow: clip;
}

.atitle,
.serif,
.cousine-regular,
.tax-class .name-description{
  font-family: "Cousine", monospace;
  font-weight: 400;
  font-style: normal;
}
.serif strong,
strong .serif{
  font-family: "Cousine", monospace;
  font-weight: 700;
}


/* line heights */
.big{
  line-height: 1.4;
}
h1, h2, h3, .bigg{
  line-height: 1.2;
}
.biggg,
.name-field-links a,
.name-field-files a,
.slink,
.pager__item > .button,
.more-link,
.bef-link,
.name-field-files a,
.language-switcher-language-url .links a,
.block-wth-primary-local-tasks > ul a,
form label,
nav .menu a, 
.sname{
  line-height: 1.1;
}
.xl,
time{
  line-height: 1;
}


/* font-sizes */
.xl{
  font-size: var(--fs-xl);
}
.biggg,
.atitle,
.block-label,
.block-wth-page-title > h1,
h1{
  font-size: var(--fs-biggg);
}
.bigg,
h2{
  font-size: var(--fs-bigg);
}
.big,
h3, h4,
.tax-class .name-description{
  font-size: var(--fs-big);
}
.small,
time,
figcaption,
.description,
.foocopy,
.row .slinkwrap > .slink,
.menu--sec .menu a{
  font-size: var(--fs-small);
}
.name-field-mtxt{
  font-size: var(--fs-small-more);
}
.menu--main,
.language-switcher-language-url .links a{
  font-size: var(--fs-stable-big);
}
.menu--main .menu ul a{
  font-size: var(--fs-stable-normal);
}
.vgroup-title{
  font-size: var(--fs-base);
}

/* font-weight */
.name-field-links a,
.name-field-files a,
.menu a,
.slink,
.pager__item > .button,
.more-link,
.bef-link,
.vgroup-title,
.pager li a{
  font-weight: 500;
}
.xbold,
.sname{
  font-weight: 800;
}
.field__label,
.slogan{
  font-weight: 600;
}
.thin{
  font-weight: 200;
}
.atitle,
.formatxt :is(h2, h3, h4){
  font-weight: 400;
}

/* colors */
.basic,
.pager li a:hover,
.pager li.is-active a,
.menu--main > .menu a{
  color: var(--basic);
}
.dark,
.atitle,
.block-label,
form label,
.field__label,
.block-wth-page-title > h1,
.pager li a,
.navwrap .menu--main > .menu a{
  color: var(--dark);
}
.light{
  color: var(--light);
}
.grey{
  color: var(--grey);
}
.greylight,
time{
  color: var(--greylight);
}
.greydark,
.menu--sec > .menu a{
  color: var(--greydark);
}
.gradientlight,
footer{
  background: var(--greylightgradient);
}
.gradientdark{
  background: var(--darkgradient);
}
.greylighter,
.block-stories-all{
  background: var(--greylighter);
}

/* glass effect */
.glass,
.headrbot > .menu--main > .menu ul{
  background-color: rgb(255, 255, 255, 0.6);
  backdrop-filter: blur(25px) saturate(120%);
}


/* extras, tags & categories */
.extras .field-items-wrap{
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-0-25);
  align-items: center;
}
.extras .field-items-wrap > .field-item:not(:last-child) a::after{
  content: ",";
}
.extras{
  line-height: 1;
}
.name-field-tags a::before{
  content: '#';
}
.name-field-cat a::before{
  content: '>';
}


/* tables */
.tablewrap{
  overflow-x: auto;
  overflow-y: hidden;
}
table{
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
  line-height: 1.1;
  font-variant-numeric: tabular-nums; /* tells the browser to use monospaced figures-numbers */
}
table :is(th, td){
  padding: var(--space-0-25);
  /* white-space: nowrap; */
  text-align: center;
  border: 1px solid #ccc;
}
table :is(th, td):first-child{
  text-align: left;
}

/* auto line break */
.formatxt > *{
  text-wrap: pretty;
}

/* rows - gaps */
.gwrap,
.txtwrap1{
  display: grid;
  grid-template-columns: 1fr;
}
.name-field-links > .field-items-wrap, 
.name-field-files > .field-items-wrap,
.scolumn .name-field-smedia > .field-items-wrap{
  display: flex;
  flex-direction: column;   
  align-items: stretch;
}
.gwrap,
.name-field-mtxt > .field-items-wrap{ 
  gap: var(--space);
}
.foor{
  gap: var(--space-0-75);
}
.txtwrap1,
.scolumn .name-field-smedia > .field-items-wrap,
.fool{
  gap: var(--space-0-5);
}
.name-field-links > .field-items-wrap, 
.name-field-files > .field-items-wrap{
  gap: var(--space-0-25);
}
.gwrap > div{
  width: 100%;
}

/* margins & paddings */
.rwrap,
.region-footer{
  padding-block: var(--pad-block);
}
.formatxt > *:not(:last-child),
.block-label,
.block-wth-page-title > h1{
  margin-bottom: var(--space-0-5);
}
.formatxt > * + :is(h2, h3, h4),
*:not(.visually-hidden) + .name-field-mtxt,
*:not(.visually-hidden) + .name-field-webform,
.name-field-mtxt + *,
.vgroup .cards:not(:first-child){
  margin-top: var(--space);
}
.name-field-mtxt .formatxt > *:not(:last-child){
  margin-bottom: var(--space-0-25);
}
figcaption{
  margin-top: 5px;
  font-style: italic;
}
.navwrap,
.path-user main{
  padding-top: var(--space);
  padding-bottom: var(--space-2);
}
.block-stories-all{
  padding-bottom: var(--space-2);
}
.region-header{
  padding-top: var(--space-0-5);
}
.view-footer,
.view-empty,
.pager{
  margin-top: var(--space-0-5);
}
.crew-subcat{
  margin-bottom: 15px;
}
.views-exposed-form{
  margin-bottom: var(--space);
}
.field__label{
  margin-bottom: 5px;
}
.bef-links{
  padding-top: var(--space-0-5);
}

.wwrap,
.navwrap,
.path-user main{
  padding-inline: var(--space);
}
.wwrap,
.path-user main,
.fluid,
.centxtposit > .awrap .txtwrap1 > *:not(.name-field-mtxt){
  margin-inline: auto;
}

/* lined divided items */
.navwrap > *:not(:first-child),
.extras > div{
  position: relative;
  margin-top: var(--space-0-5);
  padding-top: var(--space-0-5);
}
.extras > div:first-child{
  margin-top: 0;
}
.navwrap > *:not(:first-child)::before,
.extras > div::before{
  content: "";
  display: block;
  width: 50%;
  max-width: 250px;
  height: 1px;
  background-color: var(--greylight);
  position: absolute;
  left: 0;
  top: 0;
}

/* max-width */
.wwrap,
.path-user main{
  max-width: var(--w-basic);
}
.awrap .txtwrap1 > *:not(.name-field-mtxt){
  max-width: var(--w-txtmax);
}
.user-login-form{
  max-width: 500px;
}

/* links & buttons & submits */
a{
  color: inherit;
  transition: all 300ms ease-out;
  text-decoration: none;
}
.formatxt a:not(.slink){
  text-decoration: underline;
}
.formatxt a:not(.slink),
.name-field-tags a,
.name-field-cat a{
  opacity: 0.85;
}
.formatxt a:not(.slink):hover,
.name-field-tags a:hover,
.name-field-cat a:hover{
  opacity: 1;
}
button{
  all: unset;
  cursor: pointer;
  box-sizing: border-box;
}
.slink,
.pager__item > .button,
.more-link,
.bef-link,
.name-field-links a,
.name-field-files a,
main .form-submit{
  background-color: var(--dark);
  color: #fff;
  display: inline-block;
  border: none; 
  padding: 10px 33px 10px var(--space-0-25); 
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); 
  transition: all 0.2s ease-in-out; 
  border-radius: var(--radius);
  position: relative;
}
.name-field-files a{
  padding-right: 40px;
}
main .form-submit,
.pager__item > .button,
.name-field-links a[href*="m.me"]{
  padding-right: var(--space-0-25);
}
.slink:hover,
.pager__item > .button:hover,
.more-link:hover,
.bef-link:hover,
.name-field-links a:hover,
.name-field-files a:hover,
main .form-submit:hover{
  background-color: var(--basic);
}
.pager__item > .button:hover{
  color: #fff;
}
.slink:active,
.more-link:active,
.bef-link:active,
.bef-link--selected,
.name-field-links a:active,
.name-field-files a:active,
main .form-submit:active{
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3); 
  transform: translateY(1px) scale(0.98);
}
.slink::after,
.more-link::after,
.name-field-links a::after,
.name-field-files a::after{
  display: block;
  width: 8px;
  height: 16px;
  position: absolute;
  clip-path: polygon(0% 14%, 14% 7%, 100% 50%, 13% 93%, 0% 86%, 73% 50%);
  transition: all 300ms ease-out;
}
.slink::after,
.more-link::after,
.name-field-links a::after,
.name-field-files a::after{
  content: "";
  right: var(--space-0-25);
  top: 50%;
  transform: translateY(-50%);
}
.name-field-files a::after{
  right: 7px;
  width: var(--space-0-5);
  height: var(--space-0-5);
  clip-path: polygon(20% 44%, 23% 40%, 47% 64%, 47% 10%, 53% 10%, 53% 64%, 77% 40%, 80% 44%, 50% 74%, 20% 44%, 15% 88%, 85% 88%, 85% 93%, 15% 93%, 15% 88%);
}
.slink[target="_blank"]::after,
.name-field-links a[target="_blank"]::after{
  width: 14px;
  height: 14px;
  clip-path:polygon(10% 10%, 90% 10%, 90% 90%, 77% 90%, 77% 33%, 10% 100%, 0% 90%, 67% 23%, 10% 23%);
}
.slink[target="_blank"]:hover::after,
.name-field-links a[target="_blank"]:hover::after{
  clip-path: polygon(20% 0%, 100% 0%, 100% 80%, 87% 80%, 87% 23%, 10% 100%, 0% 90%, 77% 13%, 20% 13%);
}
.slink::after,
.more-link::after,
.name-field-links a::after,
.name-field-files a::after{
  background-color: #fff;
}
.slink:not([target="_blank"]):hover::after,
.more-link:hover::after,
.name-field-links a:not([target="_blank"]):hover::after{
  right: 8px;
}
.name-field-files a:hover::after{
  clip-path: polygon(20% 54%, 23% 50%, 47% 74%, 47% 20%, 53% 20%, 53% 74%, 77% 50%, 80% 54%, 50% 84%, 20% 54%, 15% 88%, 85% 88%, 85% 93%, 15% 93%, 15% 88%);
}
.pager__item{
  text-align: center;
}

/* admin blocks */
.region-help,
.view-empty, 
.view-footer{
  text-align: center;
}
/* 1. Define the animation for the 6-second auto-hide effect */
@keyframes dismissDrupalMessage {
  0%, 85% {
    /* Stays fully visible and interactive for the first ~5.1 seconds */
    opacity: 1;
    visibility: visible;
  }
  100% {
    /* Fades out smoothly and becomes non-interactive at 6 seconds */
    opacity: 0;
    visibility: hidden;
  }
}
.region-help {
  position: relative;
}

/* 3. Base styles for the Drupal message */
.region-help div[data-drupal-messages] > div{
  padding: var(--space-0-25);
  background-color: var(--dark);
  color: #fff;
  font-size: var(--fs-stable-normal);
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.3);
  display: inline-block;
  border-radius: var(--radius);
  
}
body:not(.user-logged-in) .region-help div[data-drupal-messages]{
  /* Prevent layout jumps for ALL users by removing it from standard document flow */
  position: absolute;
  z-index: 30;
  width: 100%;
  top: 5px; 
  left: 0;
  /* Apply the 6-second animation, retaining the final 'hidden' state */
  animation: dismissDrupalMessage 6s ease-in-out forwards;
}
/* Optional: Pause the fade-out if the user hovers over the message to read it */
body:not(.user-logged-in) .region-help div[data-drupal-messages]:hover{
  animation-play-state: paused;
}
.block-wth-primary-local-tasks{
  position: relative;
  z-index: 10;
}

/* Container for the tabs (the ul element) */
.block-wth-primary-local-tasks > ul {
  list-style: none;
  display: flex; 
  justify-content: center;
  overflow-x: auto; 
  border-radius: 8px; 
  padding-top: 5px;
}
.path-user .block-wth-primary-local-tasks > ul{
  justify-content: flex-start;
  margin-bottom: var(--space-0-5);
}
.block-wth-primary-local-tasks > ul li a {
  display: block; 
  padding: var(--space-0-25) var(--space-0-5); 
  margin: 0 2px;
  text-decoration: none; 
  color: #666; 
  background-color: #eee; 
  border: none; 
  border-radius: 5px 5px 0 0;
  white-space: nowrap; 
  position: relative; 
  font-size: var(--fs-small);
  font-weight: 500;
}
.block-wth-primary-local-tasks > ul li a:hover {
  color: var(--dark); 
  background-color: #e9e9e9; 
  border-radius: 5px;
}
.block-wth-primary-local-tasks > ul li a.is-active,
.block-wth-primary-local-tasks > ul li a[aria-current="page"] {
  color: var(--basic); 
  background-color: #ffffff;
  font-weight: 600; 
  box-shadow: 0 -2px 5px rgba(0,0,0,0.2);
  z-index: 1;
}
.block-wth-primary-local-tasks > ul li a.is-active::after,
.block-wth-primary-local-tasks > ul li a[aria-current="page"]::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px; 
  background-color: var(--basic); 
  border-radius: 2px 2px 0 0;
}
.block-wth-primary-local-tasks > ul li a.is-active {
  padding-bottom: calc(var(--space-0-25) + 3px);
}


/* mark */
mark{
  background-color: transparent;
  color: inherit;
  display: inline;
  box-decoration-break: clone;
  background-image: linear-gradient(
                to bottom,
                transparent 60%, 
                #f5ffa4 61%   
            );
  background-repeat: no-repeat;
  background-size: 0% 100%;
  background-position: left center;
  /* --- FIREFOX TRANSITION FIX START --- */
  /* Explicitly define how the background bounding box is calculated to help Firefox */
  background-origin: content-box;
  background-clip: content-box; 
  /* --- FIREFOX TRANSITION FIX END --- */
  /* 2. ANIMATION: Transition the background-size property */
  transition: background-size 1.5s ease-out 0.5s;
  -moz-transition: background-size 1.5s ease-out 0.5s; /* Firefox prefix for safety */
}
mark.actelem{
  background-size: 100% 100%; 
}

/* lists */
.layout-container nav ul{
  list-style: none;
  list-style-type: none;
}
.layout-container nav ul{
  list-style: none;
  list-style-type: none;
}
.formatxt :is(ul, ol){
  margin-left: 20px;
  list-style-position: outside;
}
.centxtalign .formatxt :is(ul, ol){
  list-style-position: inside;
  margin-left: 0;
}
.formatxt ul li{
  margin: 15px 0;
  list-style-image: url('../imgs/star-icon.svg');
}

/* forms */
.user-login-form{
  max-width: 500px;
}
#css-anchor form{
  text-align: left;
}
.two-cols{
  display: flex;
  flex-wrap: wrap;
  column-gap: var(--space);
  justify-content: space-between;
}
.two-cols > div{
  width: calc(50% - var(--space-0-5));
}
form label{
  display: block;
  margin-bottom: 5px;
}
form label.form-required::after{
  content: "*";
}
form input,
progress{
  accent-color: var(--basic);
}
form input:not(.form-submit),
form textarea,
form select{
  display: block;
  color: inherit;
  transition: all 300ms ease-out;
  font-size: inherit;
  padding: 7px;
  font-family: inherit;
  line-height: 1.1;
  background-color: transparent;
  border: 1px solid var(--basic);
  border-radius: var(--radius);
  max-width: 100%;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
  width: 100%;
}
form textarea{
  width: 100%;
}
form select{
  width: auto;
  min-width: 150px;
}
form .form-item{
  margin-bottom: var(--space-0-5);
  position: relative;
}

.form-type-radio{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: var(--space-0-25);
}
.form-type-radio{
  display: grid;
  grid-template-columns: var(--space-0-5) 1fr;
  grid-template-rows: auto auto;
  column-gap: var(--space-0-25);
  row-gap: 0;
}
.form-type-radio input[type="radio"]{
  width: var(--space-0-5);
  height: var(--space-0-5);
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  justify-self: start;
}
.form-type-radio label{
  grid-column: 2 / 3;
  grid-row: 1 / 2;
}
.form-type-radio .description{
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}
/* Toggle Switcher checkbox */
/* 1. The Container Grid */
.form-type-checkbox {
  display: grid;
  /* Column 1 is for the Toggle, Column 2 for text */
  grid-template-columns: 50px 1fr; 
  grid-template-rows: auto auto;
  column-gap: 12px;
  row-gap: 0;
  align-items: start; /* Keeps toggle at the top */
}
/* 2. The Switcher (Input) */
.form-type-checkbox input[type="checkbox"]{
  grid-column: 1 / 2;
  grid-row: 1 / 2;
  /* Toggle Styles */
  appearance: none;
  -webkit-appearance: none;
  width: 50px;
  height: 26px;
  background-color: var(--greylight);
  border-radius: 50px;
  border-bottom: none;
  position: relative;
  cursor: pointer;
  transition: background-color 0.3s;
  margin-top: 4px; /* Align with the first line of the label */
  border: none;
}
.form-type-checkbox input[type="checkbox"]:checked {
  background-color: #4CAF50;
}
/* 3. The Toggle Knob */
.form-type-checkbox input[type="checkbox"]::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  background-color: white;
  border-radius: 50%;
  transition: transform 0.3s;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}
.form-type-checkbox input[type="checkbox"]:checked::after {
  transform: translateX(24px);
}
/* 4. The Label */
.form-type-checkbox label {
  grid-column: 2 / 3;
  grid-row: 1 / 2;
  margin: 0;
  cursor: pointer;
  font-weight: bold;
  line-height: 1.4;
}
/* 5. The Description */
.form-type-checkbox .description {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
  font-size: var(--fs-small);
  color: var(--grey);
  margin-top: 4px;
}

input[type="file"] {
  font-family: inherit;
  font-size: inherit;
  background-color: transparent;
  cursor: pointer;
}
input[type="file"]::file-selector-button{
  background-color: var(--basic);
  color: inherit;
  border: none;
  margin-right: 15px;
  padding: 7px 15px;
  border-radius: 0.5rem;
  transition: background-color 0.3s ease;
  content: "";
  cursor: pointer;
} 
input[type="file"]::file-selector-button:hover {
  background-color: var(--greylight);
}

form > p:not(:last-child){
  margin-bottom: var(--space-0-5);
}

form .description a{
  text-decoration: underline;
}

.form-item-pass{
  position: relative;
}
#edit-pass{
  padding-right: 32px;
  box-sizing: border-box;
}
.password-toggle-btn{
  position: absolute;
  right: 0;
  bottom: 3px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 5px;
  color: var(--greydark); /* Icon color */
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.3s;
}
.password-toggle-btn:hover{
  color: #000;
}
.password-toggle-btn svg{
  width: 22px;
  height: 22px;
}
.views-exposed-form .form-item{
  margin-bottom: 0;
}
.form-submit{
  cursor: pointer;
  font-size: inherit;
}
.views-exposed-form,
.views-exposed-form select{
  text-align: center;
}

.bef-links > ul{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--space-0-5);
  list-style: none;
}
.bef-link{
  display: block;
  position: relative;
  padding: 10px 10px 10px 35px;
  min-width: 200px;
}
.bef-link::after{
  content: "";
  display: block;
  width: 40px;
  height: 33px;
  position: absolute;
  left: 0;
  top: 0;
  transform: translate(-40%, -40%) scale(1);
  background-repeat: no-repeat;
  background-size: contain;
  filter: drop-shadow(1px 1px 2px rgba(0,0,0,0.4));
  transition: filter 300ms ease-out, transform 300ms ease-out;
}
.bef-link:hover::after,
.bef-link--selected::after{
  filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.4));
  transform: translate(-50%, -45%) scale(1.3);
}
.bef-link[name="tid[All]"]{
  background-color: #fefefe;
  color: #000;
}
.bef-link[name="tid[All]"]::after{
  background-image: url(../imgs/class-icon-00.svg);
}
.bef-link[name="tid[22]"]{
  background-color: #ff9700;
}
.bef-link[name="tid[22]"]::after{
  background-image: url(../imgs/class-icon-01.svg);
}
.bef-link[name="tid[23]"]{
  background-color: #999999;
}
.bef-link[name="tid[23]"]::after{
  background-image: url(../imgs/class-icon-02.svg);
}
.bef-link[name="tid[24]"]{
  background-color: #53d3cc;
}
.bef-link[name="tid[24]"]::after{
  background-image: url(../imgs/class-icon-03.svg);
}
.bef-link[name="tid[25]"]{
  background-color: #0074ff;
}
.bef-link[name="tid[25]"]::after{
  background-image: url(../imgs/class-icon-04.svg);
}

/* Our people / crew */
.vgroup-title{
  background-color: var(--basic);
  color: #fff;
  padding: 5px 15px;
  display: inline-block;
  text-align: center;
  border-radius: var(--radius);
  min-width: 275px;
}
.card.person{
  max-width: 275px;
}
.crew-subcat{
  display: flex;
  align-items: center;
  gap: 7px;
  line-height: 1;
}
.crew-subcat::before{
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-image: url(../imgs/star-icon.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

/* pager */
.pager ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-0-25);
}
.pager li{
  list-style: none;
}


/* various */
main,
.blo{
  position: relative;
}
.layout-container .formatxt hr{
  margin: var(--space-0-5) 0;
  height: 2px;
  border: none;
  background: var(--greylight);
  display: block;
  clear: both;
}
time{
  display: block;
}
.block-label{
  text-align: center;
}
@keyframes draw{  
  to {
    stroke-dashoffset: 0;
  }
}
.views-infinite-scroll-content-wrapper.clearfix::before{
  content: none;
}

/* edit links */
.media > .contextual{
  display: none;
}
.view .dropbutton-wrapper{
  display: none;
}
.user-logged-in .view .dropbutton-wrapper{ /* Operations links */
  display: inline-block;
  background-color: #eee;
  padding: 5px;
  border-radius: var(--radius);
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
  font-size: 12px;
  margin-top: 5px;
}
.user-logged-in .view .dropbutton-wrapper a{
  text-decoration: none;
}
.user-logged-in .view .dropbutton-wrapper a:hover{
  color: var(--basic);
}


/* side media */
.smedia:not([data-lay="17"]) > .awrap{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--space-2);
  align-items: center; /* applied only if the height of 'txtwrap2' is smaller than 'swrap2' (position: sticky;) */
}
.smedia.nodend > .awrap{
  align-items: start;
  overflow: visible; /* for sticky swrap2 position */
}
.smedia.nodend:not([data-lay="17"]):not(.scolumn) .swrap2{
  position: sticky;
  top: var(--space-0-5);
  align-self: start;
}


/* mtxts - multicolumn */
.name-field-mtxt > .field-items-wrap{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
}
.smedia .name-field-mtxt > .field-items-wrap{
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.name-field-mtxt > .field-items-wrap > .field-item{
  display: flex;
  gap: 10px;
}
.mtxt-icon{
  display: block;
  width: 29px;
  flex-shrink: 0;
  height: 29px;
  position: relative;
  border-radius: 50%;
  box-shadow: 1.5px 1.5px 3px rgba(0, 0, 0, 0.3);
  background: var(--dark);
}
.mtxt-icon::after{
  content: "";
  display: block;
  position: absolute;
  left: 7px;
  top: 7px;
  width: 15px;
  height: 15px;
  background-image: url(../imgs/star-icon.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}


/* .centxtalign */
.centxtalign > .awrap .txtwrap1{
  text-align: center;
}
.centxtalign > .awrap .formatxt img{
  margin-inline: auto;
}
.centxtalign .extras .field-items-wrap{
  justify-content: center;
}
.centxtalign .extras > div::before{
  left: 50%;
  transform: translateX(-50%);
}

/* special layouts */
.smedia[data-slay="13"] > .awrap .name-field-smedia .field-items-wrap{
  display: grid;
  grid-template-columns: 1.1fr 0.9fr; /* Creates two equal columns */
  column-gap: var(--space-0-5);
}
.smedia[data-slay="13"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(1) .media{
  transform: translateY(20%);
}
.smedia[data-slay="13"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(3) .media{
  transform: translateX(60%) translateY(-35%);
}

.blo[data-lay="8"] > .awrap > .txtwrap2{
  background-color: var(--dark);
  padding: var(--space) var(--space) var(--space) var(--space-3);
  position: relative;
}
.blo[data-lay="8"] > .awrap .txtwrap1{
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
}
.blo[data-lay="8"] > .awrap .txtwrap1 > .name-field-links > .field-items-wrap{
  height: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr); 
  align-items: center;
  white-space: nowrap;
}
.lay-8-svg{
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-50%, -50%);
}
.lay-8-svg svg{
  max-width: 100%;
  height: auto;
}

.blo[data-lay="20"] > .awrap{
  grid-template-columns: 0.95fr 1.05fr;
}
.blo[data-lay="20"] table td{
  padding: 0;
  border: none;
  text-align: left;
}
.blo[data-lay="20"] table td:first-child{
  padding-right: 10px;
}
.blo[data-lay="20"] > .awrap :is(.txtwrap1, .txtwrap2, .name-field-mtxt, .field-items-wrap){
  height: 100%;
}
.blo[data-lay="20"] .name-field-mtxt > .field-items-wrap{
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr); 
  gap: var(--space-0-5);
  align-items: center;
}
.blo[data-lay="20"] .name-field-mtxt > .field-items-wrap > .field-item{
  display: block;
  min-width: 0;
  overflow: hidden; 
}
.blo[data-lay="20"] .mtxt-icon{
  display: none;
}
.blo[data-lay="21"]{
  position: relative;
}
.blo[data-lay="21"] .lay-21-svg{
  position: absolute;
  width: 8%;
  height: auto;
  right: 8%;
  top: 0;
  transform: translateY(-50%);
}
.fluid svg{
  max-width: 100%;
  height: auto;
}
.smedia[data-slay="14"] > .awrap .name-field-smedia img,
.smedia[data-slay="15"] > .awrap .name-field-smedia img,
.smedia[data-lay="9"] > .awrap .name-field-smedia img,
.smedia[data-lay="17"] > .awrap .name-field-smedia img{
  width: 100%; /* weird not show image bug */
}
.smedia[data-slay="14"] > .awrap .name-field-smedia .field-items-wrap > .field-item img,
.smedia[data-slay="15"] > .awrap .name-field-smedia .field-items-wrap > .field-item img,
.blo[data-lay="9"] > .awrap .name-field-smedia,
.blo[data-lay="17"] > .awrap .name-field-smedia{
  -webkit-mask-size: contain; /* Scales the mask to fit the element */
  mask-size: contain;
  /* 2. Stop it from repeating (tiling) */
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  /* 3. Position it in the exact center */
  -webkit-mask-position: center;
  mask-position: center;
}
.smedia[data-slay="14"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(1) img{
  -webkit-mask-image: url('../imgs/talk-ballon-01.svg');
  mask-image: url('../imgs/talk-ballon-01.svg');
}
.smedia[data-slay="15"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(1) img{
  -webkit-mask-image: url('../imgs/quote-02.svg');
  mask-image: url('../imgs/quote-02.svg');
}
.smedia[data-slay="14"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(2){
  width: 70%;
  margin-left: 30%;
}
.smedia[data-slay="15"] > .awrap .name-field-smedia{
  width: 60%;
  margin-left: 10%;
}
.smedia[data-slay="14"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(2) img,
.blo[data-lay="9"] > .awrap .name-field-smedia,
.blo[data-lay="17"] > .awrap .name-field-smedia{
  -webkit-mask-image: url('../imgs/talk-ballon-02.svg');
  mask-image: url('../imgs/talk-ballon-02.svg');
}


.blo[data-lay="18"] .lay-18-svg-wrap{
  position: relative;
}
.blo[data-lay="18"] .lay-18-svg-wrap > div{
  max-width: 30%;
}
.blo[data-lay="18"] .lay-18-svg-1{
  transform: translateX(-20%);
  display: inline-block;
}
.blo[data-lay="18"] .lay-18-svg-2{
  position: absolute;
  right: 8%;
  bottom: 0;
  transform: translateY(50%);
}

.blo[data-lay="9"] > .awrap,
.blo[data-lay="17"] > .awrap{
  background-color: var(--dark);
  border-top-right-radius: var(--space);
} 
.blo[data-lay="9"] > .awrap > .swrap2{
  order: 2;
}
.blo[data-lay="9"] > .awrap > .txtwrap2{
  order: 1;
}
.blo[data-lay="9"] > .awrap > .swrap2{
  filter: drop-shadow(3px 3px 5px rgba(0,0,0,0.4));
}
.blo[data-lay="9"] > .awrap .name-field-smedia{
  transform: translateY(var(--space));
}

.blo[data-lay="10"] > .awrap{
  align-items: flex-start;
}
.blo[data-lay="10"] > .awrap > .atitle{
  grid-column: span 2; /* Occupy two column tracks */
}

.blo[data-slay="19"] > .awrap .name-field-smedia > .field-items-wrap{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: var(--space-0-5);
}
.blo[data-slay="19"] > .awrap .name-field-smedia .media :is(img, video){
  margin: 0;
}

.blo[data-lay="17"]{
  margin-top: 10vw;
}
.blo[data-lay="17"] > .awrap{
  max-width: calc(var(--w-basic) - var(--space-2));
  position: relative;
  padding-block: 10vw var(--space-2);
}
.blo[data-lay="17"] > .awrap > .swrap2{
  position: absolute;
  right: 0;
  top: 0;
  transform: translateY(-33%);
  width: 30vw;
  filter: drop-shadow(3px 3px 5px rgba(0,0,0,0.4));
}
.blo[data-lay="17"] > .awrap .name-field-mtxt > .field-items-wrap{
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
}
.blo[data-lay="17"] > .awrap .mtxt-icon{
  background: #fff;
}

.blo[data-lay="27"] > .awrap{
  grid-template-columns: 1.2fr 0.8fr;
}
.blo[data-lay="27"] > .awrap > .txtwrap2{
  order: 1;
}
.blo[data-lay="27"] > .awrap > .swrap2{
  order: 2;
}

/* classes taxonomy */
.topclasses{
  position: relative;
  display: flex;
  gap: var(--space);
  align-items: flex-end;
  justify-content: space-between;
  padding: var(--space-0-5) var(--space) var(--space-0-5) 100px;
  border-radius: 15px;
  border-bottom-left-radius: 0;
}
.topclasses .name-field-icon{
  position: absolute;
  left: 0;
  top: 0;
  transform: translate(-25px, -50%);
  width: 110px;
}
.topclasses .name-field-icon img{
  width: 100%;
  filter: drop-shadow(2px 2px 3px rgba(0,0,0,0.4));
}
.tax-class .mtxt-icon::after{
  background-image: url(../imgs/star-icon-white.svg);
}
.talk-bottom{
  position: absolute;
  left: 0;
  bottom: 0;
  transform: translateY(100%);
}
#node-30.hasblock{
  padding-bottom: 0;
}

/* Stories */
#node-8.hasblock{
  position: relative;
  padding-bottom: 0;
}
.block-stories-home{
  position: relative;
  padding-bottom: var(--space);
}
.block-stories-home::before{
  content: "";
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: calc(100% - 377px);
  bottom: 0;
  background-color: #fff;
}
.block-stories-home > div{
  position: relative;
  z-index: 5;
}
.block-stories-home .more-link{
  float: right;
  margin-top: var(--space-0-5);
}

/* stories and crew endnode page */
.photo-grid.smedia > .awrap{
  grid-template-columns: minmax(0, 400px) 1fr;
}
.photo-grid .swrap2 .media img{
  width: 100%;
}

/* odigos spoudon */
main .menu--sec > .menu{
  display: flex;
  align-items: center;
  justify-content: center;
}
.block-secnavchilds1{
  background-color: var(--greydark);
  padding: 5px;
  overflow-y: auto;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
}
.block-secnavchilds1 > .menu{
  column-gap: var(--space-0-5);
}
.block-secnavchilds1 > .menu a::after{
  background-color: #fff;
  height: 2px;
  bottom: 2px;
}
.block-secnavchilds1 > .menu a{
  color: #fff;
}

.block-secnavchilds2{
  margin-top: var(--space-0-5);
}
.layout-container .block-secnavchilds2 > .menu{
  flex-wrap: nowrap;
  text-align: center;
  align-items: stretch;
}
.block-secnavchilds2 > .menu a{
  padding: var(--space-0-25) var(--space-0-5);
  background: var(--greylightgradient);
  border-top-left-radius: var(--radius);
  border-top-right-radius: var(--radius);
  height: 100%;
}
.block-secnavchilds2 > .menu a:not(.is-active):hover{
  color: var(--dark);
}
.block-secnavchilds2 > .menu a:not(.is-active):hover::after{
  content: none;
}

/* scroll effect*/
.txtwrap2.effe > .txtwrap1{
  opacity: 0;
  transform: translateY(150px);
  transform-origin: center center;
  transition: transform 1s ease-out, opacity 1s ease-out;
}
.txtwrap2.effe.actelem > .txtwrap1{
  opacity: 1;
  transform: translateY(0);
}
.domino{
  opacity: 0;
  transform: translateX(100px);
  transform-origin: center center;
  transition: transform 0.6s ease, opacity 0.6s ease;
}
.domino.effe.actelem{
  opacity: 1;
  transform: translateX(0);
} 
.noslay .swrap1.effe{
  opacity: 0;
  transform: translateX(-150px);
  transition: transform 1.2s ease-out, opacity 1.2s ease-out;
} 
.noslay.smedia .swrap1.effe.actelem{
  opacity: 1;
  transform: translateX(0);
}
.atitle.effe{
  clip-path: inset(0 0 100% 0); 
  transform: translateY(20px);
  /* opacity: 0; for accessibility wave.webaim */
  transition: transform 1s ease-in, clip-path 1s ease-in;
}
.atitle.effe.actelem{
  clip-path: inset(0 0 -20% 0);
  transform: translateY(0);
  /* opacity: 1; */
}



/* header */
header{
  position: relative;
  z-index: 100;
}
.region-header,
.headr > div,
.headr .menu{
  display: flex;
}
.region-header{
  justify-content: space-between;
  align-items: flex-end;
}
.headrtop,
.headrbot,
.headr .menu{
  align-items: center;
}
.menu{
  flex-wrap: wrap;
}
.headr .menu,
.region-header,
.headr > div{
  gap: var(--space-0-5);
}
.headr > div,
.headr .menu--main .menu{
  justify-content: flex-end;
}


/* header logo */
header .logowrap{
  padding-bottom: var(--space-0-5);
}
.slogo{
  line-height: 1.2;
  display: flex;
  gap: 10px;
  color: var(--basic);
}
header .slogo{
  align-items: flex-end;
}
.logowrap img, 
.logowrap svg{
  display: block;
  height: auto;
}
.sname{
  font-size: 32px;
}
.slogan{
  display: block;
  font-size: 11px;
  letter-spacing: 1px;
}

.menu li a,
.language-switcher-language-url .links a{
  display: inline-block;
  position: relative;
  padding-top: 5px;
  padding-bottom: 5px;
}
.menu li a::after,
.language-switcher-language-url .links a::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 3px;
  background-color: var(--basic);
  transition: width 300ms ease-out;
}
.menu--sec li a::after{
  background-color: var(--greydark);
}
.headrbot > .menu--main > .menu > li{
  position: relative;
  padding-block: calc(var(--space-0-5) - 5px);
}
.headrbot > .menu--main > .menu ul{
  position: absolute;
  opacity: 0;
  pointer-events: none;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity 300ms ease-out;
  padding: var(--space-0-25) var(--space-0-5) var(--space-0-5);
  white-space: nowrap;
  text-align: center;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
  border-radius: var(--radius);
}
.headrbot > .menu--main > .menu > li:hover > ul{
  opacity: 1;
  pointer-events: all
}

.navwrap{
  position: fixed;
  top: 0;
  width: 500px;
  right: -500px;
  transition: right 500ms ease-out;
  height: 100vh;
  height: 100dvh;
  overflow: auto;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
}
.navwrap .menu > li{
  margin: var(--space-0-25) 0;
}
.navwrap .menu > li:first-child{
  margin-top: 0;
}
.navwrap .menu ul{
  margin-left: var(--space-0-5);
}
.menu a:is(:hover, :focus):hover:after,
.menu > .menu-item--active-trail > a:not([href*='#']):after,
.menu a.is-active:not([href*='#']):after,
.menu > .menu-item--expanded:hover > a:after,
.language-switcher-language-url .links a.is-active::after,
.language-switcher-language-url .links a:hover::after{
  width: 100%;
}


/* navicon & totop */
.navicon,
.totop{
  position: fixed;
  z-index: 80;
  transition: all 0.3s ease-out;
  cursor: pointer;
  overflow: hidden;
  right: 0;
  width: 60px;
  height: 50px;
  opacity: 0;
}
.navicon{
  top: 0;
  transform: translateY(-100%);
}
.totop{
  bottom: 0;
  transform: translateY(100%);
}
.scrolled .navicon,
.scrolled .totop{
  transform: translateY(0);
  opacity: 1;
}


/* navicon */
.navicon::before,
.navicon::after{
  content: " ";
}
.navicon::before,
.navicon::after,
.navicon span{
  position: absolute;
  display: block;
  left: 20%;
  width: 60%;
  height: 3px;
  transition: all 500ms ease-out;
  background-color: var(--dark);
}
.navicon::before{
  top: 22%;
}
.navicon span{
  top: 45%;
}
.navicon::after{
  top: 68%;
}
.opennav .navicon{
  background-color: rgb(255, 255, 255, 0);
  backdrop-filter: blur(0) saturate(100%);
}
.opennav .navicon::after,
.opennav .navicon::before{
  top: 25%;
  left: 47%;
  width: 3px;
  height: 50%;
  transform: rotate(45deg);
  transform-origin: center center;
}
.opennav .navicon::after{
  transform: rotate(-45deg);
}
.opennav .navicon::before{
  transform: rotate(45deg);
}
.opennav .navicon span{
  width: 0;
}
.user-logged-in .navicon,
.user-logged-in .navwrap{
  top: 60px;
}
.opennav .navwrap{
  right: 0;
}


/* language-switcher */
.language-switcher-language-url .links{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  list-style: none;
  gap: var(--space-0-25);
}
.navwrap .language-switcher-language-url .links{
  justify-content: flex-start;
}
.language-switcher-language-url .links a{
  position: relative;
  font-family: monospace;
  text-transform: uppercase;
  white-space: nowrap;
  width: 2ch;
  overflow: hidden;
  display: block;
}
.language-switcher-language-url > .contextual{
  display: none;
}


/* Quotes */
blockquote{
  font-style: italic;
  position: relative;
}
blockquote::before,
blockquote > *:last-child::after{
  content: "";
  display: inline-block;
  width: 20px;
  height: 15px;
  clip-path: polygon(12% 3%, 36% 3%, 29% 44%, 44% 44%, 44% 97%, 56% 97%, 56% 46%, 68% 3%, 92% 3%, 85% 44%, 100% 44%, 100% 97%, 0% 97%, 0% 46%);
  background-color: var(--basic);
  opacity: 0.9;
}
blockquote::before{
  position: absolute;
  left: -21px;
  top: -7px;
}
blockquote > *:last-child::after{
  position: relative;
  right: -7px;
  bottom: -7px;
  transform: rotate(180deg);
}

/* totop */
.totop::after{
  content: " ";
  width: 36px;
  height: 36px;
  display: block;
  position: absolute;
  top: 50%;
  transition: all 300ms linear;
  background-color: var(--dark);
  left: 50%;
  transform: translate(-50%, -50%);
}
.totop::after{
  clip-path: polygon(50% 21%, 100% 71%, 92% 79%, 50% 37%, 8% 79%, 0% 71%);
}


/* footer */
.foowrap,
footer .menu,
.foortop > div,
.foorbot{
  display: flex;
}
.foowrap{
  justify-content: space-between;
  gap: var(--space)
}
footer .slogo{
  flex-direction: column;
}
.foor{
  text-align: right;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: var(--space-0-5);
}
.foortop > div,
.foorbot{
  align-items: center;
  justify-content: flex-end;
  gap: var(--space-0-5);
}
.fool > div:last-child,
.foortop > div:last-child{
  margin-top: var(--space-0-5);
}
footer .menu{
  gap: var(--space-0-25) var(--space-0-5);
  justify-content: flex-end;
}

@media screen and (max-width: 1800px){
  .block-stories-home::before{
    height: calc(100% - 250px);
  }
}

@media screen and (max-width: 1750px){
  .region-header{
    padding-block: var(--space-0-25);
  }
  .headr{
    display: none;
  }
  header .logowrap{
    padding-block: var(--space-0-25) var(--space-0-25);
  }
  .navicon{
    right: calc(var(--space-0-5) - 11px);
    top: var(--space-0-5);
    opacity: 1;
    transform: none;
  }
  .scrolled .navicon,
  .opennav .navicon{
    top: 0;
    right: 0;
  }
  .wwrap, .navwrap,
  .path-user main{
    padding-inline: var(--space);
  }
  .smedia:not([data-lay="17"]) > .awrap{
    gap: var(--space);
  }
  .blo[data-lay="8"] > .awrap .txtwrap1{
    display: flex;
    flex-direction: column;
  }
  .blo[data-lay="8"] > .awrap .txtwrap1 > div{
    flex: 0 0 auto; 
    width: 100%;
  }
  .blo[data-lay="8"] > .awrap > .txtwrap2{
    padding-inline: var(--space) var(--space-3);
  }
  .lay-8-svg{
    left: unset;
    right: 0;
    transform: translateY(-50%);
  }
  .blo[data-lay="20"] > .awrap{
    grid-template-columns: 1fr;
  }
  .blo[data-lay="20"] .name-field-mtxt > .field-items-wrap,
  .blo[data-lay="27"] > .awrap{
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .blo[data-lay="27"] > .awrap{
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .two-cols{
    flex-direction: column;
  }
  .two-cols > div{
    width: 100%;
  }
  .block-foologo{
    margin-inline: auto;
  }
  footer .slogo{
    align-items: center;
  }
  .foowrap,
  .foortop > div{
    flex-direction: column;
    align-items: center;
  }
  .region-footer,
  .foor{
    text-align: center;
  }
  .region-footer .menu,
  .foorbot{
    justify-content: center;
  }
}
@media screen and (max-width: 1150px){
  .wwrap, .navwrap,
  .blo[data-lay="8"] > .awrap > .txtwrap2,
  .topclasses,
  .path-user main{
    padding-inline: var(--space-0-5);
  }
  .blo[data-lay="8"] > .awrap .txtwrap1 > .name-field-links > .field-items-wrap{
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
  .lay-8-svg{
    top: 0;
    right: 0;
    transform: translateY(-50%);
    width: 18%;
  }
  .blo[data-lay="21"] .lay-21-svg{
    width: 15%;
  }
  .smedia:not([data-lay="17"]) > .awrap{
    gap: var(--space-0-5);
  }
  .blo[data-lay="9"] > .awrap .name-field-smedia{
    transform: translateY(var(--space-0-25));
  }
  .name-field-mtxt > .field-items-wrap,
  .smedia .name-field-mtxt > .field-items-wrap,
  .blo[data-lay="17"] > .awrap .name-field-mtxt > .field-items-wrap{
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }
  .topclasses{
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: var(--space-0-5);
  }
  .topclasses .name-field-icon{
    left: unset;
    right: 0;
    max-width: 24%;
  }
  .blo[data-slay="19"] > .awrap .name-field-smedia > .field-items-wrap{
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  }
  .smedia[data-slay="15"] > .awrap .name-field-smedia{
    width: 80%;
    margin-left: 20%;
  }
  .blo[data-lay="27"][data-slay="15"] > .awrap > .swrap2 .parimg[data-x="left"]{
    left: 0;
  }
  .blo[data-lay="17"]{
    margin-top: 0;
  }
}
@media screen and (max-width: 850px){
  #css-anchor .smedia > .awrap{
    grid-template-columns: 1fr;
    gap: var(--space-0-5);
  }
  #css-anchor .smedia[data-lay="49"] > .awrap{
    gap: var(--space);
  }
  .blo[data-lay="10"] > .awrap > .atitle{
    grid-column: unset;
  }
  .blo[data-lay="9"] > .awrap,
  .blo[data-lay="17"] > .awrap{
    padding-top: var(--space-2);
  }
  .blo[data-lay="17"] > .awrap > .swrap2{
    display: none;
  }
  #css-anchor .swrap2{
    position: relative;
  }
  .block-wth-primary-local-tasks > ul li a{
    padding-inline: var(--space-0-25);
  }
  .blo[data-lay="27"] > .awrap > .swrap2{
    order: unset;
  }
  .smedia[data-slay="15"] > .awrap .name-field-smedia{
    width: 60%;
  }
  .navwrap{
    width: 100%;
    right: -100%;
  }
  .blo[data-lay="20"] .name-field-mtxt > .field-items-wrap{
    grid-template-columns: minmax(0, 1fr);
  }
  .blo[data-lay="20"] table{
    width: 100%;
  }
  .blo[data-lay="20"] table td{
    width: 50%;
  }
  .blo[data-lay="20"] table td:first-child{
    text-align: right;
  }
  .smedia[data-slay="13"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(3) .media{
    transform: unset; /* due to weird bug on my iphone */
  }
  .smedia[data-slay="13"] > .awrap .name-field-smedia .field-items-wrap > .field-item:nth-child(3){
    position: relative;
    left: 60%;
  }
}
@media screen and (max-width: 480px){
  header .logowrap svg{
    width: 90px;
  }
  header .logowrap .sname{
    font-size: 22px;
  }
  .navicon{
    top: 20px;
  }
  .block-secnavchilds2 > .menu a{
    padding-inline: var(--space-0-25) var(--space-0-25);
  }
  .blo[data-lay="8"] > .wwrap{
    padding-inline: 0;
  }
}