/* Proteonic Widgets */
.proteonic-floor-accordion { --proteonic-header-height: 56px; margin:0; padding:0; }
.proteonic-floor-accordion * { box-sizing: border-box; }

.proteonic-floor-accordion__item { margin:0; padding:0; }
.proteonic-floor-accordion__header { width:100%; border:0; padding:0; background:transparent; cursor:pointer; display:block; }
.proteonic-floor-accordion__header-inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height: var(--proteonic-header-height);
  padding: 0 16px;
  margin:0;
  line-height:1; /* prevent 1px gaps */
}
.proteonic-floor-accordion__title { display:block; line-height:1.1; }

.proteonic-floor-accordion__icon { display:inline-flex; align-items:center; justify-content:center; gap:0; line-height:1; }
.proteonic-floor-accordion__icon-plus { display:inline; }
.proteonic-floor-accordion__icon-minus { display:none; }

.proteonic-floor-accordion__item.is-open .proteonic-floor-accordion__icon-plus { display:none; }
.proteonic-floor-accordion__item.is-open .proteonic-floor-accordion__icon-minus { display:inline; }

.proteonic-floor-accordion__item[data-icon-position="left"] .proteonic-floor-accordion__header-inner { flex-direction: row-reverse; justify-content: flex-end; }
.proteonic-floor-accordion__item[data-icon-position="left"] .proteonic-floor-accordion__title { margin-left: 0; }

.proteonic-floor-accordion__content { display:none; height:0; overflow:hidden; }
.proteonic-floor-accordion__content-inner { padding: 16px; }
.proteonic-floor-accordion__content-inner p:first-child { margin-top:0; }
.proteonic-floor-accordion__content-inner p:last-child { margin-bottom:0; }

.proteonic-floor-accordion__content-grid { display:grid; gap:16px; align-items:start; }
.proteonic-floor-accordion__content-grid.is-image-right { grid-template-columns: 1fr var(--proteonic-image-width, 40%); }
.proteonic-floor-accordion__content-grid.is-image-left { grid-template-columns: var(--proteonic-image-width, 40%) 1fr; }
.proteonic-floor-accordion__media img { width:100%; height:auto; display:block; }

/* Hero */
.proteonic-hero { position:relative; overflow:hidden; width:100%; min-height: 70vh; }
.proteonic-hero__bg { position:absolute; inset:0; pointer-events:none; }
.proteonic-hero__bg--image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center calc(50% + var(--proteonic-parallax-y, 0px)); /* no scaling */
  will-change: background-position;
}

.proteonic-hero__bg--video { display:block; }
.proteonic-hero__bg--video .proteonic-hero__video,
.proteonic-hero__bg--video .proteonic-hero__iframe{
  position:absolute;
  top:50%;
  left:50%;
  width:100%;
  height:100%;
  transform: translate3d(-50%, calc(-50% + var(--proteonic-parallax-video-y, 0px)), 0);
  will-change: transform;
}

.proteonic-hero__overlay { position:absolute; inset:0; pointer-events:none; }
.proteonic-hero__inner { position:relative; z-index:2; width:100%; height:100%; min-height:inherit; display:flex; }
.proteonic-hero.is-valign-top .proteonic-hero__inner { align-items:flex-start; }
.proteonic-hero.is-valign-middle .proteonic-hero__inner { align-items:center; }
.proteonic-hero.is-valign-bottom .proteonic-hero__inner { align-items:flex-end; }

.proteonic-hero__content { margin:0 auto; padding:24px; max-width:720px; }
.proteonic-hero.is-align-left .proteonic-hero__content { text-align:left; margin-left:0; }
.proteonic-hero.is-align-center .proteonic-hero__content { text-align:center; margin-left:auto; margin-right:auto; }
.proteonic-hero.is-align-right .proteonic-hero__content { text-align:right; margin-right:0; }

.proteonic-hero__title { margin:0 0 12px 0; }
.proteonic-hero__subtitle { margin:0 0 18px 0; }
.proteonic-hero__button { display:inline-block; text-decoration:none; }

.proteonic-hero__fs {
  position:absolute;
  right:16px;
  bottom:16px;
  z-index:3;
  border:0;
  cursor:pointer;
  padding:10px 12px;
  border-radius: 12px;
  background: rgba(0,0,0,0.35);
  color: #fff;
  backdrop-filter: blur(6px);
}

/* Fullscreen modal */
.proteonic-modal {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
}
.proteonic-modal.is-open { display:block; }
.proteonic-modal__backdrop { position:absolute; inset:0; background: rgba(0,0,0,0.75); }
.proteonic-modal__dialog {
  position:absolute;
  inset: 5vh 5vw;
  display:flex;
  align-items:center;
  justify-content:center;
}
.proteonic-modal__dialog > * { width:100%; height:100%; max-height:100%; max-width:100%; }
.proteonic-modal__close {
  position:absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
  border:0;
  cursor:pointer;
  padding:10px 12px;
  border-radius: 12px;
  background: rgba(255,255,255,0.12);
  color:#fff;
}

.proteonic-site-logo__img{display:block;}
.proteonic-site-logo__text{display:inline-block;}
