/* 0.8: selectable headers, mobile controls and sticky footer */
body{padding-bottom:58px}
.menu-toggle{width:42px;height:42px;padding:9px;border:0;background:transparent;cursor:pointer}
.menu-toggle span{display:block;height:2px;margin:5px 0;background:currentColor;transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.main-navigation ul{display:grid!important;grid-template-columns:1fr!important;gap:4px;justify-items:start}.menu-toggle{grid-column:2;grid-row:1;align-self:start;justify-self:end;margin:0}.ib-desktop-hamburger .menu-toggle{display:block}.ib-desktop-hamburger .main-navigation{display:none;grid-column:1/-1;grid-row:2;width:100%;margin-top:-4px;justify-self:stretch}.ib-desktop-hamburger .main-navigation.is-open{display:block}.ib-desktop-hamburger .main-navigation ul{justify-content:end;justify-items:end}
.ib-header-width-grid .site-header{width:min(100%,var(--ib-max));margin-left:auto;margin-right:auto}.ib-header-width-full .site-header{width:100%;max-width:none}
.site-footer{position:fixed;z-index:40;left:0;right:0;bottom:0;min-height:52px;margin:0;padding:14px var(--ib-header-indent-right) 14px var(--ib-header-indent-left);display:flex;align-items:center;justify-content:flex-end;gap:18px;background:rgba(0,0,0,var(--ib-footer-opacity,.82));color:#fff;border:0;backdrop-filter:blur(8px);font-size:12px;line-height:var(--ib-footer-line-height,1.15);text-transform:uppercase}
.footer-navigation ul{display:flex;gap:0;list-style:none;margin:0;padding:0}.footer-navigation li+li:before{content:"|";margin:0 12px;color:#aaa}.footer-navigation a{color:#fff;text-decoration:none}
.footer-cookie-settings{color:#fff;text-decoration:none}.theme-toggle{min-width:44px;min-height:44px;padding:10px;margin:-10px 0;display:grid;place-items:center}.ib-desktop-hide-search .header-search,.ib-desktop-hide-filter .header-portfolio-filter{display:none!important}
.viewer-cover-thumb{width:var(--ib-cover-thumb-size)}

/* nine header arrangements */
.ib-header-design-2 .site-header{padding-top:18px;padding-bottom:18px;align-items:center}.ib-header-design-2 .site-description{display:none}.ib-header-design-2 .header-tools{grid-column:auto;grid-row:2;justify-content:end}
.ib-header-design-3 .site-header{text-align:center;grid-template-columns:1fr}.ib-header-design-3 .site-branding,.ib-header-design-3 .main-navigation,.ib-header-design-3 .header-tools{justify-self:center}.ib-header-design-3 .main-navigation{grid-row:2}.ib-header-design-3 .header-tools{grid-row:3}
.ib-header-design-4 .site-header{grid-template-columns:minmax(0,1fr) minmax(320px,1fr)}.ib-header-design-4 .site-branding{grid-column:1;grid-row:1/4;align-self:start}.ib-header-design-4 .menu-toggle{grid-column:2;grid-row:1}.ib-header-design-4 .main-navigation{grid-column:2;grid-row:2;justify-self:end}.ib-header-design-4 .header-tools{grid-column:2;grid-row:3;justify-content:flex-end}
.ib-header-design-5 .site-header{grid-template-columns:1fr}.ib-header-design-5 .site-branding{width:100%;border-bottom:4px solid currentColor;padding-bottom:16px}.ib-header-design-5 .site-title{font-size:calc(var(--ib-header-title-size)*1.25)}.ib-header-design-5 .main-navigation{justify-self:start}.ib-header-design-5 .header-tools{grid-row:2;grid-column:1;justify-content:end}
.ib-header-design-6 .site-description{display:none}.ib-header-design-6 .site-header{padding-top:20px;padding-bottom:20px}.ib-header-design-6 .site-title{font-weight:400;letter-spacing:.08em}.ib-header-design-6 .main-navigation a{font-weight:400}
.ib-header-design-7 .site-header{border:0;border-left:10px solid currentColor;background:color-mix(in srgb,var(--ib-text) 6%,var(--ib-bg));padding-top:26px;padding-bottom:26px}
.ib-header-design-8 .site-header{background:var(--ib-header-bar);color:#fff}.ib-header-design-8 .header-search input,.ib-header-design-8 .portfolio-filter-select{color:#fff;background:var(--ib-header-bar);border-color:rgba(255,255,255,.55)}
.ib-header-design-9 .site-header{grid-template-columns:1fr auto}.ib-header-design-9 .site-branding{grid-column:1/-1;width:100%;padding-bottom:20px}.ib-header-design-9 .site-title{font-size:calc(var(--ib-header-title-size)*1.35);line-height:.88}.ib-header-design-9 .site-description{max-width:420px}.ib-header-design-9 .menu-toggle{grid-column:2;grid-row:1}.ib-header-design-9 .main-navigation{grid-column:1/-1;grid-row:2;justify-self:start}.ib-header-design-9 .header-tools{grid-column:1/-1;grid-row:3;justify-content:flex-start;border-top:1px solid color-mix(in srgb,var(--ib-text) 25%,transparent);padding-top:15px}
.ib-header-design-9.ib-desktop-hamburger .menu-toggle{border-left:5px solid #e94f72;padding-left:14px;width:51px}.ib-header-design-9.ib-desktop-hamburger .main-navigation.is-open{border-left:5px solid #e94f72;padding-left:14px}.ib-header-design-9.ib-desktop-hamburger .main-navigation.is-open ul{justify-items:start}

@media(max-width:760px){
  :root{--ib-cols:var(--ib-mobile-cols)}
  body{padding-bottom:50px}.portfolio-grid{grid-template-columns:repeat(var(--ib-mobile-cols),minmax(0,1fr))}
  .tile-title{font-family:var(--ib-mobile-tile-font);font-weight:var(--ib-mobile-tile-weight);font-size:var(--ib-mobile-tile-font-size)}.tile-categories{font-size:var(--ib-mobile-tile-category-size)}.tile-overlay{padding:10px}
  .viewer-control{width:var(--ib-mobile-control-size);height:var(--ib-mobile-control-size);font-size:min(var(--ib-control-icon-size),calc(var(--ib-mobile-control-size)*.65))}.viewer-prev,.viewer-next{display:none!important}.viewer-close{top:10px;right:10px}.viewer-info-toggle{right:10px;bottom:10px}
  .viewer-slide{touch-action:pan-y pinch-zoom}
  .site-footer{min-height:44px;padding:8px 14px;white-space:nowrap;overflow:auto}.footer-navigation li+li:before{margin:0 8px}
  body[class*=ib-header-design-] .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;margin:0;padding:16px 18px;text-align:left;background:var(--ib-bg);color:var(--ib-text);border:0;column-gap:10px;row-gap:8px}.site-branding{grid-column:1;grid-row:1;min-width:0}.menu-toggle{display:block;grid-column:2;grid-row:1;align-self:start}.main-navigation{grid-column:1/-1;grid-row:2;width:100%;margin:0}.main-navigation.is-open{display:block}.main-navigation ul{display:block!important}.main-navigation li{margin:3px 0}.header-tools{grid-column:1/-1;grid-row:3;width:100%;margin:0;display:flex;align-items:center;gap:8px}.header-search,.header-portfolio-filter{flex:1 1 0;min-width:0}.header-search input,.portfolio-filter-select{width:100%;min-width:0}.ib-desktop-hide-search:not(.ib-mobile-hide-search) .header-search,.ib-desktop-hide-filter:not(.ib-mobile-hide-filter) .header-portfolio-filter{display:block!important}.ib-mobile-hide-search .header-search,.ib-mobile-hide-filter .header-portfolio-filter{display:none!important}.viewer-cover-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.viewer-cover-thumb{width:100%}
}
.viewer-info{bottom:calc(24px + var(--ib-control-size) + 14px)}
@media(max-width:760px){.viewer-info{bottom:calc(10px + var(--ib-mobile-control-size) + 12px)}}

/* 0.9.5: robust control icons and independent typography */
.viewer-close,.viewer-prev,.viewer-next{background-image:none!important;filter:none!important}
.viewer-close:before,.viewer-prev:before,.viewer-next:before{content:"";display:block!important;width:min(70%,var(--ib-control-icon-size));height:min(70%,var(--ib-control-icon-size));margin:0!important;background:currentColor;border:0!important;border-radius:0!important;transform:none!important;-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.viewer-close:before{-webkit-mask-image:url("icons/close.svg");mask-image:url("icons/close.svg")}.viewer-prev:before{-webkit-mask-image:url("icons/prev.svg");mask-image:url("icons/prev.svg")}.viewer-next:before{-webkit-mask-image:url("icons/next.svg");mask-image:url("icons/next.svg")}.viewer-next.is-end:before{-webkit-mask-image:url("icons/end.svg");mask-image:url("icons/end.svg")}.viewer-close:after,.viewer-next.is-end:after{display:none!important}
.site-title{font-family:var(--ib-site-title-font);font-weight:var(--ib-site-title-weight)}.tile-title{font-family:var(--ib-tile-font);font-weight:var(--ib-tile-weight)}.viewer-cover-slide h1{font-family:var(--ib-project-title-font);font-weight:var(--ib-project-title-weight)}.viewer-cover-slide .viewer-meta,.viewer-cover-slide .viewer-links,.viewer-cover-descriptions{font-family:var(--ib-project-info-font);font-weight:var(--ib-project-info-weight)}
.portfolio-category-heading{grid-column:1/-1;margin:0;padding:18px 0 8px;font-family:var(--ib-site-title-font);font-size:var(--ib-category-heading-size);font-weight:var(--ib-site-title-weight);line-height:1;text-transform:uppercase}.portfolio-category-heading[hidden]{display:none}
/* A mirrored header uses real layout positions, so spacing and alignment move with each module. */
.ib-header-mirrored .site-header{grid-template-columns:auto minmax(0,1fr);padding-right:var(--ib-header-indent-left);padding-left:var(--ib-header-indent-right)}
.ib-header-mirrored .site-branding{grid-column:2;grid-row:1;justify-self:end;text-align:right}
.ib-header-mirrored .menu-toggle{grid-column:1;justify-self:start}
.ib-header-mirrored .main-navigation{grid-column:1;grid-row:1;justify-self:start}
.ib-header-mirrored .main-navigation ul{justify-items:start}
.ib-header-mirrored .header-tools{grid-column:1/-1;justify-content:flex-start;flex-direction:row-reverse}
.ib-header-mirrored.ib-desktop-hamburger .main-navigation{grid-column:1/-1;text-align:left}
.ib-header-mirrored.ib-desktop-hamburger .main-navigation ul{justify-content:start;justify-items:start}
.ib-header-design-2.ib-header-mirrored .header-tools{grid-column:1;justify-content:start}
.ib-header-design-3.ib-header-mirrored .site-header{grid-template-columns:1fr}
.ib-header-design-3.ib-header-mirrored .site-branding,.ib-header-design-3.ib-header-mirrored .main-navigation,.ib-header-design-3.ib-header-mirrored .header-tools{grid-column:1;justify-self:center;text-align:center}
.ib-header-design-3.ib-header-mirrored .header-tools{justify-content:center}
.ib-header-design-4.ib-header-mirrored .site-header{grid-template-columns:minmax(320px,1fr) minmax(0,1fr)}
.ib-header-design-4.ib-header-mirrored .site-branding{grid-column:2;grid-row:1/4}
.ib-header-design-4.ib-header-mirrored .menu-toggle{grid-column:1;grid-row:1}
.ib-header-design-4.ib-header-mirrored .main-navigation{grid-column:1;grid-row:2;justify-self:start}
.ib-header-design-4.ib-header-mirrored .header-tools{grid-column:1;grid-row:3;justify-content:flex-start}
.ib-header-design-5.ib-header-mirrored .site-header{grid-template-columns:1fr}
.ib-header-design-5.ib-header-mirrored .site-branding{grid-column:1;text-align:right}
.ib-header-design-5.ib-header-mirrored .main-navigation{grid-column:1;justify-self:end;text-align:right}
.ib-header-design-5.ib-header-mirrored .main-navigation ul{justify-items:end}
.ib-header-design-5.ib-header-mirrored .header-tools{grid-column:1;justify-content:flex-start}
.ib-header-design-7.ib-header-mirrored .site-header{border-left:0;border-right:10px solid currentColor}
.ib-header-design-9.ib-header-mirrored .site-header{grid-template-columns:auto 1fr}
.ib-header-design-9.ib-header-mirrored .site-branding{grid-column:1/-1;text-align:right}
.ib-header-design-9.ib-header-mirrored .site-description{margin-left:auto}
.ib-header-design-9.ib-header-mirrored .menu-toggle{grid-column:1;grid-row:1}
.ib-header-design-9.ib-header-mirrored .main-navigation{grid-column:1/-1;grid-row:2;justify-self:end;text-align:right}
.ib-header-design-9.ib-header-mirrored .main-navigation ul{justify-items:end}
.ib-header-design-9.ib-header-mirrored .header-tools{grid-column:1/-1;grid-row:3;justify-content:flex-end;flex-direction:row-reverse}
.ib-header-design-9.ib-header-mirrored.ib-desktop-hamburger .menu-toggle{border-left:0;border-right:5px solid #e94f72;padding-left:9px;padding-right:14px}
.ib-header-design-9.ib-header-mirrored.ib-desktop-hamburger .main-navigation.is-open{border-left:0;border-right:5px solid #e94f72;padding-left:0;padding-right:14px}
.ib-header-design-9.ib-header-mirrored.ib-desktop-hamburger .main-navigation.is-open ul{justify-items:end}
@media(max-width:760px){
  body.ib-header-mirrored[class*=ib-header-design-] .site-header{grid-template-columns:auto minmax(0,1fr);padding:16px 18px;text-align:right}
  .ib-header-mirrored .site-branding{grid-column:2;grid-row:1;text-align:right}
  .ib-header-mirrored .menu-toggle{grid-column:1;grid-row:1;margin:0;justify-self:start}
  .ib-header-mirrored .main-navigation{grid-column:1/-1;grid-row:2;text-align:right}
  .ib-header-mirrored .main-navigation ul{justify-items:end;text-align:right}
  .ib-header-mirrored .header-tools{grid-column:1/-1;grid-row:3;justify-content:flex-start;flex-direction:row-reverse}
  .ib-header-design-7.ib-header-mirrored .site-header{border:0}
  .portfolio-category-heading{font-size:min(var(--ib-category-heading-size),34px)}
}
