/* begin +++++++++ MOBILE LANDSCAPE ++++++++++++ */

@media screen 
and (orientation: landscape) 
and (max-width: 932px) 
and (max-height: 430px) { 

body {
	grid-template-columns:40vw 60vw;
	grid-template-rows: 5.6rem max-content;
	}  
.primary-nav,
.nav-default {
	width:100vw;
	height:5.6rem;
	top:0;left:0;
	background:var(--black);
	position:fixed;
	display:block;
	z-index:3;
	}
.menu-items > header > h2 {
	width:40%;
	font: var(--head2);
	position:fixed;
	top:calc(50vh - .5ex);left:calc(20% - 1ch);
	transform:translateX(-35%);
	}
.heading-top {
	width:40%;
	font: var(--head2);
	font-size:6vw;
	top:calc(36vh + 1ex);
	transform:translateY(-30%);
	white-space:nowrap;
	text-align:center;
	position:fixed;
	display:block;
	opacity:1;
	}
.mob-land > h2,
.mob-land > h2::before {
	width:calc(100% - 0.6rem);
	}
.mob-land > h2 {
	left:-0.6rem;
	}
.mob-land > h2::before {
	content:attr(first-line);
	font: var(--head4);
	position:relative;
	top:1.0rem;left:0.6rem;
	margin-bottom:-1.0rem;
	transform:translateY(-50%);
	}

/* LIST OF HIDDEN ITEMS */
.sidebar,
.page-alt-view,
.landing-logo-desktop,
figcaption.portrait-caption,
figure.nav-landscape,
footer,
.heading-bottom,
img.portrait,
.cover-portrait,
.page-alt-view,
.hidden-content,
footer,
.nav-footer,
.form-accordion {
	width:0;
	height:0;
	opacity:0;
	display:none;
	}

.nav-closed,
.nav-open {
	height:3.2rem;
	}
.nav-closed::after,
.nav-closed::before,
.nav-open::after,
.nav-open::before {
	content:"";
	width:1.6rem;
	height:0.125rem;
	top:1.55rem;right:0.3rem;
	}
/* begin +++++++++++ LANDING-LOGO & HOME ICON */
.logo-container {
	grid-area: sub-nav;
	width:calc(45vw - 1.9rem);
	height:10.0rem;
	top:5.6rem;left:1.3rem;
	/*background:#0ff;*/
	position:absolute;
	display:grid;
	z-index:3;
	order:1;
	}

.landing-logo,
.page-head {
	width:calc(25vw - 0.6rem);
	height:10.0rem;
	left:0;
	}
.page-head {
	background-image: url("../../../images/icons/home-icon.svg");
	background-size:5.43rem 8.76rem;
	top:0.3rem;
	cursor:pointer;
	z-index:3;
	&::after {
	font-size:1.71rem;
	top:2.3rem;left:6.8rem;
	}
}
.landing-logo {
	width:100%;
	background-size:5.835rem 9.45rem;
	top:0;
	display:block;
	&::after {
		font-size:1.875rem;
		top:2.8rem;left:7.1rem;
		}
	}
/* end +++++++++++_ LANDING-LOGO & HOME ICON */

/* begin +++++++++++ PRIMARY STRUCTURE */
.main-scroller {
	width:100vw;
	height:calc(100svh - 5.6rem);
	/*top:11.6rem;left:-0.3rem;*/
	top:0;left:-0.3rem;
	}
.page-container {
	grid-template-areas: 
	"sub-nav"
	"main-content";
	grid-template-columns: 45vw 55vw;
	grid-template-rows: 5.6rem fit-content;
	order:2;
	}

.wrapper-home,
.wrapper-fa,
.wrapper-il,
.wrapper-de,
.wrapper-ab {
	width:100vw;
	height:calc(100vmax - 5.6rem);
	top:0;left:0;
	display:flex;
	flex-flow: column nowrap;
	justify-content:space-between;
	}
.wrapper-home::before,
.wrapper-fa::before,
.wrapper-il::before,
.wrapper-de::before,
.wrapper-ab::before,
.wrapper-home::after,
.wrapper-fa::after,
.wrapper-il::after,
.wrapper-de::after,
.wrapper-ab::after {
	content:"";
	background-repeat: no-repeat;
	background-attachment:fixed;
	display:inline-block;
	position:fixed;
	z-index:2;
	}
.wrapper-home::before,
.wrapper-fa::before,
.wrapper-il::before,
.wrapper-de::before,
.wrapper-ab::before {
	height:100vh;
	width:0.9rem;
	background-position: 0 0;
	background-size: 100%;
	top:0;left:0;
	}
.wrapper-home::after,
.wrapper-fa::after,
.wrapper-il::after,
.wrapper-de::after,
.wrapper-ab::after  {
	width:100vw;
	height:0.4rem;
	background-position: 0.9rem 100%;
	background-size: 100%;
	bottom:0;left:0;
	}
.home {
	max-width:calc(100vw - 0.9rem);
	height:calc(100% - 3.6rem);
	top:-10vh;left:0.9rem;
	flex-flow:row nowrap;
	justify-content: flex-start;
	}
.home header {
	max-width:45vw;
	flex:0 0 45vw;
	order:1;
	}
h1 {
	width:calc(45% - 0.9rem);
	font: var(--head1);
	white-space:nowrap;
	margin-top:calc(47vh - .75ex);
	text-align:center;
	position:fixed;
	left:1.3rem;
	}
figure.cover-landscape {
	max-width:55vw;
	min-height:0;
	top:15vh;
	flex:0 0 55vw;
	order:2;
	}
figcaption.landscape-caption {
	max-width:calc(100% - 3ch);
	font: var(--head4);
	text-align:center;
	padding-top:0.9rem;
	padding-bottom:1.6rem;
	display:block;	
	}
/* COVER IMAGE AND CAPTION */
img.horizontal {
	max-width:calc(100% - 2.9rem);
	border:0.2rem solid var(--gray5);
	object-fit:scale-down;
	}
/* end ++++++++++++ PRIMARY STRUCTURE */
/* begin +++++++++++ MENU ICON STRUCTURE */
.menu-icon,
.menu-icon:hover,
.menu-icon:active,
.menu-icon-symbol,
.menu-icon-symbol::before,
.menu-icon-symbol::after {
	width:4.6rem;
	}
.menu-icon,
.menu-icon:hover,
.menu-icon:active {
	height:5.6rem;
	top:1.25rem;
	left:calc(100vw - 5.9rem);
	}
.menu-icon-symbol,
.menu-icon-symbol::before,
.menu-icon-symbol::after {
	border-top:0.2rem solid var(--gray5);
	border-bottom:0.2rem solid var(--gray5);
	}
.menu-icon-symbol {
	height:3.08rem;
	cursor:pointer;
	position:absolute;
	top:0;
	}
.menu-icon-symbol::before,
.menu-icon-symbol::after {
	content:"";
	height:0.52rem;
	border-bottom:0.2rem solid var(--gray5);
	}
.menu-icon-symbol::before {
	border-top:0.2rem solid var(--gray5);
	top:0.52rem;
	}
.menu-icon-symbol::after {
	border-top:0.2rem solid transparent;
	top:1.25rem;
	}
.menu-icon-symbol:hover,
.menu-icon-symbol:active,
.menu-icon-symbol:hover::before,
.menu-icon-symbol:active::before,
.menu-icon-symbol:hover::after,
.menu-icon-symbol:active::after {
	border-bottom:0.2rem solid var(--gray8);
	}

/* end +++++++++++ MENU ICON STRUCTURE */
/* begin +++++++++ PAGING ICON STRUCTURE */
.paging-arrow-container {
	display:none;
	}
.paging-icon-container  {
	width:4.5rem;
	height:3.2rem;
	transform:rotate(0);
	top:1.7rem;left:0.5rem;
	display:block;
	z-index:3;
	}
.page-left,
.page-left::before,
.page-right,
.page-right::before,
.page-left:hover,
.page-left:active,
.page-left-disabled,
.page-left-disabled::before,
.page-right-disabled,
.page-right-disabled::before  {
	overflow:hidden;
	position:absolute;
	top:0;
	}

.page-left::before,
.page-right::before,
.page-left-disabled::before,
.page-right-disabled::before  {
	content:"";
	width:3.2rem;
	height:3.2rem;
	border:none;
	}
.page-left,
.page-right,
.page-left:hover,
.page-left:active,
.page-left-disabled,
.page-right-disabled  {
	width:2.2rem;
	height:2.2rem;
	}
.page-right,
.page-right:hover,
.page-right:active,
.page-right-disabled {
	border-top:0.2rem solid transparent;
	border-right:0.2rem solid transparent;
	}
.page-left,
.page-right {
	border-bottom:0.2rem solid var(--gray5);
	border-left:0.2rem solid var(--gray5);
	}
.page-left,
.page-left:hover,
.page-left:active,
.page-left-disabled {
	transform:rotate(45deg);
	}
.page-right,
.page-right:hover,
.page-right:active,
.page-right-disabled {
	left:2.6rem;
	transform:rotate(225deg);
	}
.page-right:hover,
.page-right:active,
.page-left:hover,
.page-left:active {
	border-bottom:0.2rem solid var(--gray7);
	border-left:0.2rem solid var(--gray7);
	}
.page-left-disabled,
.page-right-disabled {
	border-bottom:0.2rem solid var(--gray3);
	border-left:0.2rem solid var(--gray3);
	}
.page-left,
.page-right  {
	cursor:pointer;
	}
.page-left-disabled,
.page-right-disabled  {
	cursor:default;
	}

/* end +++++++++ PAGING ICON STRUCTURE */
/* begin +++++++++++++ TEXT-HEAVY PAGES */
.text-container {
	width:calc(100vw - 0.6rem);
	min-height:0;
	top:0;left:0.6rem;
	display:flex;
	flex-flow:row nowrap;
	align-items:flex-start;
	}

.text-content {
	width: 60vw;
	left:calc(40vw - 0.9rem);
	transform:translateX(0);
	display:block;
	flex:0 0 60vw;
	}
/*.text-content:nth-of-type(3n - 1) {
	top:3.5vh;left:0;
	}*/
.columns {
	width:55vw;
	columns:1;
	column-width:85%;
	break-before: column;
	padding:0 0 0.9rem 0;
	text-align:left;
	left:2.5vw;
	}
.text-content > h4 {
	width:calc(85% + 1.8rem);
	text-indent:0.6rem;
	font: var(--head4);
	line-height:1.5;
	margin:1.6rem 0 0.6rem 0;
	left:1.5rem;
	border-bottom: 0.1rem solid var(--gray6);
	}
.text-content > h4:nth-of-type(2n - 1) {
	padding:3.2rem 0 0 0;
	}
.text-content > p {
	width:75%;
	font: var(--body);
	word-spacing:0;
	widows: 2;
	hyphens:auto;
	}
.keep-together {
	display:inline-block;
	}
.keep-together > p {
	width:100%;
	text-indent:3ch;
	}
/* end +++++++++++++ TEXT-HEAVY PAGES */

/* begin +++++++++ MENU ACCORDION */
.menu-items {
	width:100vw;
	top:25%;
	display:flex;
	flex-flow:row nowrap;
	justify-content:flex-start;
	left:0;
	}
.menu-items > header {
	max-width:35%;
	order:1;
	}
.accordion {
	width:calc(55% - 0.9rem);
	top:5vh;
	border-color:var(--gray5);
	color:var(--gray5);
	display:block;
	left:0.6rem;
	order:2;
	}
details {
	width:calc(98% - 1.3rem);
	border-bottom: 0.125rem solid var(--gray5);
	transform:translateX(0);
	}

details summary {
	width:100%;
	font: var(--head4);
	min-height:3.24rem;
	line-height:3.1rem;
	margin-top:0.9rem;
	padding-bottom:0.3rem;
	}
details summary ~ ul li {
	font: var(--sans-serif-body);
	text-indent: var(--indent);
	min-height:3.6rem;
	line-height:3.4rem;
	border-width: 0 0 0.125rem 0;
	}
details ul {
	top:0.5rem;
	}
/* end +++++++++ MENU ACCORDION */
/* begin +++++++++++ FORM FIELDS */
.form-container {
	width:calc(60% - 0.6rem); 
	min-height:0;
	background:none;
	top:20vh;
	padding:0;
	left:calc(40% - 1.8rem);
	}
.form-field {
	width:100%;
	height:4.2rem;
	display: grid;
	grid-template-columns: 1fr 2fr;
	grid-template-rows: 1fr 1fr 1fr 2fr 2fr 2fr;
	gap: 0px 0px;
	grid-auto-flow: column;
	grid-template-areas:
	"label-title input-field"
	"label-title input-field"
	"label-title input-field"
	"label-comment label-comment"
	"input-comment input-comment"
	"submit-form submit-form";
	justify-content: stretch;
	align-content: center;
	justify-items: stretch;
	}
.form-label { 
	height:4.2rem;
	grid-area: label-title; 
	background:transparent;
	}
.form-summary {
	width:100%;
	height:4.2rem;
	display:flex;
	justify-content:flex-start;
	flex-flow:row nowrap;
	}
.textarea-label + .textarea-label {
	width:100%;
	color:var(--gray7);
	white-space:no-wrap;
	}
.textarea-label::before {
	content:attr(instructions);	
	font: var(--sans-serif-body);
	color:var(--gray6);
	}
.textarea-label:nth-child(1) {
	text-align:right;
	height:6.2rem;
	top:-0.2rem;
	left:4.5vw;
	background:var(--white50T-deg45);
	padding:1.5rem 2.5ch 0 0;
	flex:0 0 33.33%;
	cursor:pointer;
	/*background:#ff0;*/
	}
.textarea-label:nth-child(2) {
	background:transparent;
	left:5.5rem;
	padding:1.5rem 0 0 0;
	flex:0 0 calc(66.66% - 3.8rem);
	/*background:#f00;*/
	}
.form-field:nth-of-type(4n - 1) > .form-label::before { 
	content:" ";
	}
.form-label::before { 
	content:"required ";
	font: var(--sans-serif-body);
	color:var(--gray6);
	white-space:nowrap;
	}
.form-input { 
	grid-area: input-field; 
	height:4.2rem;
	}
.form-label-title,
label {
	font: var(--head4);
	font-size:85%;
	color:var(gray2);
	text-align:right;
	}
label {
	color:var(--gray7);
	padding:calc(1.5cap + 0.2rem) 0 0 0;
	}
input[type=text],
input[type=email],
input[type=tel] {
	width:calc(100% - 1ch);
	height:4.8rem;
	font: var(--sans-serif-body);
	color:var(--gray7);
	display: inline-block;
	appearance: none;
	background:transparent;
	/*top:calc(4.8rem - 1cap);*/
	padding:calc(1.5cap + 0.2rem) 0 0 0;
	left:1ch;
	}
input[type=text],
input[type=email] {
	border-bottom:0.1rem solid var(--gray7);
	border-radius:0;
	}

input[type=tel] {
	border-bottom:0.1rem solid transparent;
	border-radius:0;
	}
input[type=text]:user-invalid,
input[type=email]:user-invalid,
input[type=tel]:user-invalid {
	color:var(--gold4);
	background:var(--white-deg45);
	border-bottom: 0.6rem solid var(--gold4);
	border-radius:0;
	}

/* begin ++++++++  FORM ACCORDION ++++++++++++ */
textarea.message,
#result {
	min-width:0;
	min-height:0;
	font: var(--head3-script);
	color:var(--gray7);	
	text-align:center;
	display:none;
	}
#result {
	width:100%;
	min-height:0;
	display:inline-block;
	position:absolute;
	top:100%;left:0;
	padding:4vh 0 0 2vw;
	z-index:2;
	}
textarea {
	width:calc(100% - 1.6rem);
	resize: vertical;
	min-height:4.2rem;
	max-height:calc(4.2rem * 4);
	background:var(--gray2);
	font: var(--sans-serif-body);
	appearance: none;
	color:var(--white);
	padding:0.9rem 1.8rem;
	z-index:2;
	}
textarea::placeholder,
input[type=email]::placeholder,
input[type=text]::placeholder,
input[type=tel]::placeholder {
	font: var(--sans-serif-body);
	color:var(--gray6);
	}

@-webkit-keyframes move {
	0%    {
	-webkit-transform: scale(0);
	}
	100%  {
	-webkit-transform: scale(1);
	}
}
@-webkit-keyframes reveal {
	0%    {
	opacity: 0;
	}
	100%  {
	opacity:1;
	}
}
@keyframes move {
	0%    {
	transform: scale(0);
	}
	100%  {
	transform: scale(1);
	}
}
@keyframes reveal {
	0%    {
	opacity: 0;
	}
	100%  {
	opacity:1;
	}
}
/* end ++++++++  FORM ACCORDION ++++++++++++ */
/* begin +++++++++++ SUBMIT AND RESET BUTTONS +++++ */

.form-submit {
	grid-area:submit-form;
	top:0.4rem;
	}
.form-reset {
	grid-area:reset-form;
	top:0.6rem;
	}
.form-reset,
.form-reset::after,
.form-submit,
.form-submit::before,
.form-submit::after,
.form-submit:disabled::before,
.form-submit:disabled::after {
	width:calc(100% - 1ch);
	border-radius:0;
	left:1ch;
	}
.form-submit,
input[type=submit]:hover,
input[type=submit]:active,
input[type=submit]:focus,
.form-reset,
input[type=reset]:hover,
input[type=reset]:active,
input[type=reset]:focus {
	cursor:pointer;
	}
.form-reset::after,
.form-reset:hover::after,
.form-reset:active::after,
.form-reset:focus::after,
.form-submit::before,
.form-submit:hover::before,
.form-submit:active::before,
.form-submit:focus::before,
.form-submit::after,
.form-submit:hover::after,
.form-submit:active::after,
.form-submit:focus::after {
	content:"";
	height:0.2rem;
	background:var(--AB-border);
	position:absolute;
	}
.form-submit::after,
.form-submit:hover::after,
.form-submit:active::after,
.form-submit:focus::after,
.form-reset::after,
.form-reset:hover::after,
.form-reset:active::after,
.form-reset:focus::after {
	top:9.0vh;
	}
.form-submit::before,
.form-submit:hover::before,
.form-submit:active::before,
.form-submit:focus::before {
	top:-0.2rem;
	}

.form-submit:disabled::before,
.form-submit:disabled::after,
.form-submit::before,
.form-submit::after,
.form-reset::after {
	transform:rotate(180deg);
	}
.form-submit:hover::before,
.form-submit:active::before,
.form-submit:focus::before,
.form-submit:hover::after,
.form-submit:active::after,
.form-submit:focus::after,
.form-reset:hover::after,
.form-reset:active::after,
.form-reset:focus::after {
	transform:rotate(0deg);
	}
input[type=submit],
input[type=reset] {
	width: 100%;
	height:9.0vh;
	font: var(--head4);
	text-align:right;
	padding:0.3rem 2.5rem 0;
	}
input[type=submit] {
	background:var(--mintT7-deg270);
	color: var(--mint2);
	z-index:2;
	}
input[type=submit]:disabled,
input[type=submit]:hover:disabled,
input[type=submit]:active:disabled,
input[type=submit]:focus:disabled,
input[type=reset] {
	color: var(--gray8);
	background:var(--grayT5-deg270);
	border-radius:0;
	}
input[type=submit]:disabled,
input[type=submit]:hover:disabled,
input[type=submit]:active:disabled,
input[type=submit]:focus:disabled {
	color: var(--gray6);
	cursor: default;
	}
input[type=submit]:hover,
input[type=submit]:active,
input[type=submit]:focus,
input[type=reset]:hover,
input[type=reset]:active,
input[type=reset]:focus {
	background:var(--goldT4-deg270);
	border-radius:0;
	color: var(--gold3);
	}
/* end +++++++++++ SUBMIT AND RESET BUTTONS +++++ */
/* end +++++++++++ FORM FIELDS */

/* begin ++++++++ THUMBNAIL MENU */
.thumbnail-wrapper {
	width:calc(100vw - 0.6rem);
	min-height:70svh;
	max-height:80vmax;
	height:70vmax;
	top:0;left:0.9rem;
	display:flex;
	flex-flow:row nowrap;
	align-items:flex-start;
	}
.thumbnail-menu {
	width: 60%;
	top:3vh;left:calc(45% + 0.9rem);
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	align-content:stretch;
	flex:0 0 60%;
	gap:0 0.3rem;
	order:2;
	}
.thumb,
.thumb:hover, 
.thumb:active {
	min-width:0;
	flex:0 0 calc(33% - 2.6rem);
	&:hover::before,
	&:active::before,
	&:hover::after,
	&:active::after {
		background-image:none;
		visibility:hidden;
		}
	}
.thumb-menu-title,
.text-title {
	width: calc(40% - 0.9rem);
	min-height:0;
	left:0.45rem;
	top:calc(50vh - .5ex);
	flex:0 0 40%;
	position:fixed;
	order:1;
	}
.title {
	width:100%;
	left:50%;
	transform:translateX(-52.5%);
	}
.about-title {
	/*width:40vw;*/
	width:40%;
	left:0;
	transform:translateX(0);
	position:fixed;
	top:calc(51% - 1ex);
	}

.title > h3 {
	width:100%;
	font: var(--head3);
	font-size:4vw;
	margin:0 auto;
	}
.fine-art,
.illustration,
.design,
.about {
	width:calc(100% - 0.6rem);
	text-align: center;
	}
.fine-art,
.illustration,
.design {
	left:calc(50% - 5vw);
	transform:translateX(0);
	white-space:pre-line;
	}
.about {
	/*left:calc(25vw - 0.6rem);
	transform:translateX(-20vw);*/
	font: var(--head2);
	left:calc(40% - 5vw);
	transform:translateX(-23%);
	}
.fine-art::before {
	content:"Fine Art";
	}
.illustration::before {
	content:"Illustration";
	}
.design::before {
	content:"Design";
	}
.fine-art::after,
.illustration::after,
.design::after,
.about::after {
	content:attr(modifier);
	width:100%;
	font: var(--head3-script);
	line-height:0.80;
	display:block; 
	}
.fine-art::after,
.illustration::after,
.design::after {
	font-size:5vw;
	margin-left:-0.6rem;
	}
.about::after {
	font-size:7.0vw;
	}


/* end ++++++++ THUMBNAIL MENU */
/* begin +++++++++++++++ SAMPLE PAGES ++++++ */
.expand {
	width:100%;
	}
.sample-container {
	width:100vw;
	top:0;
	/*padding-right:10vw;
	padding-left:calc(20vw + 0.9rem);*/
	display:flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	}
figure.sample {
	width:calc(57% - 1ch);
	top:2.0rem;left:calc(57% - 1ch);
	& > figcaption {
	font: var(--body);
	display:block;
	}
}

/* begin ++++++++++nSAMPLE ADJUSTMENTS ++++++ */

.wide,
.medium,
.narrow,
.narrowest,
.portfolio-image,
.sample-description {
	transform: translateY(-50%);
	transform: translateX(0);
	}
/* WIDE and STANDARD */
.wide,
.portfolio-image,
.sample-description {
	width:100%;
	left:0;
	}
.portfolio-image {
	/*max-width:100%;*/
	height:auto;
	border:0.2rem solid var(--gray6);
	object-fit:contain;
	display:inline-block;
	}
/* MEDIUM */
.medium {
	width:95%;
	left:2.5%;
	}
/* NARROW */
.narrow {
	width:85%;
	left:7.5%;
	}
/* NARROWEST */
.narrowest {
	width:75%;
	left:12.5%;
	}
/* end ++++++++++nSAMPLE ADJUSTMENTS ++++++ */
.text,
.text-note {
	line-height:1.2;
	max-width:calc(100% - 2.3rem);
	}
.text-note,
.text:last-of-type {
	padding-bottom:1.0rem;	
	}
.text {
	margin:1.6rem 0 0 0;
	}
.text-note {
	margin:2.3rem 0 0 0;
	}

/* end +++++++++++++++ SAMPLE PAGES ++++++ */
} 
/* end +++++++++ MOBILE LANDSCAPE ++++++++++++ */
