@charset "UTF-8";
/* CSS Document */
:root {
	--printsRed: rgba(168,8,11,1.00);
    --printsBuyButtonBackground: rgba(242,242,242,1.00);
	--printsInactiveButtonBackground: rgba(242,242,242,0.65);
    --printsBuyButtonHover: rgba(217,217,217,1.00);
    --printsBuyButtonActive: rgba(36,36,36,1.00);
    --printsLinkHoverColor: rgba(135,135,135,1.00);
    --printsImageStandardSize: 720px;
    --printsImageLargeSize: 1080px;
    --printsGridMaxImageSize: 350px;
    --printsImgBorder: none;
}

@media screen and (prefers-color-scheme: dark) {
	:root {
        --printsRed: rgba(197,88,90,1.00);
        --printsBuyButtonBackground: rgba(68,68,68,1.00);
		--printsInactiveButtonBackground: rgba(68,68,68,0.65);
        --printsBuyButtonHover: rgba(95,95,95,1.00);
        --printsBuyButtonActive: rgba(242,242,242,1.00);
        --printsLinkHoverColor: rgba(255,255,255,1.00);
        --printsImgBorder: 2px solid rgba(28,28,28,1.00);
    }
}

/* PRINTS MINI SITE */
.page-prints #noJavascript {
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 999999;
    left:0px;
    top:0px;
    box-sizing: border-box;
    display:flex;
    justify-content: center;
    align-items: center;
}

.page-prints #noJavascript .completeNoFunction {
    display: block;
}

.page-prints #noJavascript .partialNoFunction { 
    display: none;
}

#printsWrapper {
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding-left: var(--pagePaddingSide);
    padding-right: var(--pagePaddingSide);
    font-size: 1.1rem;
}

#printsContent a.blockLink {
    border: none;
}

#printsContent a.bold {
    font-weight: var(--fontBoldWeight);
}

#printsWrapper a:hover, #printsWrapper a:active {
    color: var(--printsLinkHoverColor);
    border-color: var(--printsLinkHoverColor);
}

#printsWrapper a.currentPage {
    font-weight: var(--fontBolderWeight);
    border-color: transparent;
}

#printsWrapper a.currentPage:hover, #printsWrapper a.currentPage:active {
    color: var(--linkColor);
    border-color: transparent;
}

#printsWrapper input[type=submit] {
    font-weight: var(--fontBolderWeight);
    font-family: var(--siteFont);
    color: var(--siteColor);
    background: var(--printsBuyButtonBackground);
    border: none;
    outline: none;
    border-radius: 8px;
    padding: 0.65em;
    padding-left: 1.15em;
    padding-right: 1.15em;
    text-align: center;
    transition: background var(--transition), color var(--transition), transform var(--transition);
    -webkit-transition: background var(--transition), color var(--transition), transform var(--transition);
    -moz-transition: background var(--transition), color var(--transition), transform var(--transition);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-appearance:none;  
    cursor: pointer;
    font-size: 1rem;
	transform: scale(1);
}

#printsWrapper input[type=submit]:hover {
    background: var(--printsBuyButtonHover);
    color: var(--linkColor);
	transform: scale(1.025);
}

#printsWrapper input[type=submit]:active {
    background: var(--printsBuyButtonActive);
    color: var(--printsBuyButtonBackground);
	transform: scale(1.07);
}

#printsWrapper input[type=submit]:disabled:active, #printsWrapper input[type=submit]:disabled:hover {
    color: var(--siteColor);
    background: var(--printsBuyButtonBackground);
    cursor: not-allowed;
}

#printsContent {
    max-width: calc(1.3*var(--siteContentWidth));
    padding-top: calc(var(--pagePaddingTop) + env(safe-area-inset-top));
    padding-bottom: calc(2em + env(safe-area-inset-bottom));
    width: 100%;
    min-height: 100%;
}

#printsWrapper .footer {
    padding-top: 2.5em;
    margin-top: 2.5em;
    font-size: 0.8rem;
    border-top: 1px solid var(--printsBuyButtonBackground);
}

#printsWrapper .footer .copyright {
    margin-bottom: 1em;
}

.page-prints img {
    pointer-events: none;
    -webkit-touch-callout: none;
    touch-callout: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#printsContent .siteTitleBlock {
    margin-top: 1.4rem;
    margin-bottom: 1.2rem;
    font-weight: var(--fontBoldWeight);
    padding-right: 40px;
}

#printsContent .siteTitleBlock a {
    color: var(--siteColor);
    border-bottom: none;
    cursor: pointer;
    text-decoration: none;
}

#printsContent .siteTitleBlock:hover a, #printsContent .siteTitleBlock:active a {
    color: var(--siteColor);
    text-decoration: none;
}

#printsContent .siteTitleBlock .title {
    margin-bottom: 0.9rem;
    font-weight: var(--fontHeavierWeight);
    text-transform: uppercase;
    letter-spacing: 0.35rem;
    font-size: 1.4rem;
    width: 115px;
    line-height: 1.7rem;
}

#printsReturnLink {
    font-size: 0.8em;
    font-weight: var(--fontBoldWeight);
}

#printsWrapper #headerInfoBlock {
    width: 100%;
    padding-top: 2em;
    padding-bottom: 4em;
}

#printsWrapper #headerInfoBlock > a {
    border: none;
    color: var(--siteColor);
}

#printsWrapper #headerInfoBlock > a:hover {
    color: var(--siteColor);
}

#printsWrapper #headerInfoBlock .title  {
    font-size: 2.4rem;
    font-weight: var(--fontHeavierWeight);
    letter-spacing: 0.01em;
}

#printsWrapper #headerInfoBlock .description {
    font-size: 1.2em;
    padding-top: 1rem;
}

#printsWrapper #headerInfoBlock .descriptionSmall {
    font-size: 0.9em;
    padding-top: 0.5em;
}

#printsWrapper #headerInfoBlock .descriptionSmall:last-child {
    font-size: 0.95em;
    padding-top: 1.2em;
}

#printsWrapper #headerInfoBlock .descriptionSmall a + a {
    margin-left: 2.5em;
}

#printsWrapper .stripeWordmarkImg {
    display: inline;
    height: 1.6em;
    position:relative;
    top: 0.51em;
    margin-left: -0.25em;
    margin-right: -0.3em;
    opacity:0.9;
}

#printsContent .backToIndex {
    margin-top: -1rem;
    padding-bottom: 1rem;
    font-weight: var(--fontBoldWeight);
    font-size: 0.95em;
}

#printsContent .noPrints {
    font-size: 1.2em;
    font-style: italic;
    margin-bottom: 3em;
}

#printsIndex {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(var(--printsGridMaxImageSize),1fr));
    column-gap: 3.5rem;
    row-gap: 4.5rem; /* Must update in a:first-child calc below*/
    width: 100%;
    justify-content: stretch;
    place-items: stretch;
    justify-items: stretch;
    align-items: stretch;
}

#printsContent .print {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#printsContent a.singlePrintLink {
    border: none;
    display: flex;
    flex-direction: column;
    flex-grow: 10;
}

#printsContent .print.hover a.singlePrintLink, #printsContent .print.hover a.singlePrintLink .info .price {
    color: var(--printsLinkHoverColor);
    border-color: var(--printsLinkHoverColor);
}

/*#printsIndex .print > a:first-child {
    display: block;
    width: 100%;
    height: calc((var(--siteContentWidth) / 3) - (2.5rem*2));
    min-height: 265px;
    padding-bottom: 1rem;
}*/

#printsContent .headerImage {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    padding-bottom: 0px;
}

#printsIndex .headerImage {
    cursor: pointer;
}

#printsContent .headerImage > a {
    padding-bottom: 1.5rem;
    border-bottom: 0px;
}

#printsContent .print .headerImage img {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    -moz-transition: opacity var(--transition);
    -webkit-transition: opacity var(--transition);
	transition: opacity var(--transition);
    border: var(--printsImgBorder);
}

#printsContent a.singlePrintLink:hover .headerImage img, #printsContent .print.hover .headerImage img {
    opacity: 0.9;
}

#printsContent .print .info {
    margin-top: 1em;
}

#printsContent .print .info .titleWrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    margin-bottom: 0.5em;
}

#printsContent .print .info .title {
    font-weight: var(--fontBoldWeight);
    letter-spacing: 0.07em;
    font-size: 1.1em;
}

#printsContent .print .info .title .size {
    font-weight: var(--fontBoldWeight);
}

#printsContent .print .info .title .size::before {
    content: "  ";
}

#printsContent .print .info .printRun {
    font-size: 0.9em;
    color: var(--siteColorLight);
}

#printsContent .print .info .moreLink {
    font-weight: var(--fontBoldWeight);
    font-size: 1.4em;
    opacity: 0.8;
    display: none;
}

#printsContent .print .linkedPrints {
    margin-top: 0.5em;
    font-size: 0.9em;
}

#printsContent .print .info .price {
    font-weight: var(--fontBoldWeight);
    letter-spacing: 0.15em;
    margin-top: 1.5em;
    color: var(--siteColor);
    font-size: 0.95em;
    transition: color var(--transition);
    -moz-transition: color var(--transition);
    -webkit-transition: color var(--transition);
}

#printsContent a:hover .price {
    color: var(--siteColor);
}

#printsContent .print form {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	margin: 0px;
	padding: 0px;
}

#printsContent .print .frame {
	margin-top: 1.85em;
	margin-bottom: 0.25em;
}

#printsContent .print .frame input {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	width: 0px;
	height: 0px;
	padding: 0px;
	margin: 0px;
}

#printsContent .print .frame label {
	display: inline-block;
	opacity: 0.72;
	font-weight: var(--fontStdWeight);
	cursor: pointer;
	border-radius: 5px;
	padding: 0.6em;
	padding-right: 0.65em;
	margin-bottom: 0.6em;
	margin-left: -1px;
	border: 1px solid transparent;
	background: var(--printsInactiveButtonBackground);
	-moz-transition: background var(--transition), opacity var(--transition), transform var(--transition);
	-webkit-transition: background var(--transition), opacity var(--transition), transform var(--transition);
	transition: background var(--transition), opacity var(--transition), transform var(--transition);
}

#printsContent .print .frame label:last-of-type {
	margin-bottom: 0px;
}

#printsContent .print .frame label .frameSubtitle {
	font-size: 0.9em;
	display: block;
}

#printsContent .print .frame input:checked + label {
	font-weight: var(--fontBoldWeight);
	opacity: 1;
	background: var(--printsBuyButtonBackground);
	border: 1px solid var(--printsBuyButtonHover);
	cursor: default;
}

#printsContent .print .frame label:hover {
	opacity: 1;
	background: var(--printsBuyButtonBackground);
	transform: scale(1.01);
}

#printsContent .print .frame input:checked + label:hover {
	transform: scale(1);
	background: var(--printsBuyButtonBackground);
}

#printsContent .print .buyWrapper {
    font-size: 0.9em;
    display: flex;
    flex-direction: row;
    margin-top: 1.5em;
    align-items: center;
    justify-content: space-between;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#printsContent .print .buyWrapper.soldOut {
    justify-content: flex-start;
}

#printsContent .print .buyWrapper .buyWrapperInner {
    display: flex;
    align-items: center;
    flex-direction: row;
}

#printsContent .print .buyWrapper .buyButton {
    margin-right: 1.5em;
}

#printsContent .singlePageContent .print .buyWrapper .buyButton {
	font-size: 1.1rem;
}

#printsContent .print .buyWrapper .buyButton.soldOut {
    display: none;
    opacity: 0.6;
    color: var(--siteColorLight);
    cursor: default;
}

#printsContent .print .buyWrapper .buyButton.inCartSoldOut {
    opacity: 0.5;
    color: var(--siteColorLight);
    cursor: default;
}

#printsContent .print .buyWrapper .buyButton.inCartSoldOut:hover {
    background: var(--printsBuyButtonBackground);
    color: var(--siteColorLight);
}

#printsContent .print .buyWrapper .requestMore {
    font-weight: var(--fontBoldWeight);
    margin-left: 1.5em;
    font-size: 0.95em;
}

#printsContent .print .inCart {
    font-weight: var(--fontBolderWeight);
}

#printsContent .print .stock > div {
    border-radius: 4px;
    padding-top: 0.6em;
    padding-bottom: 0.6em;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#printsContent .print .stock .available {
    display: none;
}

#printsContent .print .stock .almostOut {
    opacity: 0.85;
    color: var(--printsRed);
    font-weight: var(--fontBoldWeight);
}

#printsContent .print .stock .soldOut {
    color: var(--printsRed);
    font-weight: var(--fontBolderWeight);
    opacity: 0.85;
}

@media all and (max-width:900px) {
    #printsIndex {
        row-gap: 5rem;
    }
    
    #printsWrapper #headerInfoBlock {
        padding-top: 0.5rem;
    }
    
    #printsContent .siteTitleBlock .title {
        font-size: 0.9rem;
        letter-spacing: 0.3rem;
        line-height: 1.5rem;
    }
}

@media all and (max-width:585px) {
    #printsIndex {
        grid-template-columns: 1fr;
    }
    
    #printsContent .print .buyWrapper .buyButton {
        font-size: 1.1em;
    }
}

/* Single print page */ 
#printsContent .singlePageContent {
    margin-top: 2rem;
    padding-bottom: 0px;
}

#printsContent .singlePageContent .print {
    flex-direction: row;
    width: 100%;
}

#printsContent .singlePageContent .print .headerImage {
    flex-direction: column;
    width: 100%;
    max-width: var(--printsImageStandardSize);
}

#printsContent .singlePageContent .print .headerImage img {
    display: block;
    height: auto;
    width: 100%;
    max-width: var(--printsImageStandardSize);
}

#printsContent .singlePageContent .print .headerImage img + img {
    margin-top: 1.6rem;
}

#printsContent .singlePageContent .print .headerImage .openLargeImageLink {
    cursor: zoom-in;
	transition: transform var(--transition);
    width: 100%; /* Required for image thumbnail loading */
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    tap-highlight-color: rgba(0,0,0,0);
}

#printsContent .singlePageContent .print .headerImage .openLargeImageLink:hover {
	transform: scale(1.01);
}

#printsContent .singlePageContent .print .info {
    margin-top: 0px;
}

#printsContent .singlePageContent .print .textWrapper {
    width: 25%;
    margin-left: 2rem;
    flex-grow: 2;
    flex-shrink: 0;
}

#printsContent .singlePageContent .print .info .title {
    font-size: 1.2em;
}

#printsContent .singlePageContent .print .info .title .size {
}

#printsContent .singlePageContent .print .info .printRun {
    font-size: unset;
    color: var(--siteColor);
    margin-bottom: 1.8rem;
}

#printsContent .singlePageContent .print .info .description {
    line-height: 150%;
}

#printsContent .singlePageContent .print .info .description strong {
	font-weight: var(--fontBoldWeight);
}

#printsContent .singlePageContent .print .linkedPrints {
    margin-top: 2.85em;
    font-weight: var(--fontBoldWeight);
}

#printsContent .singlePageContent .print .info .price {
    margin-top: 1.8rem;
}

#printsContent .singlePageContent a:hover .price {
}

#printsContent .singlePageContent .print .buyWrapper {
    margin-top: 2rem;
}

#printsContent .singlePageContent .print .buyWrapper.soldOut {
    font-size: 1em;
}

#printsContent .singlePageContent .print .buyWrapper .requestMore {
    margin-left: 1.6em;
    font-size: 0.9em;
}

#printsContent .singlePageContent .print .buyWrapper .stock {
}

#printsContent .thumbnailWrap {
    height: var(--printsGridMaxImageSize);
    margin-bottom: 0px;
    background: var(--printsBuyButtonBackground);
    opacity: 0.7;
}

#printsContent .singlePageContent .thumbnailWrap {
    height: var(--printsImageStandardSize);
}

#printsContent .thumbnailWrap.loaded {
    margin-bottom: 0px;
    background: none;
    opacity: 1;
}

@media all and (max-width: 900px) {    
    #printsContent .singlePageContent .print {
        flex-direction: column-reverse;
        margin-bottom: 3rem;
    }
    
    #printsContent .singlePageContent .print .textWrapper {
        margin-left: 0px;
        margin-bottom: 3rem;
        width: 100%;
        max-width: var(--printsImageStandardSize);
    }
}

@media all and (max-width: 585px) {
    #printsContent.single #headerInfoBlock .description {
        display: none;
    }
    
    #printsContent.single #headerInfoBlock .descriptionSmall:not(.navLinks) {
        display: none;
    }
    
    #printsContent .singlePageContent .print .info .title {
        font-size: 1.5em;
    }
}

/* Cart page */
#cartWrapper .cartList {
    margin-bottom: 2em;
    border-top: 1px solid var(--printsBuyButtonBackground);
    border-bottom: 1px solid var(--printsBuyButtonBackground);
    padding-top: 1.2em;
    padding-bottom: 1.2em;
}

#cartWrapper .singleLineItem {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 2em;
    margin-bottom: 2em;
}

#cartWrapper .singleLineItem:last-child {
    margin-bottom: 0px;
}

#cartWrapper .singleLineItem .image {
    width: 60%;
    max-width: 200px;
}

#cartWrapper .singleLineItem .image .thumbnailWrap {
    height: calc(0.66 * 200px);
}

#cartWrapper .singleLineItem .image .thumbnailWrap img {
    border: var(--printsImgBorder);
    box-sizing: border-box;
}

#cartWrapper .singleLineItem .info {
    width: 100%;
}

#cartWrapper .info .title a {
    font-weight: var(--fontBoldWeight);
    font-size: 1.2rem;
    letter-spacing: 0.05rem;
    text-decoration: none;
    border-bottom: none;
}

#cartWrapper .info .title a .size {
    font-weight: var(--fontBoldWeight);
    font-size: 1.1rem;
    letter-spacing: 0.1rem;
}

#cartWrapper .info .title a .size::before {
    content: "  ";
}

#cartWrapper .image:hover + .info .title a {
    color: var(--printsLinkHoverColor);
}

#cartWrapper .info .titleWrapper {
    margin-bottom: 0.5em;
}

#cartWrapper .info .printRun {
    margin-bottom: 1.5em;
    font-size: 0.9em;
}

#cartWrapper .frame {
	margin-bottom: 1.5em;
	font-size: 0.9em;
}

#cartWrapper .frame {
	font-weight: var(--fontBoldWeight);
}

#cartWrapper .frame a {
	text-decoration: none;
	border-bottom: none;
}

#cartWrapper .frame .frameSubtitle {
	font-size: 0.9em;
	display: block;
}

#cartWrapper .info .quantity input[type=text] {
    background: var(--siteBackground);
    color: var(--siteColor);
    width: 2.1em;
    text-align: center;
    font-family: var(--siteFont);
    border: 1px solid var(--linkBorderColor);
    outline: none;
    border-radius: 3px;
    padding: 0.1em;
    padding-bottom: 0.14em;
    margin-left: 0.5em;
    margin-right: 0.9em;
    margin-bottom: 0.6rem;
    font-weight: var(--fontBoldWeight);
}

#cartWrapper .info .quantity input[type=text].changeToMax {
    font-weight: var(--fontHeavyWeight);
    color: var(--printsRed);
}

#cartWrapper .info .quantity input[type=text].notSaved {
    font-weight: var(--fontStdWeight);
    background: var(--printsBuyButtonBackground);
    opacity: 0.9;
}

#cartWrapper .info .quantity .formHeader {
    font-size: 0.9em;
}

#cartWrapper .info .quantity .updateCart {
    display: none;
    background: none;
    padding: 0px;
    color: var(--linkColor);
    text-decoration: none;
    transition: color var(--transition), border-color var(--transition);
    -webkit-transition: color var(--transition), border-color var(--transition);
    -moz-transition: color var(--transition), border-color var(--transition);
    border-bottom: 1px solid;
    border-color: var(--linkBorderColor);
    border-radius: 0px;
    font-weight: var(--fontBolderWeight);
    margin-right: 0.9em;
    font-size: 0.9em;
}

#cartWrapper .info .quantity .updateCart:hover, #cartWrapper .info .quantity .updateCart:active {
    color: var(--printsLinkHoverColor);
    text-decoration: none;
    border-color: var(--printsLinkHoverColor);
}

#cartWrapper .info .quantity .quantityWarning {
    display: none;
    font-size: 0.9em;
    font-weight: var(--fontBoldWeight);
    color: var(--printsRed);
}

#cartWrapper .info .quantity .quantityWarning.permanentWarning {
    display: inline-block;
}

#cartWrapper .info .lineTotal {
    font-weight: var(--fontBoldWeight);
    letter-spacing: 0.1rem;
    margin-top: 0.9rem;
    color: var(--siteColor);
}

#cartWrapper  .delete input[type=submit] {
    background: none;
    padding: 0px;
    color: var(--linkColor);
    text-decoration: none;
    transition: color var(--transition), border-color var(--transition);
    -webkit-transition: color var(--transition), border-color var(--transition);
    -moz-transition: color var(--transition), border-color var(--transition);
    border-bottom: 1px solid;
    border-color: var(--linkBorderColor);
    border-radius: 0px;
    font-weight: var(--fontBoldWeight);
}

#cartWrapper  .delete input[type=submit]:hover, #cartWrapper  .delete input[type=submit]:active {
    color: var(--printsRed);
    text-decoration: none;
    border-color: var(--printsRed);
}

#cartWrapper .totals {
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    margin-top: 2rem;
    margin-bottom: 2em;
}


#cartWrapper .totals > * {
    width: 20rem;
    max-width: 100%;
}

#cartWrapper .totals .subTotal {
    font-weight: var(--fontBoldWeight);
    letter-spacing: 0.1rem;
    color: var(--siteColor);
    display: flex;
    align-content: center;
    justify-content: flex-end;
    column-gap: 2em;
}

#cartWrapper .totals .subTotal .value {
    width: 6em;
    text-align: right;
}

#cartWrapper .totals .subTotal .value .number {
    margin-left: 0.2em;
}

#cartWrapper .totals .subTotal .value .currency {
    margin-left: 0.5em;
    font-size: 0.85em;
}

#cartWrapper .totals .subTotal .value > span:first-child {
    margin-left: 0px;
}

#cartWrapper .totals .shipping {
    margin-top: 0.8em;
    font-size: 0.9em;
    font-style: italic;
    text-align: right;
}

#cartWrapper .checkoutCheckboxWrapper {
    text-align: right;
    margin-top: 2rem;
    margin-bottom: 2em;
}

#cartWrapper .cartButtons {
    text-align: right;
    font-size: 1rem;
}

#cartWrapper .cartButtons > * {
    margin-left: 2em;
}

#cartWrapper .cartButtons .checkoutButton {
    padding: 0.65em;
    padding-bottom: 0.6em;
    padding-left: 1.45em;
    padding-right: 1.45em;
    font-size: 1.1em;
}

#cartWrapper .cartButtons .checkoutButton:disabled {
    opacity: 0.4;
}

.backToCartButton {
    font-weight: var(--fontBolderWeight);
    font-family: var(--siteFont);
    background: var(--printsBuyButtonBackground);
    border: none;
    outline: none;
    border-radius: 8px;
    text-decoration: none;
    padding: 0.65em;
    padding-left: 1.5em;
    padding-right: 1.5em;
    text-align: center;
    transition: background var(--transition), color var(--transition);
    -webkit-transition: background var(--transition), color var(--transition);
    -moz-transition: background var(--transition), color var(--transition);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
    font-size: 1rem;
}

.backToCartButton:hover {
    background: var(--printsBuyButtonHover);
    color: var(--linkColor);
}

.backToCartButton:active {
    background: var(--printsBuyButtonActive);
}

@media all and (max-width: 585px) {
    #cartWrapper .info .titleWrapper {
        margin-bottom: 0.2em;
    }

    #cartWrapper .info .printRun {
        margin-bottom: 1em;
    }
    
    #cartWrapper .info .quantity  {
        position: relative;
    }
    
    #cartWrapper .info .quantity .formHeader {
        font-size: 1em;
    }

    #cartWrapper .info .quantity input[type=text] {
        font-size: 1.2rem;
    }
    
    #cartWrapper .singleLineItem {
        flex-wrap: wrap;
        align-items: flex-start;
        column-gap: 1.5em;
        margin-bottom: 3.2em;
    }
    
    #cartWrapper .singleLineItem .image {
        width: 35%;
        max-width: unset;
    }

    #cartWrapper .singleLineItem .info {
        width: calc(100% - 35% - 1.5em);
    }
    
    #cartWrapper .singleLineItem .delete {
        margin-top: 1em;
    }
    
    #cartWrapper .totals > * {
        width: 100%;
    }
    
    #cartWrapper .totals .subTotal {
        font-size: 1.2em;
    }
    
    #cartWrapper .totals .shipping {
        font-size: 0.75em;
    }
    
    #cartWrapper .info .quantity .quantityWarning {
        position: absolute;
        left: 0px;
        bottom: -0.6rem;
        font-size: 0.8em;
    }
    
    #cartWrapper .info .quantity .quantityWarning.permanentWarning {
        display: block;
    }
}

/* Custom Checkbox */
label.checkbox {
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

label.checkbox .text {
    font-size: 0.95em;
    padding-right: 1.5em;
    text-align: right;
    width: 100%;
}

label.checkbox input[type=checkbox] {
    width: 0%;
    height: 0%;
    position: absolute;
    padding: 0px;
    opacity: 0;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

label.checkbox .customCheckbox {
    display: inline-block;
    /*position:relative;
    top: 6px;*/
    width: 16px;
    height: 16px;
    margin: 2px; /* Checked width/height - unchecked width height */
    background: var(--printsBuyButtonBackground);
    border: 1px solid var(--printsBuyButtonHover);
    border-radius: 5px;
    flex-grow: 0;
    flex-shrink: 0;
    flex-basis: auto;
}

label.checkbox input[type='checkbox']:checked ~ .customCheckbox {
    width: 20px; /* Must update unchecked margin */
    height: 20px; /* Must update unchecked margin */
    margin: 0px;
}

label.checkbox .customCheckbox .customCheckboxInner {
    display: block;
    opacity: 0;
    background: var(--ruleColor);
    border-radius: 3px;
    width: 12px;
    height: 12px; /* Must update in margin */
    margin: calc((16px - 12px) /2);
    transition: opacity 0.08s linear;
    -webkit-transition: opacity 0.08s linear;
    -moz-transition: opacity 0.08s linear;
    box-sizing: border-box;
}

label.checkbox input[type='checkbox']:checked ~ .customCheckbox .customCheckboxInner {
    opacity: 1;
    width: 70%;
    height: 70%; /* Must update in margin */
    margin: calc((20px - (0.7 * 20px)) /2);
}

label.checkbox:hover .customCheckbox .customCheckboxInner {
    opacity: 0.1;
}

label.checkbox:active .customCheckbox .customCheckboxInner {
    opacity: 0.6;
}

label.checkbox input[type='checkbox']:checked ~ .text {
    font-weight: var(--fontBoldWeight);
}

.highlight label.checkbox .customCheckbox {
    border: 2px solid var(--printsRed);
    margin: 1px;
}

.highlight label.checkbox input[type='checkbox']:checked ~ .customCheckbox {
    border: 1px solid var(--printsBuyButtonHover);
    margin: 0px;
}

@media all and (max-width: 585px) { 
    label.checkbox .customCheckbox {
        width: 20px;
        height: 20px;
        margin: 1px;
    }
    
    label.checkbox input[type='checkbox']:checked ~ .customCheckbox {
        width: 22px; /* Must update unchecked margin */
        height: 22px; /* Must update unchecked margin */
        margin: 0px;
    }
    
    label.checkbox input[type='checkbox'] ~ .customCheckbox .customCheckboxInner {
        width: 16px;
        height: 16px; /* Must update in margin */
        margin: 3px;
    }
    
    label.checkbox input[type='checkbox']:checked ~ .customCheckbox .customCheckboxInner {
        width: 16px;
        height: 16px; /* Must update in margin */
        margin: 3px;
    }
    
    label.checkbox:hover .customCheckbox .customCheckboxInner {
        opacity: 0;
    }

    label.checkbox:active .customCheckbox .customCheckboxInner {
        opacity: 0;
    }
    
    label.checkbox:active input[type='checkbox']:checked ~ .customCheckbox .customCheckboxInner, label.checkbox:hover input[type='checkbox']:checked ~ .customCheckbox .customCheckboxInner {
        opacity: 1;
    }
    
    .highlight label.checkbox .customCheckbox {
        margin: 0px;
    }
}

/* After buy */

#printsContent .afterBuy {
    width: 100%;
    max-width: var(--printsImageStandardSize);
}

#printsContent .afterBuy img {
    width: 40%;
    max-width: var(--printsImageStandardSize);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

#printsContent p.title {
    font-weight: var(--fontBolderWeight);
    padding-top: 0.6em;
    padding-bottom: 0.5em;
}

#printsContent p.header {
    font-weight: var(--fontBolderWeight);
    padding-top: 0.5em;
    font-size: 1.5rem;
}

#printsContent p .bold {
    font-weight: var(--fontBoldWeight);
}

#printsContent p.header .bold {
    font-weight: var(--fontBolderWeight);
}


@media all and (max-width: 585px) {
    #printsContent .afterBuy img {
        width: 100%;
        box-sizing: border-box;
    }
    
    #printsContent .afterBuy p.header.mobile {
        font-size: 1.6rem;
        padding-bottom: 0.5em;
        padding-top: 0px;
    }
}

/* Prints Lightbox */

.page-prints .lightbox {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    z-index: 100;
    display: block;
    background: rgba(0,0,0,0.95);
    box-sizing: border-box;
    padding: 1vh;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1;
    transition: opacity var(--transition);
    -webkit-transition: opacity var(--transition);
    -moz-transition: opacity var(--transition);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: zoom-out;
}

.page-prints .lightbox.hidden {
    opacity: 0;
}

.page-prints .lightbox.afterHide {
    display: none;
}

.page-prints .lightbox .lightboxInner {
    position: relative;
    width: 100%;
    height: 100%;
}

.page-prints .lightbox .lightboxClose {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    font-size: 1.4rem;
    position: absolute;
    top: 1vh;
    left: 1vh;
    font-weight: var(--fontHeavierWeight);
    color: rgba(255,255,255,0.75);
    display: block;
    padding: 1em;
    margin: -1em;
    cursor: pointer;
    transition: color var(--transition);
    -webkit-transition: color var(--transition);
    -moz-transition: color var(--transition);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.page-prints .lightbox.lightboxClose:hover, #lightbox .lightboxClose:active {
    color: rgba(255,255,255,1);
}

.page-prints .lightbox .lightboxImg {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%;
    height: 100%;
    object-fit: scale-down;
}

#printsContent .notFound {
    font-weight: var(--fontHeavierWeight);
    margin-top: 3rem;
    margin-bottom: 3rem;
    font-size: 1.5rem;
}

#printsContent .notFound .red {
    color: var(--printsRed);
}

/* Terms of use */
.termsWrapper > div {
    padding-bottom: 2rem;
    margin-bottom: 2.5rem;
    border-bottom: 1px solid var(--printsBuyButtonBackground);
}

.termsWrapper > div:last-child {
    border-bottom: none;
}

.termsWrapper .termsTitle {
    font-weight: var(--fontBoldWeight);
    font-size: 1.4em;
    margin-bottom: 1em;
    border-bottom: none;
}

.termsWrapper .lastUpdated {
    font-weight: var(--fontBoldWeight);
    margin-bottom: 2em;
    border-bottom: none;
}

.termsWrapper .tableOfContents {
    font-weight: var(--fontBoldWeight);
}

.termsWrapper .tableOfContents p {
    margin-bottom: 0.5em;
}

.termsWrapper .subHeader {
    font-weight: var(--fontBoldWeight);
}

.termsWrapper .termsText .subHeader {
    display: block;
    margin-bottom: 0.7em;
}

#printsContent .termsWrapper .termsText p.header {
    font-size: 1.35rem;
}

#printsContent  .termsWrapper .termsText p.header a, #printsContent  .termsWrapper .termsText p.header a:hover, #printsContent  .termsWrapper .termsText p.header a:visited {
    border-bottom: none;
    color: var(--siteColor);
}