/*
Theme Name: Kintzing Licensing
Author:       	Addedlovely
Author URI:     https://www.addedlovely.com
Version:      	1.3.2
Text Domain:  	addedlovely
*/

:root {
  
  /* Structure */
  --body-padding: 200px;
  --header-height: 108px;
  --footer-height:420px;
  --padding: 24px;
  --padding-large: 100px;
  --negative-padding: -24px;
  --button-size: 44px;
  --grid-gap: 8px;
  --grid-gap-medium:20px;
  --grid-gap-large:32px;
  --container-narrow:576px;
  --margin:100px;
  --margin-small: 20px;
  --card-padding:12px;
  --card-aspect-ratio: 420/535;
  --card-media-vertical-spacing: 80px;
  --card-media-horizontal-spacing: 60px;
  --input-height: 37px;
  --input-line-height:35px;

  /* Typography */
  --serif: 'Portrait';
  --sans-serif: 'DIN';
  --font-x-small: 10px;
  --font-small: 12px;
  --font-regular: 14px;
  --font-regular-large: 20px;
  --font-regular-xl-large: 30px;
  --font-medium: 40px;
  --font-large: 60px;
  --font-xl-large: 100px;
  
  /* Colours */
  --black: #000000;
  --white: #FFF;
  --light-grey:#fafaf8;
  --grey: #CCCCCC;
  --dark-grey: #707070;
  --placeholder: #4d5c5c;
  --red: #622907;

  /* Form */
  --ts-select-font-family: var(--sans-serif);
  --ts-select-font-size: var(--font-x-small);
  --ts-select-color-item-active-text: var(--black);
  --ts-select-color-item-active: var(--light-grey);
  --ts-select-color-dropdown-item-active: var(--black);
  --ts-select-color-dropdown-item-active-text: var(--white);

  /* Transitions */
  --transition-fade: 0.3s ease-out opacity, 0.3s ease-out visibility;
  --transition-button: 0.3s ease-out color, 0.3s ease-out background-color, 0.3s ease-out border-color;
  --transition-transform: 0.3s ease-out transform;
  --transition-background: 0.3s ease-out background-color;
  --transition-colour: 0.3s ease-out color;
  --transition-height: 0.3s ease-out max-height;
  --transition-width: 0.3s ease-out width;
  --transition-border-radius: 0.3s ease-out border-radius;
    

}



/* Fonts */
@font-face{
  font-family: 'DIN';
  src:url('assets/fonts/FFDINWebProRegular.woff2') format("woff2");
  font-weight: 400;  
  font-display: swap;
}

@font-face{
  font-family: 'Portrait';
  src:url('assets/fonts/Portrait-Regular-Web.woff2') format("woff2");
  font-weight: 400;  
  font-display: swap;
}

/* Colours */
.black { color:var(--black); }
.white { color:var(--white); }
.grey { color: var(--grey); }
.dark-grey { color: var(--dark-grey); }
.light-grey { color: var(--light-grey); }
.bg-black { background:var(--black); }
.bg-white { background:var(--white); }
.bg-grey { background:var(--grey); }
.bg-dark-grey { background:var(--dark-grey); }
.bg-light-grey { background:var(--light-grey); }

/* Structure */
html, body {min-height: 100%; display: flex; flex-direction: column; }
.container { margin-left: auto; margin-right: auto; max-width: var(--container-width); width: 100%; padding: 0 var(--padding); }
.container.narrow { max-width: var(--container-narrow); }
.grid, .grid-gap { grid-gap:var(--grid-gap); }
.grid-gap-large { grid-gap:var(--grid-gap-large); }
.image { overflow: hidden; position: relative;}
.image video { width: 100%; height: 100%; object-fit: cover; }
img { pointer-events:none; }

/* Typography */
body { font-family: var(--serif); color: var(--black); background: var(--white); line-height: 1.2; font-size: var(--font-regular);  }
h1, h2, h3, h4 { font-family: var(--serif); font-weight: inherit; font-size: inherit; font-weight: 300; }
p { margin-bottom: 20px; }
.serif { font-family: var(--serif); }
.sans-serif { font-family: var(--sans-serif); }
.font-x-small { font-size: var(--font-x-small); }
.font-small { font-size: var(--font-small); }
.font-regular { font-size: var(--font-regular); }
.font-regular-large { font-size: var(--font-regular-large); }
.font-regular-xl-large { font-size: var(--font-regular-xl-large); }
.font-medium { font-size: var(--font-medium); }
.font-large { font-size: var(--font-large); }
.font-x-large { font-size: var(--font-x-large); }
.font-xl-large { font-size: var(--font-xl-large); letter-spacing:-0.02em; }
.uppercase { letter-spacing: 0.1em; }
.capitalise { letter-spacing: normal; }

/* Form */
input[type="text"], input[type="search"], input[type="email"], input[type="tel"], input[type="password"], textarea, select { border: 1px solid var(--black); font-family: var(--sans-serif); font-size: var(--font-x-small); width: 100%; outline: none; background-color: var(--white); }
input[type="text"], input[type="search"], input[type="email"], input[type="tel"], input[type="password"], select { height: var(--input-height); line-height: var(--input-line-height); padding: 0 20px;  }
input[type="checkbox"] { width: 14px; min-width: 14px; height: 14px; border: 1px solid var(--black); appearance: none; background-size: 100% 100%; background-repeat: no-repeat; border-radius: 0; }
input[type="checkbox"]:checked { background-image:url('assets/images/icon-checkbox.svg');}
textarea { padding: 10px 20px;  }
legend { padding: 0; }
select { color:var(--placeholder); background-image: url('assets/images/icon-down.svg'); background-repeat: no-repeat; background-position: top right; background-size: auto 35px; }
select:has(option:checked:not([value])),
select:has(option:checked:not([value=""])) { color: var(--black); }
select option { color: var(--black); }
::placeholder { color: var(--placeholder); }
input[type=submit], .button { display: inline-flex; justify-content: center; height: 44px; line-height: 40px; border: 1px solid var(--black); min-width: 260px; text-align: center; text-transform: uppercase; font-size:var(--font-regular); letter-spacing: 0.1em; font-family: var(--sans-serif); padding: 0; background: none; border-radius: 22px; color: inherit; font-weight: normal; }
.button.small { height:24px; line-height:22px; border-radius:12px; padding:0 15px; font-size:var(--font-x-small); min-width: auto; }
.button.small.has-icon { padding-right:32px; }
.button.small svg { top:0; bottom:0; right:6px; width: 20px; height: 20px; position: absolute; margin:auto; }
.button.small span { padding-left:8px; }
.button.medium { height:30px; line-height:28px; border-radius:15px; padding:0 15px; border-color:inherit; font-size:var(--font-x-small); min-width: 172px; }

/* Gravity Forms */
.gfield { margin-bottom: 20px; list-style-type: none; }
.gfield_validation_message { font-size: var(--font-x-small); font-family: var(--sans-serif); text-transform: uppercase; letter-spacing: 0.01em; color: var(--red); padding: 6px 0 0 0;}
.gform_footer { position: relative; }
.gform_ajax_spinner { position: absolute; top:0; bottom: 0; left: 10px; margin: auto; width: 20px; height: 20px; }
.gform_required_legend { display: none; }
.gfield_password_strength { padding: 0 20px; height: 30px; background: #cccccc; line-height: 30px; margin-top: -10px; letter-spacing: 0.12em; font-family: var(--sans-serif); font-size: var(--font-x-small); }
.gfield_password_strength.blank { font-size: 0; }
.gfield_password_strength.blank:before { content: 'Please use a good / strong password'; font-size: var(--font-x-small); }
.gfield_password_strength.short { background: #dc3545; color: #FFF; }
.gfield_password_strength.bad, .gfield_password_strength.mismatch  { background: #ffc107; }
.gfield_password_strength.strong  {background: #28a745; color: #FFF; }
.ginput_container_consent { display: flex; flex-direction: row; }
.ginput_container_consent label { padding: 0; cursor: pointer; }
.ginput_container_consent input { margin-right: 10px; }
.hidden_label > label, .hidden_label > legend, .hidden_sub_label, .hidden { display: none; }
.gform_page_footer { position:relative; }

/* Multichoice field */
.ts-control { padding: 0 !important; min-height: 37px !important; border-top: 0 !important; border-left: 0 !important; border-right: 0 !important; border-color: var(--black) !important; border-radius: 0 !important; margin-bottom: 16px; }
.ts-wrapper.multi .ts-control>div { margin: 8px 4px 8px 0 !important; max-height: 20px !important;}
.ts-control input { height: 37px; }
.ts-dropdown, .ts-control, .ts-control input { font-family: var(--sans-serif) !important; font-size: var(--font-x-small) !important;}
.ts-control { box-shadow: none !important; }
.disabled .ts-control { background-color: transparent !important;}

/* Roundel */
.roundel { height:31px; line-height:29px; display:inline-flex; text-transform:uppercase; font-size:var(--font-x-small); min-width:170px; font-family:var(--sans-serif); border:1px solid var(--dark-grey); border-radius:16px; justify-content:center; letter-spacing:0.1em; background:var(--white); }
.roundel.active { background: var(--black); color: var(--white); border-color: var(--black); }

/* Pagination */
.pagination { margin: 20px 0; }
.pagination a, .pagination span { padding: 0 16px; height:var(--button-size); line-height: var(--button-size); }
.pagination .current { font-weight: bold; }
.pagination .navigation-link  { width: auto; }

/* Button */
.button-icon { display: flex; border-radius: 0; height: 30px; line-height: 28px; min-width: auto; padding: 0 20px 0px 0; font-size: var(--font-small); border-color: var(--grey); position: relative; }
.button-icon svg { width: 28px; height: 28px; margin: auto 10px auto 0; stroke: none; fill:currentColor; pointer-events: none;}
.button-icon .icon-loading { position: absolute; left:0; top:0; bottom:0; visibility: hidden; padding:6px;  }
.button-form, .button-form-secondary, .modal .gform_button { height: var(--button-size); line-height: calc(var(--button-size) - 2px); text-align: center; font-size: var(--font-small); font-family: var(--sans-serif); letter-spacing: 0.1em; text-transform: uppercase; border-radius: 0; }
.button-form-secondary {  border: 1px solid var(--black); color: var(--black); }
.button-form, .modal .gform_button { background-color: var(--black); color: var(--white); position:relative; }
.button-form.loading { font-size: 0; }
.button-form svg { position: absolute; width: 20px; height: 20px; margin: auto; top: 0; bottom: 0; left: 0; right: 0; visibility: hidden; pointer-events: none; }
.button-form[disabled] { opacity:0.5; }
.button-copy { position: relative; text-align: inherit; cursor: pointer; }
.loading { pointer-events: none !important; }
.loading .icon { visibility: hidden; }
.loading .icon-loading { visibility: visible; animation: loading 1s linear infinite; }


/* Buttons */
.buttons { grid-gap: var(--grid-gap-medium); margin-bottom: var(--margin-small); }
.buttons label { padding: 0; line-height: 30px; }
.buttons .button-back { margin-left: auto; }

/* Loading */
@keyframes loading {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
} 

/* Icons */
.icon-left, 
.icon-right { stroke:none; }

/* Modal */
.modal { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 3; display: flex; background: rgba(0,0,0,0.6); padding: var(--padding); overflow:auto; }
.modal[aria-hidden='true'] { display: none; }
.modal div[data-a11y-dialog-hide] { position:absolute; top:0; left:0; bottom:0; right:0; cursor:pointer; }
.button-modal-close { width: var(--button-size); height: var(--button-size); stroke: currentcolor; top:0; right:0; }

/* Modal : Form */
.modal-form { width: 100%; max-width: 400px; margin: auto; padding: 40px; flex-direction: column; border:1px solid var(--grey); }
.modal-form input, .modal-form select { letter-spacing: 0.1em; text-transform: uppercase; padding-left: 0; border-top:0; border-left:0; border-right:0;  }
.modal-form input, .modal-form select, .modal-form textarea { margin-bottom: 16px; }
.modal-form textarea { height: 120px; font-family: var(--serif); padding: 14px 20px; font-size: var(--font-regular); }
.modal-form .gfield { margin-bottom: 0; }
.modal-form .gform_button { margin-bottom: 0; width: 100%; }
.modal-form .gfield_checkbox { grid-template-columns: repeat(2, minmax(0, 1fr)); display: grid; }
.modal-form .gfield_checkbox label { line-height 14px; vertical-align: top; } 
.modal-form .gfield-choice-input { margin: 0 6px 0 0;} 
.modal-form .gchoice { margin-bottom: 16px; }
.modal-form legend { margin-bottom: 14px; font-family: var(--sans-serif); text-transform: uppercase; letter-spacing: 0.01em; font-size: var(--font-small); }
.modal-form-error { margin-bottom:16px; color:var(--red); }
.modal-form-error:empty { display:none; }

/* Modal : Form : Request */
.modal-form-request { max-width: 640px; min-height: 464px; } 
.modal-form-request .gform_wrapper { height: 100%; display: flex; flex: 1; }
.modal-form-request .gform_footer { margin-top:auto; }
.modal-form-request .gform_fields { grid-template-columns: repeat(2, minmax(0, 1fr)); display: grid; grid-gap:30px; grid-row-gap: 0; margin-bottom: 24px; }
.modal-form-request #field_9_3, .modal-form-request #field_9_24, .modal-form-request #field_9_8, .modal-form-request #field_9_21 { grid-column: 1/-1; }
.modal-form-request form { display: flex; flex-direction: column; }

/* Modal : TomSelect */
.modal-form .ts-dropdown { top:38px; border-radius: 0; margin-top:0; text-transform: uppercase; letter-spacing: 0.1em; }
.modal-form .ts-dropdown .option, 
.modal-form .ts-dropdown .optgroup-header, 
.modal-form .ts-dropdown .no-results, 
.modal-form .ts-dropdown .create { padding:10px; }
.modal-form .ts-dropdown-content { padding:0;}
.modal-form .ts-control .item { text-transform: uppercase; letter-spacing: 0.1em; }
.modal-form-loading svg {animation: loading 1s linear infinite; width: 28px; height: 28px; padding:6px; }

/* Modal : Register */
.modal-register { max-width: 740px; width:100%; margin:auto; }
.modal-register-login { margin-top:22px; margin-bottom:0; }
.modal-register-login a { text-decoration: underline; }
.modal-register-text { padding: 22px; }
.modal-register .gf_progressbar_wrapper,
.modal-register .gform_previous_button,
.modal-register .gform_validation_errors,
.modal-register .gform_description { display:none; }
.modal-register .gform_button, .modal-register .button { background: var(--black); color: var(--white); border-radius: 0; width: 100%; }
.modal-register .ginput_complex { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-gap: 16px; }
.modal-register p { line-height: 1.333; font-size:15px; }
.modal-register h3 { font-size:24px; margin-bottom: 14px; letter-spacing: -.6px; }
.modal-register-image img { height:100%; width:100%; object-fit:cover; }


/* ==========================================================================
  Header
 ========================================================================== */
.header { top:0; left:0; right:0; height: var(--header-height); z-index: 3; }
.header-menu-container { width: 100%; }
.header-logo { margin: auto; left: 0; right:0; z-index: 2; }
.header-menu { height: var(--header-height); }
.header-menu-account { margin-left: auto; }
.header-menu-item { margin: auto 12px; line-height: var(--button-size); height:var(--button-size); }

/* Network Button */
.button-network-menu { width: var(--button-size); height: var(--button-size); margin: auto 4px auto 0; flex-direction: column; }
.button-network-menu:before, .button-network-menu:after { content:''; width: 27px; background: currentcolor; margin: auto; height: 1px; display: block;}
.button-network-menu:before { margin-top:17px; margin-bottom: 0; }
.button-network-menu:after { margin-top:9px; }

/* Network Menu */
.modal-menu-network { padding:0 !important; }
.menu-network-container { height: 100%; width: 100%; transform:translate3d(0,0,0); backface-visibility: hidden; perspective: 1000;  }
.menu-network { height: 100%; width: 100%; }
.menu-network-item { letter-spacing: 0.2em; list-style-type: none;}
.menu-network-logo { left: 0; right:0; margin: auto; z-index:2; }
.button-menu-network-close { width: var(--button-size); height: var(--button-size); z-index:2; }

/* Search */
.header-search { right: var(--padding); z-index: 3; }
.header-search input { background-color: rgba(255, 255, 255, 0.8); }
.button-search { height: var(--input-height); width: var(--input-height); top:0; right:0; }
.button-search svg { width: 10px; height: 10px; margin: auto; }

/* Search Suggestions */
.header-search-suggestions { top: 0; left: 0; right: 0; bottom: 0; padding: 157px var(--padding) var(--padding) var(--padding); grid-gap: var(--grid-gap); backdrop-filter: blur(30px);
  --webkit-backdrop-filter: blur(30px); background-color: rgba(255, 255, 255, 0.15); z-index: 2; transition: var(--transition-fade); opacity: 0; visibility: hidden; pointer-events: none; align-content: flex-start; }
.header-search-suggestions .roundel { padding: 0 20px; min-width: auto; }
.header-search-suggestions span { padding-left:6px; }
.header-search-suggestions.active { opacity: 1; visibility: visible; pointer-events: auto;}

/* ==========================================================================
  Homepage
 ========================================================================== */
.layout-slideshow { height: 100dvh; z-index: 0; }
.slideshow-slide { overflow: hidden; }
.slideshow-slide h3 { backface-visibility: hidden; transform: translate3d(0,0,0); }
.slideshow-media { height: 105vh; margin-top:-0.25vh; }
.slideshow-media img, .slideshow-media video { width: 100%; height: 100%; object-fit: cover; }
.slideshow-studio-title { left: var(--padding); right: var(--padding);  transform: translate3d(0,0,0); max-width: 840px; line-height: 1; z-index: 1; transition: var(--transition-fade); }
.slideshow-studio-title .button { justify-content: space-between; padding: 0 20px; border: 1px solid #fff; backdrop-filter: blur(30px); --webkit-backdrop-filter: blur(30px); background-color: rgba(255, 255, 255, 0.15); width:260px; }
.slideshow-studio-title .button-arrow { width: 30px; height: 14px; margin: auto 0 auto 0; position: relative; overflow: hidden; }
.slideshow-studio-title .button-arrow svg { fill:none; stroke: currentColor; position: absolute; top:0; right: 0; width: 66px; height: 14px; }
.slideshow-studio-title.is-hidden { pointer-events: none; opacity: 0; visibility: hidden; }
.slideshow-studio-caption { bottom: 36px; max-width: 1240px; margin: auto; left: var(--padding); right:var(--padding); font-size: 30px; transform: translate3d(0,0,0); }
.slideshow-studio-caption h2 { letter-spacing: 0.4em; margin-bottom: 25px; }
.button.slideshow { backdrop-filter: blur(9px); --webkit-backdrop-filter: blur(9px); background-color: rgba(255, 255, 255, 0.32); border:0; }

/* ==========================================================================
  Studio
 ========================================================================== */
.layout-studio .swiper { z-index: 0; }
.layout-studio img, .layout-studio video { object-fit:cover; }
.studio-slide-overlaid { left:0; right:0; margin:auto; overflow:hidden; }
.studio-slide-overlaid video { height:100%; width:auto; }
.studio-slide-bg, .studio-slide-bg img, .studio-slide-bg video { width:100%; height:100%; }
.studio-slide-caption { left:40px; bottom:40px; max-width: 1030px; right: 40px; line-height: 1; }

/* Studio : Text & Image */
.studio-slide-text-image .studio-slide-overlaid { aspect-ratio: 626/782; }
.studio-slide-text-image-text-inner { max-width: 735px; width: 100%; margin: auto; padding: 40px; line-height: 1.15; }
.studio-slide-text-image-text-inner p:last-child { margin-bottom: 0; }
.studio-slide-text-image-text, .studio-slide-text-image-image { max-height:100dvh; }

/* Studio : Case Studies */
.studio-slide-case-studies { min-height: 100%; }
.studio-slide-case-studies-inner { margin: auto; max-width: 80%; width: 100%; grid-gap: 48px; }
.studio-case-study-image { aspect-ratio: 344/468; margin-bottom: 18px; }
.studio-case-study-image img { height:100%; width:100%; object-fit:cover; }
.studio-case-study { line-height:1.5; }
.studio-case-study h4 { font-size: 30px; line-height: 1; }

/* Studio : Full Width */
.studio-slide-fullwidth .studio-slide-overlaid { aspect-ratio: 428/706; border-radius:36px; }

/* Half Half */
.studio-slide-half-half { grid-gap:0; }
.studio-slide-half-half .studio-slide-overlaid { aspect-ratio: 626/782; height: calc(100% - 292px); }

/* Globe */
.studio-slide-globe-caption form { max-width: 1200px; margin: 28px auto auto auto; }
.studio-slide-globe-caption input, .studio-slide-globe-caption select, .studio-slide-globe-caption input[type=submit] { height: 35px; line-height: 35px; border-radius:17.5px; padding: 0 12px; text-transform: uppercase; transition: var(--transition-background); }
.studio-slide-globe-caption input, .studio-slide-globe-caption select { background-color: rgba(240,226,226,1); }
.studio-slide-globe-caption input:placeholder-shown, .studio-slide-globe-caption select:invalid { background-color: rgba(240,226,226,0.5); }
.studio-slide-globe-caption input:focus, .studio-slide-globe-caption select:focus {  background-color: rgba(240,226,226,1); }
.studio-slide-globe-caption .gform_fields, .studio-slide-globe-caption .gform_footer { display: grid; grid-gap: var(--grid-gap); }
.studio-slide-globe-caption .gform_button { font-size: var(--font-x-small); border-color: rgba(240,226,226,0.5); background-color: var(--black); color:var(--white); }
.studio-slide-globe-caption .gform_button:hover { background-color: rgba(240,226,226,1); color:var(--black); }
.studio-slide-globe-caption .gfield { margin-bottom: 0; }
.studio-slide-globe-caption .gfield_validation_message { color:var(--white); }
.studio-slide-globe-caption .gform_submission_error { display: none; }
.studio-slide-globe-caption ::placeholder { color: var(--black); }

/* Pagination */
.studio-pagination { top:0; bottom:0; right:var(--padding); margin:auto; z-index: 1; mix-blend-mode: difference; }
.studio-pagination-bullet { width:30px; height:30px; display:flex; margin: 5px 0; cursor:pointer; }
.studio-pagination-bullet:before { content:''; border-radius:50%; border:3px solid var(--white); transform:scale(0.233); margin:auto; width:30px; height:30px; transition:var(--transition-transform); }
.studio-pagination-bullet-active:before { transform:scale(1); }

/* ==========================================================================
  Artists : Index
 ========================================================================== */
.layout-artists-index { min-height: 100vh; }
.layout-artists-index.is-hover .artist-thumbnail { opacity:1; visibility:visible; }
.layout-artists-index.is-hover .artist-index-item:hover { color:var(--white); }
.artist-index { overflow-y: hidden; overflow-x: scroll; height: var(--button-size); }
.artist-index-group { display: none; }
.artist-index-group.is-active { display: grid; }
.artist-index-filter { display: block; color:var(--dark-grey); line-height: var(--button-size); margin-right: 20px; }
.artist-index-filter.is-active { color: var(--black);}
.artist-index-item { display: block; }
.artist-image { aspect-ratio: 310/380; margin-bottom: 8px; }
.artist-image img { height: 100%; object-fit: cover; }
.artist { display: block; padding-bottom: 8px; }

/* ==========================================================================
  Highlighted Collections
 ========================================================================== */
.layout-highlighted-collections { position: relative; z-index: 0; }
.collections-grid { grid-gap:50px; }
.card.collection { z-index:0; }
.card.collection h3 { letter-spacing:-0.02em; }

/* ==========================================================================
  Proposals / Lightbox
 ========================================================================== */
.card { user-select: none; -webkit-user-select: none; }
.card.proposal .image, .card.lightbox .image { margin-bottom: 10px;  }
.card.proposal img, 
.card.proposal video,
.card.lightbox video,
.card.lightbox img { width: 100%; height: 100%; object-fit: cover; }
.card-media-photographer { cursor: pointer; }

/* No Results */
.lightbox-media .no-results { display: none; }
.lightbox-media .no-results.active { display: block; }
.no-results { padding: var(--padding); max-width: 500px; width: 100%; margin: auto; }

/* Remove Image */
.button-lightbox-remove svg { width: 16px; height: 16px; animation: loading 1s linear infinite; }

/* Comments */
.form-lightbox-add-comment { margin-top: auto; }
.form-lightbox-add-comment textarea, .form-lightbox-add-comment .textarea-autosize::after {  grid-area: 1 / 1 / 2 / 2; padding:var(--card-padding) 64px var(--card-padding) var(--card-padding); }
.form-lightbox-add-comment textarea { border: 0; background-color: var(--light-grey); resize: none; overflow: hidden; }
.form-lightbox-add-comment .textarea-autosize { display: grid; }
.form-lightbox-add-comment .textarea-autosize::after { content: attr(data-replicated-value) " "; white-space: pre-wrap; visibility: hidden; }
.form-lightbox-add-comment .button-form { right: var(--card-padding); padding: 0 10px; bottom: var(--card-padding); width: var(--button-size); height: 28px; line-height: 28px; font-size: var(--font-x-small); position: absolute; }
.form-lightbox-add-comment .button-form svg { width: 15px; height: 15px; }
.form-lightbox-add-comment .button-form.loading { font-size: 0; opacity: 1; visibility: visible; }

.lightbox-comments { list-style-type: none; padding: 0 var(--card-padding); }
.lightbox-comment time { color: var(--dark-grey); }
.lightbox-comment { padding-right: 32px; }

.button-delete-comment { width: 16px; height: 16px; top:0; right:0; }
.button-delete-comment .icon-close { padding: 3px; stroke:currentColor; }
.button-delete-comment .icon-loading { visibility: hidden; }
.button-delete-comment svg { position: absolute; width: 100%; height: 100%; top:0; left: 0; }
.button-delete-comment.loading .icon-loading { visibility: visible; }
.button-delete-comment.loading .icon-close { visibility: hidden; }

/* Proposal Lightbox */
.fancybox__toolbar .media-select { background-color: var(--white); width: 20px; height: 20px; }
.fancybox__toolbar .fancybox__infobar { font-family: var(--sans-serif); font-size: var(--font-x-small); letter-spacing: 0.1em; color: var(--white); }

/* ==========================================================================
  Media : Alt
 ========================================================================== */
.card.media-alt { margin-bottom:var(--grid-gap); }
.card.media-alt > a { display: block; }
.card.media-alt video { width: 100%; height: auto; }
.card.media-alt .card-actions { margin: 0;width: auto;  background: transparent; top: 0; left: 0; z-index: 4; }
.card.media-alt .card-actions button:first-child:before { display: none; }
.card.media-alt .card-actions input { background-color: var(--white); }
.card.media-alt .card-actions a:before, .card.media-alt .card-actions button:before { background: transparent; }
.card-media-alt-caption { top:0; left:0; bottom:0; right:0; background:rgba(0,0,0,0.6); padding:10px; opacity:0; visibility:hidden; z-index: 3; }
.card-media-alt-caption p { margin: auto auto 0 0; }

/* ==========================================================================
  Media : Single 
 ========================================================================== */
.media-content-viewer img, .media-content-viewer video { height:100%; width:100%; margin:auto; object-fit: contain; }
.media-content-viewer-inner { margin-bottom: 20px; }
.media-content-titles { line-height: 26px; }
.media-content-titles h3:after { content: ''; width: 1px; background-color: #000; height: 26px; border-radius: 1px; margin: 0 14px; display: inline-block; vertical-align: top; }
.media-content-title { align-items: flex-end; }


/* Actions */
.media-content-actions { border-top:1px solid var(--dark-grey); }
.media-content-actions a:not(.button.small), .media-content-actions button { border-bottom:1px solid var(--dark-grey); line-height:50px; text-align:left; }
.media-content-actions svg { top:0; bottom:0; right:0; margin:auto; width:24px; height:24px; z-index: 2; }

/* Tags */
.media-content-tags h4 { margin-bottom:8px; }
.media-content-tags { margin-bottom:15px; }

/* Related */
.media-related h3 { margin-bottom:30px; }

/* ==========================================================================
  Login / Register
 ========================================================================== */
.layout-account { max-width: 500px; }
.layout-account form { padding: 40px; grid-gap:var(--grid-gap-medium); }
.layout-account p:empty { display: none; }
.layout-account .gform_button, .layout-account .button {  background: var(--black); border-radius: 0; color: var(--white); width: 100%; }
.layout-account .ginput_complex { display: grid; grid-gap:var(--grid-gap-medium); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.layout-account .gf_progressbar_wrapper,
.layout-account .gform_previous_button { display:none; }
.layout-account .gform_submission_error { text-align: center; font-size: var(--font-regular-large); padding: 40px 0 0 0; }
.login-tabs { border-bottom: 1px solid var(--grey); line-height: 40px; }
.login-tabs a { border: 1px solid var(--grey); margin-bottom: -1px; }
.login-tabs a.active { border-bottom-color: var(--white); }
.form-reminder { display: none; }
.show-reminder .form-reminder { display: grid; }
.show-reminder .form-login { display: none; }

/* Register */
.partial_entry_warning { display: none; }

/* ==========================================================================
  Search
 ========================================================================== */
/* Card : Media */
.card.media { align-content: space-between; padding: var(--card-padding); justify-content: space-between; aspect-ratio: var(--card-aspect-ratio); position: relative; display: flex; flex-wrap: wrap; background: var(--light-grey); z-index: 0; }
.card.media img, .card.media video { position: absolute; object-fit: contain; }
.card.media span, .card.media > button, .card.media > a { flex-basis: 50%; }
.card.media > button { color:var(--dark-grey); }
.card.media .hotspot { top:40px; bottom:40px; }
.card.media .button-copy { text-align: right; }
.card-actions { margin-top:calc( var(--card-padding) * -1); margin-left:calc( var(--card-padding) * -1); margin-right:calc( var(--card-padding) * -1); z-index: 2; width:calc(100% + calc( var(--card-padding) * 2 )); line-height: 24px; }
.card-actions a, .card-actions button { height: var(--button-size); width: var(--button-size); padding: 8px; position: relative; }
.card-actions a:before, .card-actions button:before { content: ''; height: 26px; margin: auto 0; background-color: var(--grey); width: 1px; position: absolute; left: 0; top:0; bottom: 0; }
.card-actions .button-similar { text-align: right; margin-left: auto; width: auto; }
.card-actions .button-similar:before { display: none; }
.card-actions .icon-loading { position: absolute; padding: 14px; top: 0; left: 0; visibility: hidden; }
.card-actions .loading > .icon-loading { visibility: visible; }
.card-actions input { width: 20px; height: 20px; margin:var(--card-padding); }
.card-actions svg { pointer-events:none; }

/* Proposal Card */
.card.media.Proposal > span { display:none; }
.card.media.Proposal .button-similar { display: none; }

/* Breadcrumb */
.breadcrumb span { padding: 0 10px; color: var)var(--grey); }

/* Tabs */
.search-tabs { margin-bottom: 0; margin-top:-56px; }
.search-tabs:after { display: none; }
.tabs { margin-bottom:var(--margin-small); grid-gap:var(--grid-gap); overflow-x: scroll; overflow-y: hidden; position: relative; z-index: 0; }
.tabs:after { content:''; position: absolute; bottom: 0; left: 0; right: 0; height: 1px; background-color: var(--dark-grey); display: block;}
.tab-button, .tab-link { background: #FFF; border: 1px solid var(--dark-grey); border-bottom:0; margin-bottom:-1px; padding: 0 16px; height: var(--input-height); line-height:var(--input-line-height); display:flex; }
.tab-button.active, .tab-link.active { border-bottom:1px solid var(--white); position: relative; z-index: 1; }
.tab-button-selected { transition: var(--transition-fade); }
.tab-button-selected:after { content:attr(data-selected); background:var(--grey); width:20px; height:20px; line-height:20px; border-radius:10px; margin: auto 0 auto 10px; display:inline-block; }
.tab-button-selected[data-selected="0"] { opacity: 0.3; pointer-events: none; }
.tab { display:none; position: relative; }
.tab.active { display:grid; }


/* Header */
.page-header { aspect-ratio: 1920/500; margin-top:calc(-1 * var(--body-padding)); margin-bottom: var(--margin-small); z-index: 0; }
.page-header article { top:50%; left:var(--padding); right:var(--padding); transform: translateY(-50%); z-index: 2; }
.page-header .background-image { height: 100%; object-fit: cover; }
.page-header nav { margin-top:var(--margin-small); grid-gap:15px; }
.proposal-logo { aspect-ratio: 2/1; max-width: 200px; width: 100%; margin: 10px auto auto auto; }
.proposal-logo img { margin: auto; object-fit: contain; height: 100%; }

/* Actions */
.actions { bottom: 0; left: 0; right: 0; padding: var(--padding) 0; border-top: 1px solid var(--dark-grey); justify-content: space-between; grid-gap:16px; grid-column: 1/-1; transform: translateY(100%); visibility: hidden; transition: var(--transition-transform);}
.actions label { line-height: 30px; }
.actions button { opacity: 0.5; pointer-events: none; transition: var(--transition-fade); position: relative; }
.actions button.loading { color: transparent; }
.actions button.loading svg { visibility: visible; color:var(--black); }
.actions button svg { position: absolute; top:0; left: 0; bottom: 0; right: 0; width: 20px; height: 20px; visibility: hidden; pointer-events: none; margin: auto; }
.actions.enabled { transform: translateY(0); visibility: visible; }
.actions.enabled button { opacity: 1; pointer-events: auto; }
.actions label:after { content: ' Selected'; }
.button-clear-selected { margin-right: auto; margin-left: 0; }


/* ==========================================================================
  Partner Collections
 ========================================================================== */
.layout-header h1 { top:50%; left: 0; right: 0; text-align: center; transform: translateY(-50%); z-index: 1; }
.layout-header figure {aspect-ratio: 1440/304; }
.layout-header img { object-fit: cover; height: 100%; }

/* ==========================================================================
  Toast Notification
 ========================================================================== */
.toastify { padding: 12px 40px 10px 16px; color: var(--black); display:flex; box-shadow: 0 3px 6px -1px rgba(0, 0, 0, 0.12), 0 10px 36px -4px rgba(162, 163, 171, 0.3); background:var(--white); position: fixed; opacity: 0; transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1); cursor: pointer; text-decoration: none; max-width: calc(50% - 20px); z-index: 1000; border:1px solid var(--black); min-width: 310px; }
.toastify.on { opacity: 1; }
.toastify.error { border-color: var(--red); }
.toastify span { text-decoration:underline; margin-left:20px; }
.toast-close { height: 40px; width:40px; position:absolute; top:0; bottom:0; right:0; padding:14px; }
.toast-close svg { stroke:var(--black); }
.toastify-right { right: var(--padding); }

/* ==========================================================================
	Page : Contact
   ========================================================================== */
.layout-contact h2 { text-transform:uppercase; letter-spacing:0.2em; margin-bottom:20px; }
.layout-contact p { margin-bottom:32px; }

/* ==========================================================================
  Page : FAQs
 ========================================================================== */
.faq-page-title { border-bottom: 1px solid #000; padding-bottom: 10px; } 
.faq { border-bottom: 1px solid #000; padding: 23px 0 17px 0; }
.faq-answer { padding-top: 20px; }
.faq-question { user-select: none; cursor: pointer; position: relative; }
.faq-question:after { content:'+'; position: absolute; top:0; bottom: 0; right: 0; }
.faq[open] .faq-question:after { content:'−'; }
.faq-image img { height: 100%; object-fit: cover; }


/* ==========================================================================
  Footer
 ========================================================================== */
main.has-footer { background-color: var(--white); margin-bottom: var(--footer-height); position: relative; z-index: 1; min-height: 100vh; padding-top:var(--body-padding); }
.footer { height: var(--footer-height); position: fixed; z-index: 0; bottom: 0; left: 0; right: 0; background-color:#212020; color:#FFF; padding-top:20px; padding-bottom:20px; }
.footer h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; margin-bottom: 14px; }
.footer p { max-width: 530px; }
.footer-contacts p { margin-left: auto; }
.footer-menu { margin-top:auto; margin-bottom: 12px; }
.footer-menu-item { line-height: 25px; display: inline-block; letter-spacing: 0.12em; }
.footer-menu-item:first-of-type { padding-left:0; }
.footer-menu-item:last-of-type { border-right: 0; }

/* Cookie Consent */
#cc-main {   
  --cc-font-family: var(--sans-serif);
  --cc-modal-border-radius: 0;
  --cc-btn-border-radius: 0;
}
body #cc-main button, body #cc-main .cm__btn { font-weight:normal !important; text-transform:uppercase; letter-spacing:0.1em; font-size:var(--font-small) !important;}
body #cc-main .pm__section-title { font-weight:normal; }
body #cc-main .pm__title { font-family: var(--serif); font-weight: normal; font-size: var(--font-regular-large); }

/* Hover */
@media (hover: hover) and (min-width: 768px) {
  /* Menu : Network */
  .menu-network-item { transition:var(--transition-colour); }
  .menu-network-item:hover { color:var(--white); }
  .menu-network-item:hover img.loaded { opacity:1; }
  .menu-network-item span { transition:var(--transition-height), var(--transition-fade); }
  .menu-network-item:hover span { max-height:150px; opacity:1; }
}
@media (hover: hover) {
  /* Buttons */
  .roundel, .button.small { transition:var(--transition-button); }
  .roundel:hover, .button.small:hover { background:var(--black); color:var(--white); border-color:var(--black); }
  
  /* Slideshow */
  .slideshow-studio-title .button { transition: var(--transition-width), var(--transition-border-radius), var(--transition-colour); }
  .slideshow-studio-title .button-arrow { transition: var(--transition-width); }
  .slideshow-studio-title .button:hover { width: 300px; border-radius: 0; color:rgba(255,255,255,0.5); }
  .slideshow-studio-title .button:hover .button-arrow { width: 66px; }

  /* Media : Related */
  .card.media-alt .card-media-alt-caption { transition: var(--transition-fade); pointer-events: none; }
  .card.media-alt:hover .card-media-alt-caption { opacity:1; visibility: visible; pointer-events: auto; }
  .card.media-alt:hover .card-actions { color: #FFF; }
  .card.media-alt .card-actions a, .card.media-alt .card-actions button { opacity: 0; visibility: hidden; transition: var(--transition-fade); }
  .card.media-alt:hover .card-actions a, .card.media-alt:hover .card-actions button { opacity: 1; visibility: visible; }
  

  /* Lightbox */
  .form-lightbox-add-comment .button-form, .lightbox-comment .button-delete-comment { visibility: hidden; opacity: 0; transition: var(--transition-fade); }
  .form-lightbox-add-comment:hover .button-form, .lightbox-comment:hover .button-delete-comment { visibility: visible; opacity: 1; }
  .lightbox-comment .button-delete-comment.loading { pointer-events: none; opacity: 1; visibility: visible; }
}

/* Touch Screens */
@media (hover: none) {

  /* Media : Related */
  .card-media-alt-caption { position: static; color: var(--black); opacity: 1; visibility: visible; background: none; flex-wrap: wrap; padding: 10px 0 10px 0; }
  .card-media-alt-caption p { flex-basis: 100%; padding:0 0 0 10px 0; }

}

/* ==========================================================================
  Desktop
 ========================================================================== */
@media screen and (min-width: 769px) {

  /* Helpers */
  .m-show { display:none; }

  /* Structure */
  .d\:grid-cols-1	{ grid-template-columns: repeat(1, minmax(0, 1fr)); }
  .d\:grid-cols-2	{ grid-template-columns: repeat(2, minmax(0, 1fr)); } 
  .d\:grid-cols-3	{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .d\:grid-cols-4	{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .d\:grid-cols-5	{ grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .d\:grid-cols-6	{ grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .d\:grid-cols-7	{ grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .d\:grid-cols-8	{ grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .d\:grid-cols-9	{ grid-template-columns: repeat(9, minmax(0, 1fr)); }
  .d\:grid-cols-10	{ grid-template-columns: repeat(10, minmax(0, 1fr)); }
  .d\:grid-cols-11	{ grid-template-columns: repeat(11, minmax(0, 1fr)); }
  .d\:grid-cols-12	{ grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .d\:col-span-1	{ grid-column: span 1 / span 1; }
  .d\:col-span-2	{ grid-column: span 2 / span 2; }
  .d\:col-span-3	{ grid-column: span 3 / span 3; }
  .d\:col-span-4	{ grid-column: span 4 / span 4; }
  .d\:col-span-5	{ grid-column: span 5 / span 5; }
  .d\:col-span-6	{ grid-column: span 6 / span 6; }
  .d\:col-span-7	{ grid-column: span 7 / span 7; }
  .d\:col-span-8	{ grid-column: span 8 / span 8; }
  .d\:col-span-9	{ grid-column: span 9 / span 9; }
  .d\:col-span-all { grid-column: 1/-1; }
  .d\:col-start-1 { grid-column-start: 1; }
  .d\:col-start-2 { grid-column-start: 2; }
  .d\:col-start-3 { grid-column-start: 3; }
  .d\:col-start-4 { grid-column-start: 4; }
  .d\:col-start-5 { grid-column-start: 5; }
  .d\:col-start-6 { grid-column-start: 6; }
  .d\:col-start-7 { grid-column-start: 7; }
  .d\:col-start-8 { grid-column-start: 8; }
  .d\:col-start-9 { grid-column-start: 9; }
  .d\:col-start-10 { grid-column-start: 10; }
  .d\:col-start-11 { grid-column-start: 11; }
  .d\:col-start-12 { grid-column-start: 12; }
  .d\:col-end-1 { grid-column-end: 2; }
  .d\:col-end-2 { grid-column-end: 3; }
  .d\:col-end-3 { grid-column-end: 4; }
  .d\:col-end-4 { grid-column-end: 5; }
  .d\:col-end-5 { grid-column-end: 6; }
  .d\:col-end-6 { grid-column-end: 7; }
  .d\:col-end-7 { grid-column-end: 8; }
  .d\:col-end-8 { grid-column-end: 9; }
  .d\:col-end-9 { grid-column-end: 10; }
  .d\:col-end-10 { grid-column-end: 11; }
  .d\:col-end-11 { grid-column-end: 12; }
  .d\:col-end-12 { grid-column-end: 13; }

  /* Buttons */
  .button.large { height: 60px; line-height: 60px; border-radius: 30px; }
  
  /* Header */
  .header { padding-left: 60px; padding-right: 60px; }
  .header-logo { width: 174px; height: 49px; top:25px; }
  .header-search { top:100px; max-width: 454px; width: 100%; } 

  /* Homepage */
  .slideshow-caption { bottom: 36px; right: 36px; }
  .slideshow-media.two-images img { width: 50%; }
  .slideshow-studio-title { bottom: 24px; }
  .slideshow-studio-title .button {  margin: auto 0 auto 20px; }

  /* Highlighted Collections */
  .layout-highlighted-collections { grid-gap:180px; }
  .card.collection { margin-bottom:5vw; padding: 50px;}
  .card.collection .image { margin-bottom: 10px; }
  .card.collection.hidden { display: none; }
  .card.collection.offset-top { padding-top: 10vw; }
  .card.collection.offset-right { padding-right: 10vw; }
  .card.collection.offset-bottom { padding-bottom: 10vw; }
  .card.collection.offset-left { padding-left: 10vw; }

  /* Search */
  .card.media img, .card.media video { top:80px; bottom:80px; left:60px; right:60px; width: calc( 100% - 120px); height: calc( 100% - 160px); }

  /* Studio */
  .layout-studio { height: 100vh; }
  .layout-studio .swiper { height:100%;}
  .studio-slide { height: 100%; }
  .studio-slide-globe-caption .gform_footer { margin-top:16px; }
  .studio-slide-globe-caption .gform_fields, .studio-slide-globe-caption .gform_footer { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .studio-slide-text-image .studio-slide-overlaid { height: calc(100% - 368px); }

  /* Studio : Full Width */
  .studio-slide-fullwidth .studio-slide-overlaid { height: calc(100% - 368px); }
  .studio-slide-overlaid { top:184px; bottom:184px; }
  .studio-slide-globe-container { height: 100%; }
  .studio-slide-globe-caption h3 { font-size: 30px; }
  .studio-slide-globe-caption { top:50%; left: 0; right: 0; transform: translate3d(0, -50%, 0); letter-spacing: 0.04em; z-index: 1; }
  .studio-slide-globe-caption .gform_button {  grid-column-start: 2;  }

  /* Single Media */
  .media-content { margin-bottom:40px; }
  .media-content-meta { margin-top:auto; }
  .media-content-viewer { position: sticky; top:0; }
  .media-content-viewer-inner { padding:34px 34px 68px 34px; aspect-ratio: 1515/784; }
  .media-content-viewer .button { bottom:24px; left:24px; }
  .media-content-viewer-next, .media-content-viewer-prev { top:0; bottom: 0; margin: auto; width: 55px; height: 55px; }
  .media-content-viewer-next { right:8px; }
  .media-content-viewer-prev { left:8px; }
  .media-content-tags:last-of-type { margin-bottom:0; }
  .button-square { margin-right: -10px; }

  /* Page : Header */
  .page-header h1 { padding-top:var(--header-height); }

  /* Page : Contact */
  .layout-contact { padding:0 80px 0 80px; grid-gap:80px; }

  /* Page : FAQs */
  .layout-faqs { padding:0 80px 0 80px; grid-gap:160px; }

  /* Footer */
  .footer-menu-item { border-right: 1px solid var(--light-grey); padding: 0 10px; }


}

/* ==========================================================================
  Small Desktop
 ========================================================================== */
@media screen and (min-width: 769px) and (max-width:1240px) { 
  /* Grid */
  .lightbox-media { grid-template-columns: repeat(3, minmax(0, 1fr)); }

  /* FAQs */
  .layout-faqs > article { grid-column: 1/-1; }
  .layout-faqs > aside { display: none; }

}

@media screen and (min-width: 768px) and (max-width:1100px) { 
  /* Grid */
  .lightbox-media 
  .proposals,
  .lightboxes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media screen and (max-width:1400px) { 
  
  /* Page : Header */
  .page-header { aspect-ratio: 1920/800; }

}

@media screen and (max-width: 1240px) {
  /* Tuck in menu */
  .header { padding-left: var(--padding); padding-right: var(--padding); }
  .header-menu-item { margin: auto 6px; }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {

  /* Homepage */
  .slideshow-caption { bottom: var(--padding); left: var(--padding); }
  .slideshow-studio-title { bottom: calc( var(--padding) + 48px); }
    
  /* Single Media */
  .media-related-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .media-related-grid .grid-col--4, .media-related-grid .grid-col--5 { display:none; }
  
  /* Lightbox Related Media */
  .lightbox-similar-media { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lightbox-similar-media .grid-col--4, .lightbox-similar-media .grid-col--5 { display:none; }
  
  /* Contact */
  .layout-contact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .layout-contact article:last-child { grid-column: 1/-1; }
  
}

@media screen and (max-width: 820px) {
  /* Buttons */
  .buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .buttons > button, .buttons > a  { justify-content: flex-start; }
  .buttons .button-back { margin-left: 0;}
}

/* ==========================================================================
  Mobile
 ========================================================================== */
@media screen and (min-width: 901px) {
  /* Desktop */
  /* Network Menu */
  .menu-network { margin: auto; max-height: 370px; }
  .menu-network-logo { width: 212px; height: 30px; top:40px; }
  .menu-network-item { font-size: 30px; width: 50%; }
  .menu-network:after { content:''; background-color: var(--grey); width: 1px; top:0; bottom: 0; left: 50%; position: absolute; max-height: 350px; height: 100%; margin: auto; }
  .menu-network-item img { opacity:0; top:0; bottom:0; width:50%; z-index:-1; height: 100%; object-fit: cover; }
  .menu-network-item span { opacity:0; max-height:0; overflow:hidden; max-width:460px; width:100%; margin-left:auto; margin-right:auto; letter-spacing:-0.02em; line-height:1.4; text-transform:none; }
  .menu-network-item .button { margin-top:12px; }
  .menu-network-represents img { left:0; }
  .menu-network-licensing img { right:0; }
  .button-menu-network-close { top:32px; left: 57px; }
}

 @media screen and (max-width: 900px) {

  /* Search */
  .header-search { max-width: none; left: var(--padding); width: auto; }

  /* Mobile Menu */
  /* Network Menu */
  .header-menu-container { display:none; }
  .modal-menu-network { z-index: 4; }
  .menu-network-logo { width:132px; height:20px; top:20px; }
  .menu-network { flex-direction:column; text-align:left; padding:98px 24px 24px 24px; }
  .menu-network-item, .menu-network-submenu-item {  border-top:1px solid var(--dark-grey); width: 100%; line-height:40px; color: var(--black);  }
  .menu-network-item a, .menu-network-submenu-item a { width:100%; display:flex; }
  .menu-network-item > a { font-size:18px; }
  .menu-network-item svg { margin: auto 0 auto auto; }
  .menu-network-item-link img,
  .menu-network-item-link span { display: none; }
  .menu-network-item:last-of-type { border-bottom:1px solid var(--dark-grey); }
  .button-menu-network-close { top:8px; left:12px; }

  /* Network : Submenu */
  .menu-network-submenu { display:block; padding:98px 24px 24px 24px; top: 0; left: 0; right: 0; bottom: 0; z-index:1; transform: translateX(100%); transition:var(--transition-transform); }
  .menu-network-submenu-item { list-style-type:none; }
  .menu-network-submenu.is-active { transform: translateX(0); }
  .button-close-submenu svg { transform:rotate(-180deg); }
  
}

 @media screen and (max-width: 768px) {

  :root {
  
    /* Structure */
    --body-padding: 75px; /*150px; */
    --header-height: 75px;
    --grid-gap-medium:10px;
    --footer-height: 100vh;
    --margin:40px;

    /* 50-75% reduction */
    --font-regular: 14px;
    --font-regular-large: 15px;
    --font-regular-xl-large: 22px;
    --font-medium: 30px;
    --font-large: 30px;
    --font-xl-large: 50px;

  }

  /* Structure */
  .m\:grid-cols-1	{ grid-template-columns: repeat(1, minmax(0, 1fr)); } 
  .m\:grid-cols-2	{ grid-template-columns: repeat(2, minmax(0, 1fr)); } 
  .m\:col-span-all { grid-column: 1/-1; }

  /* Helpers */
  .m-show { display:block; }
  .m-show.grid { display: grid; }
  .m-hide { display:none; }

  /* Buttons */
  .button.large { height: 40px; line-height: 38px; border-radius: 20px; }

  /* Icons */
  .icon-arrow { width:20px; height:9px; }

  /* Header */
  .header { background:var(--black); color:var(--white); padding-left: 15px; padding-right: 15px; position: fixed;  z-index: 4; }
  .header-logo { width: 130px; height: 36px; top:20px; }
  .header-search { left:var(--padding); top:93px; }

  /* Homepage */
  .slideshow-studio-title { bottom: calc( var(--padding) + 36px); }
  .slideshow-media.two-images { flex-direction: column; }
  .slideshow-media.two-images img:last-of-type { display: none; }
  .slideshow-studio-title-search .flex { flex-direction: column; }
  .slideshow-studio-title .button { margin: 10px 0 20px 0; }

  /* Highlighted Collections */
  .card.collection { margin-bottom:26px; }
  .card.collection figure { margin-bottom:5px; }
  
  /* Page Titles */
  .page-title {  --font-medium: 20px; --font-large: 30px; }

  /* Tabs */
  .tabs { font-size: var(--font-x-small); white-space: nowrap; } 

  /* Buttons */
  .buttons,
  .button-icon { font-size: var(--font-x-small); }

  /* Search */
  .card.media img, .card.media video { top: 48px; bottom: 48px; left: var(--padding); right: var(--padding); width: calc( 100% - 48px); height:calc(100% - 96px); }
  .actions { padding: 16px 0; font-size: var(--font-x-small); flex-wrap: wrap; grid-row-gap: 8px; justify-content: flex-start; }
  .actions-new-line { flex-basis: 100%; }
  
  /* Page : Header */
  .page-header { margin-top: calc( -1 * calc( var(--body-padding) - var(--header-height) ) ); aspect-ratio: 4 / 3; }

  /* Page : Contact */
  .layout-contact { padding: var(--body-padding) var(--padding); grid-gap:var(--grid-gap-medium); }

  /* Page : FAQs */
  .layout-faqs { padding: var(--body-padding) var(--padding); grid-gap:var(--grid-gap-medium); }
  .layout-faqs > aside { display: none; }


  /* Page : Account */
  .layout-account { margin-top: var(--body-padding); }

  /* Single Media */
  .layout-media { padding-top:var(--body-padding); }
  .media-content-viewer { max-width: 100vw; margin-left: var(--negative-padding); margin-right: var(--negative-padding);}
  .media-content-viewer-inner { padding:20px; aspect-ratio: 1/1; }
  .media-content-viewer img, .media-content-viewer video  { width:100%; height: calc(100% - 88px); }
  .media-content-viewer .button { bottom:24px; left:0; right: 0; max-width: 170px; margin: auto; }
  .media-content-actions { margin-bottom:20px; }
  .media-content-meta { padding-top:var(--padding); }
  .media-content-titles { padding-left: var(--padding); padding-right: var(--padding); }
  .media-content-titles .media-content-headline { width: 100%; }
  .media-content-titles .media-content-headline:after { display: none; }
  .media-content-titles h3:after { height:16px; margin: 5px 10px; }

  /* Artists */
  .layout-artists-index { padding: var(--body-padding) var(--padding); }
  .artist-index-filter { height: auto; line-height: 2.5; }
  .artist-image { font-size: 12px; }

  /* Studio */
  .layout-studio { margin-top:var(--header-height); }
  .layout-studio .swiper {  touch-action:auto; } 
  .layout-studio .swiper-wrapper { height: auto; }
  .studio-slide { height: fit-content !important; }
  .studio-slide-overlaid { top:var(--padding); bottom:var(--padding); }
  .studio-slide-text-image .studio-slide-overlaid { height: calc(100% - 48px); }
  .studio-slide-fullwidth .studio-slide-overlaid { top: var(--padding); bottom: var(--padding); height: calc(100% - 48px); }
  .studio-slide-half-half .studio-slide-overlaid { height: calc(100% - 48px); }
  .studio-slide-globe { aspect-ratio: auto; }
  .studio-slide-globe-container { height: 56vw !important; }
  .studio-slide-globe-container div, .studio-slide-globe-container canvas { height: 100% !important;}
  .studio-slide-globe-caption { position:static; padding: var(--padding); }
  .studio-slide-globe-caption h3 { font-size: 20px; }
  .studio-slide-globe-caption .gform_fields, .studio-slide-globe-caption .gform_footer { grid-template-columns: repeat(1, minmax(0, 1fr)); margin-top: var(--grid-gap); }
  .studio-slide-caption { position: static; padding: var(--padding); }
  .studio-slide-text-image-text { grid-row:2; }
  .studio-slide-text-image-image  { grid-row:1; }
  .studio-slide-text-image-text, .studio-slide-text-image-image { max-height:none; }
  .studio-slide-text-image-text-inner { font-size: var(--font-large); }
  .studio-slide-case-studies { height: auto; aspect-ratio: auto; padding-bottom: var(--padding); }
  .studio-case-study { font-size: 14px; }
  .studio-case-study h4 { font-size: 20px; }
  .slideshow-studio-caption + .slideshow-caption { display:none; } 

  /* Proposal */
  .layout-proposal-header { margin-top: 0; }
  .proposal-logo { aspect-ratio: 150/100; max-width: 100px; }
  .card-media-alt-caption { display: none; }

  /* Collections */
  .layout-header figure { aspect-ratio: 1/0.5; }

  /* Footer */
  .footer { padding-top:calc( var(--header-height) + var(--padding)); }
  .footer-menu { flex-direction: column; }

  /* Notifications */
  .toastify { top: 93px !important; }

  /* Modal */
  .modal { padding:var(--header-height) var(--padding) var(--padding) var(--padding); }
  .modal-form { padding: var(--padding); }
  .modal-form-request .gform_fields { grid-template-columns: repeat(1, minmax(0, 1fr)); }
  
  /* Modal : Register */
  .modal-register-image { grid-row:1; aspect-ratio:16/9; }
  .modal-register-text { grid-row:2; }
}

/* Small Mobile */
@media screen and (max-width: 600px) {
  /* Grid */
  .lightbox-media, 
  .proposals, 
  .lightboxes, 
  .tab-selected-media { grid-template-columns: repeat(1, minmax(0, 1fr)); }
}

@media screen and (max-width: 420px) {
  /* Buttons */
  .buttons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
