/*
 * Shared site density
 *
 * Gives the public-facing site a slightly smaller, denser desktop scale
 * without using CSS zoom or transforms. Mobile reductions are restrained
 * so controls and body copy remain readable.
 */

@media screen and (min-width: 901px) {
	/* Shared archive, classic-page and commerce headers. */
	body.page .entry-header > .entry-title,
	body.archive .archive-title,
	body.error404 .entry-title,
	body .ip-page-hero.ip-page-hero .ip-page-hero__title,
	body.woocommerce-page article.page > .entry-header > .entry-title,
	body.tax-product_tag .woocommerce-products-header__title,
	body.tax-product_cat .woocommerce-products-header__title {
		font-size: 34px;
	}

	body .ip-page-hero.ip-page-hero {
		padding-top: 54px;
		padding-bottom: 50px;
	}

	/* Homepage and primary page titles. */
	.iph-hero h1 {
		font-size: 34px;
	}


	#ipc-contact-title,
	.ipq-title {
		font-size: 31px;
	}


	.ipap-projects__hero-heading h1 {
		font-size: 34px;
	}

	.ip-search-page__hero h1,
	.ipn-single__title {
		font-size: 43px;
	}

	/* Single exhibition and art-fair hero titles. */
	.ipes-exhibition--standard .ipes-hero h1,
	.ipes-exhibition--art-fair .ipes-hero h1 {
		font-size: 31px;
	}

	.ipes-exhibition:not(.ipes-exhibition--standard):not(.ipes-exhibition--art-fair)
	.ipes-hero h1 {
		font-size: 52px;
	}

	/* Single artist and WooCommerce product titles. */
	.ipas-artist__identity h1 {
		font-size: 34px;
	}

	body.single-product div.product .product_title {
		font-size: 25px;
	}

	/* Prominent section headings. */
	.iph-artists__heading .iph-section-title,
	.iph-about__card .iph-section-title {
		font-size: 36px;
	}

	.ipes-feature__copy h2,
	.ipes-content__heading h2 {
		font-size: 26px;
	}

	.ipes-fair-info__heading h2,
	.ipes-fair-about__heading h2,
	.ipes-fair-editorial__heading h2,
	.ipes-fair-artists__header h2,
	.ipes-fair-works__headings h2 {
		font-size: 27px;
	}

	.ipq-content > h2 {
		font-size: 31px;
	}

	/* Ordinary editor content follows the same modest reduction. */
	.entry-content {
		font-size: 90%;
	}

	/* Slightly tighter vertical rhythm provides the 90%-view feel. */
	.entry-content > h1,
	.entry-content > h2,
	.entry-content > h3,
	.entry-content > h4 {
		margin-top: 0.9em;
		margin-bottom: 0.55em;
	}
}

@media screen and (min-width: 601px) and (max-width: 900px) {
	body.page .entry-header > .entry-title,
	body.archive .archive-title,
	body.error404 .entry-title,
	body .ip-page-hero.ip-page-hero .ip-page-hero__title,
	body.woocommerce-page article.page > .entry-header > .entry-title,
	body.tax-product_tag .woocommerce-products-header__title,
	body.tax-product_cat .woocommerce-products-header__title {
		font-size: 36px;
	}

	.ipes-exhibition--standard .ipes-hero h1,
	.ipes-exhibition--art-fair .ipes-hero h1 {
		font-size: 28px;
	}

	.ipq-title {
		font-size: 29px;
	}

	.ip-search-page__hero h1,
	.ipn-single__title {
		font-size: 36px;
	}
}

@media screen and (max-width: 600px) {
	body.page .entry-header > .entry-title,
	body.archive .archive-title,
	body.error404 .entry-title,
	body .ip-page-hero.ip-page-hero .ip-page-hero__title,
	body.woocommerce-page article.page > .entry-header > .entry-title,
	body.tax-product_tag .woocommerce-products-header__title,
	body.tax-product_cat .woocommerce-products-header__title {
		font-size: 27px;
	}

	.ipes-exhibition--standard .ipes-hero h1,
	.ipes-exhibition--art-fair .ipes-hero h1 {
		font-size: 24px;
	}

	.ipq-title,
	.ipq-page--gallery .ipq-title {
		font-size: 23px;
	}

	.ip-search-page__hero h1,
	.ipn-single__title {
		font-size: 30px;
	}


	.ipap-projects__hero-heading h1 {
		font-size: 27px;
	}
}
/* =========================================================
   Temporary whole-site 90% appearance

   This approximates browser zoom through real typography,
   container and spacing values. It does not use zoom,
   transforms or visual scaling.
   ========================================================= */

@media screen and (min-width: 901px) {
	body {
		font-size: 13.5px;
	}

	/*
	 * Page-specific styles commonly use fixed pixel sizes.
	 * These explicit rules make the copy reduction visible.
	 * Links inherit from their surrounding text.
	 */
	main p,
	main li,
	main address,
	main blockquote,
	main td,
	main th,
	main label,
	#main p,
	#main li,
	#main address,
	#main blockquote,
	#main td,
	#main th,
	#main label {
		font-size: 13.5px !important;
	}

	main figcaption,
	main .wp-element-caption,
	#main figcaption,
	#main .wp-element-caption {
		font-size: 12px !important;
	}

	.ip-site-header__menu > li > a,
	.ip-site-header__actions button,
	.ip-site-header__search-panel input,
	.main-navigation a,
	button,
	input[type="button"],
	input[type="submit"],
	input[type="reset"],
	.button,
	.btn {
		font-size: 90%;
	}

	.ip-site-header__inner,
	.iph-home-shell {
		max-width: 1224px;
	}

	.ip-page-hero__shell,
	.ipar-artists__shell,
	.ipex-exhibitions__shell {
		max-width: 1188px;
	}

	.ipa-shell,
	.ipc-contact__shell,
	.ip-search-page__shell,
	.ipes-shell,
	.ipas-artist__shell,
	.ipn-single__shell,
	.ipq-shell,
	.ipap-projects__shell,
	.ipn-magazine {
		max-width: 1062px;
	}

	body.woocommerce #primary,
	body.woocommerce-page #primary,
	body.woocommerce .woocommerce,
	body.woocommerce-page .woocommerce {
		max-width: 1062px;
	}

	body .ip-page-hero.ip-page-hero {
		padding-top: 49px;
		padding-bottom: 45px;
	}
}

@media screen and (min-width: 601px) and (max-width: 900px) {
	body {
		font-size: 14px;
	}

	main p,
	main li,
	main address,
	main blockquote,
	main td,
	main th,
	main label,
	#main p,
	#main li,
	#main address,
	#main blockquote,
	#main td,
	#main th,
	#main label {
		font-size: 14px !important;
	}

	main figcaption,
	main .wp-element-caption,
	#main figcaption,
	#main .wp-element-caption {
		font-size: 12.5px !important;
	}

	.ip-site-header__menu > li > a,
	.ip-site-header__actions button,
	.main-navigation a,
	button,
	input[type="button"],
	input[type="submit"],
	input[type="reset"],
	.button,
	.btn {
		font-size: 95%;
	}

	body .ip-page-hero.ip-page-hero {
		padding-top: 50px;
		padding-bottom: 44px;
	}
}

@media screen and (max-width: 600px) {
	/* Preserve readable mobile copy and touch-target sizes. */
	body .ip-page-hero.ip-page-hero {
		padding-top: 48px;
		padding-bottom: 42px;
	}
}
/* =========================================================
   Homepage heading hierarchy

   All top-level homepage sections use one h2 scale.
   Artwork, exhibition and artist card h3 titles remain smaller.
   ========================================================= */

@media screen and (min-width: 901px) {
	.iph-home .iph-current__heading h2,
	.iph-home .iph-selected__heading h2,
	.iph-home .iph-exhibitions__heading,
	.iph-home .iph-artists .iph-section-title,
	.iph-home .iph-about__card .iph-section-title,
	.iph-home .iph-connect__intro h2,
	.iph-home .iph-visit__content h2,
	.iph-home .iph-closing .iph-connect h2,
	.iph-home .iph-closing .iph-visit__content h2,
	.iph-home #iph-exhibitions-title,
	.iph-home #iph-artists-title,
	.iph-home #iph-about-title,
	.iph-home #iph-connect-title,
	.iph-home #iph-visit-title {
		font-size: 20px;
		line-height: 1.1;
		letter-spacing: -0.03em;
	}
}

@media screen and (min-width: 601px) and (max-width: 900px) {
	.iph-home .iph-current__heading h2,
	.iph-home .iph-selected__heading h2,
	.iph-home .iph-exhibitions__heading,
	.iph-home .iph-artists .iph-section-title,
	.iph-home .iph-about__card .iph-section-title,
	.iph-home .iph-connect__intro h2,
	.iph-home .iph-visit__content h2,
	.iph-home .iph-closing .iph-connect h2,
	.iph-home .iph-closing .iph-visit__content h2,
	.iph-home #iph-exhibitions-title,
	.iph-home #iph-artists-title,
	.iph-home #iph-about-title,
	.iph-home #iph-connect-title,
	.iph-home #iph-visit-title {
		font-size: 18px;
		line-height: 1.12;
		letter-spacing: -0.025em;
	}
}

@media screen and (max-width: 600px) {
	.iph-home .iph-current__heading h2,
	.iph-home .iph-selected__heading h2,
	.iph-home .iph-exhibitions__heading,
	.iph-home .iph-artists .iph-section-title,
	.iph-home .iph-about__card .iph-section-title,
	.iph-home .iph-connect__intro h2,
	.iph-home .iph-visit__content h2,
	.iph-home .iph-closing .iph-connect h2,
	.iph-home .iph-closing .iph-visit__content h2,
	.iph-home #iph-exhibitions-title,
	.iph-home #iph-artists-title,
	.iph-home #iph-about-title,
	.iph-home #iph-connect-title,
	.iph-home #iph-visit-title {
		font-size: 17px;
		line-height: 1.15;
		letter-spacing: -0.02em;
	}
}
/* =========================================================
   Homepage secondary title reduction

   Top-level section h2 sizes above remain unchanged.
   All other homepage title-like text is reduced by about 15%.
   Paragraph and descriptive copy is intentionally excluded.
   ========================================================= */

@media screen and (min-width: 901px) {
	.iph-home .iph-hero h1 {
		font-size: 29px;
	}

	.iph-home .iph-hero-gallery__artwork-title,
	.iph-home .iph-hero-gallery__year,
	.iph-home .iph-hero-gallery__medium {
		font-size: 8.7px;
	}

	.iph-home .iph-current__heading .iph-current__label {
		font-size: 25px;
	}

	.iph-home .iph-current-card__overlay h3 {
		font-size: 23px;
	}

	.iph-home .iph-selected-row__content h3 {
		font-size: 20px;
	}

	.iph-home .iph-exhibitions .iph-exhibition-tile__body h3,
	.iph-home .iph-artist-card h3 {
		font-size: 11px;
	}

	.iph-home .iph-exhibitions-all__heading {
		font-size: clamp(13px, 1.45vw, 20px);
	}
}

@media screen and (min-width: 601px) and (max-width: 900px) {
	.iph-home .iph-hero h1 {
		font-size: 34px;
	}

	.iph-home .iph-hero-gallery__artwork-title,
	.iph-home .iph-hero-gallery__year,
	.iph-home .iph-hero-gallery__medium {
		font-size: 8.7px;
	}

	.iph-home .iph-current__heading .iph-current__label {
		font-size: 21px;
	}

	.iph-home .iph-current-card__overlay h3 {
		font-size: 32px;
	}

	.iph-home .iph-selected-row__content h3 {
		font-size: 21px;
	}

	.iph-home .iph-exhibitions .iph-exhibition-tile__body h3,
	.iph-home .iph-artist-card h3 {
		font-size: 11px;
	}

	.iph-home .iph-exhibitions-all__heading {
		font-size: 19px;
	}
}

@media screen and (max-width: 600px) {
	.iph-home .iph-hero h1 {
		font-size: 25px;
	}

	.iph-home .iph-hero-gallery__artwork-title,
	.iph-home .iph-hero-gallery__year,
	.iph-home .iph-hero-gallery__medium {
		font-size: 7.2px;
	}

	.iph-home .iph-current__heading .iph-current__label {
		font-size: 21px;
	}

	.iph-home .iph-current-card__overlay h3 {
		font-size: 25px;
	}

	.iph-home .iph-selected-row__content h3 {
		font-size: 24px;
	}

	.iph-home .iph-exhibitions .iph-exhibition-tile__body h3,
	.iph-home .iph-artist-card h3 {
		font-size: 11px;
	}

	.iph-home .iph-exhibitions-all__heading {
		font-size: 19px;
	}
}
/* =========================================================
   Site-wide heading reduction

   Reduce the final computed appearance of semantic titles by
   exactly 15% without changing paragraphs or general copy.
   Page-wide zoom is intentionally not used.
   ========================================================= */

body h1,
body h2,
body h3,
body h4,
body [role="heading"],
body .archive-title,
body .entry-title,
body .product_title,
body .woocommerce-loop-product__title,
body .iph-exhibitions-all__heading,
body .ip-gallery-modal__artwork-title {
	zoom: 0.85;
}

/*
 * Preserve the homepage section scale chosen explicitly:
 * 20px desktop, 18px tablet and 17px mobile.
 */
.iph-home .iph-current__heading h2,
.iph-home .iph-selected__heading h2,
.iph-home .iph-exhibitions__heading,
.iph-home .iph-artists .iph-section-title,
.iph-home .iph-about__card .iph-section-title,
.iph-home .iph-connect__intro h2,
.iph-home .iph-visit__content h2,
.iph-home .iph-closing .iph-connect h2,
.iph-home .iph-closing .iph-visit__content h2,
.iph-home #iph-exhibitions-title,
.iph-home #iph-artists-title,
.iph-home #iph-about-title,
.iph-home #iph-connect-title,
.iph-home #iph-visit-title {
	zoom: 1;
}
/* =========================================================
   Default site zoom

   Apply the requested 90% visual zoom to every public page.
   The compensated body width keeps full-width sections flush
   with the viewport instead of leaving an empty right edge.
   ========================================================= */

html {
	overflow-x: hidden;
}

/* body {
	width: 111.111111%;
	zoom: 0.9;
} */
