/* Shared readable type scale for the public uCoz site and private gallery. */
body { font-size:18px; line-height:1.65; }

/* Existing uCoz header and gallery. */
body .abn-header { font-size:17px; }
body .abn-brand strong { font-size:29px; }
body .abn-brand small { font-size:12px; letter-spacing:.6px; line-height:1.5; }
body .abn-actions, body .abn-lang summary { font-size:16px; }
body .abn-phone { font-size:18px; white-space:nowrap; }
body .abn-menu>nav, body .abn-menu:not([open])>nav { font-size:17px; gap:16px; }
body .abn-menu nav a:not(.abn-extra) { min-height:44px; display:flex; align-items:center; }
body .abn-menu>summary { font-size:16px; min-width:64px; height:46px; }
body #ab-home, body #ab-gallery { font-size:18px; line-height:1.65; }
body #ab-home .abh-eyebrow, body #ab-gallery .ab-eyebrow { font-size:13px; line-height:1.5; letter-spacing:1.2px; }
body #ab-home .abh-lead, body #ab-gallery .ab-intro>p { font-size:18px; line-height:1.65; }
body #ab-home .abh-stock, body #ab-home .abh-actions,
body #ab-home .abh-feature-head>a { font-size:17px; line-height:1.5; }
body #ab-home .abh-actions a { min-height:48px; display:inline-flex; align-items:center; }
body #ab-home .abh-quality, body #ab-gallery .ab-quality { font-size:16px; line-height:1.6; gap:14px 25px; }
body #ab-home figcaption { font-size:16px; line-height:1.5; align-items:baseline; flex-wrap:wrap; }
body #ab-home figcaption strong { font-size:27px; white-space:nowrap; }
body #ab-home .abh-card h3, body #ab-gallery .ab-card h2 { font-size:28px; line-height:1.25; overflow-wrap:break-word; }
body #ab-home .abh-card p, body #ab-gallery .ab-card p { font-size:16px; line-height:1.6; }
body #ab-home .abh-card span, body #ab-gallery .ab-card .ab-stock { font-size:15px; line-height:1.5; }
body #ab-home .abh-card strong, body #ab-gallery .ab-price { font-size:30px; line-height:1.35; }
body #ab-gallery .ab-card-actions a, body #ab-gallery .ab-button { font-size:16px; line-height:1.4; min-height:48px; display:inline-flex; align-items:center; }
body #ab-gallery .ab-heart { width:44px; height:44px; }
body #ab-gallery .ab-filters-wrap>summary { font-size:17px; line-height:1.5; }
body #ab-gallery .ab-filters label, body #ab-gallery .ab-city-label { font-size:16px; line-height:1.5; }
body #ab-gallery .ab-filters input, body #ab-gallery .ab-filters select, body #ab-gallery #ab-city { font-size:16px; min-height:50px; }
body #ab-gallery .ab-toolbar { font-size:16px; gap:15px 22px; }
body #ab-gallery .ab-toolbar button, body #ab-gallery .ab-toolbar a { min-height:44px; display:inline-flex; align-items:center; }
body #ab-gallery .ab-section p, body #ab-gallery #ab-selected li { font-size:17px; line-height:1.65; }
body #ab-gallery #ab-selected li { flex-wrap:wrap; }
body #ab-gallery #ab-selected button { font-size:16px; min-height:44px; }
body #ab-gallery .ab-total { font-size:23px; flex-wrap:wrap; gap:12px; }
body #ab-gallery .ab-total strong { font-size:28px; white-space:nowrap; }
body #ab-gallery #ab-native-form td { font-size:16px; line-height:1.5; }
body #ab-gallery #ab-native-form input:not([type=hidden]):not([type=checkbox]),
body #ab-gallery #ab-native-form textarea { font-size:17px; line-height:1.5; min-height:50px; }
body #ab-gallery .ab-privacy, body #ab-gallery #ab-notice { font-size:15px; line-height:1.6; }
body #ab-dialog { font-size:18px; line-height:1.65; }
body #ab-dialog h2 { font-size:42px; line-height:1.2; }
body #ab-dialog p, body #ab-dialog .shop-buy-info p { font-size:17px; line-height:1.65; }
body #ab-dialog .ab-detail-price { font-size:36px; line-height:1.35; }
body #ab-dialog .ab-button { font-size:16px; line-height:1.45; min-height:48px; padding:14px 18px; }
body #ab-dialog .ab-lightbox-link, body #ab-dialog .ab-room-caption,
body #ab-dialog .ab-room-controls, body #ab-dialog input[type=file] { font-size:15px; line-height:1.6; }
body #ab-dialog .ab-dialog-close { width:46px; height:46px; font-size:28px; }
body #ab-dialog .shop-buy-info summary { font-size:18px; line-height:1.5; }

/* Controls and offers shared with both versions. */
body .shop-picks a, body .shop-picks button, body .shop-compare-toggle,
body .shop-compare-bar button, body .shop-compare-grid .shop-compare-select,
body .shop-compare-grid .shop-compare-remove { font-size:16px; line-height:1.45; min-height:46px; }
body .shop-picks a, body .shop-picks button { padding:12px 16px; }
body .shop-compare-bar { font-size:17px; }
body .shop-compare-bar small, body .shop-compare-note,
body .shop-mini-label, body .shop-filter-hint { font-size:15px; line-height:1.6; }
body .shop-compare-grid dl { font-size:16px; line-height:1.55; }
body .shop-compare-grid h3 { font-size:27px; }
body .shop-compare-grid strong { font-size:28px; }
body .shop-price-label, body .ab-detail-price .shop-price-label { font-size:16px; line-height:1.5; }
body .shop-copy-line { font-size:18px; line-height:1.55; }
body .shop-copy-line small { font-size:15px; line-height:1.6; }
body .shop-copy-offer>strong { font-size:32px; line-height:1.4; }
body .shop-copy-offer p { font-size:17px; line-height:1.65; }
body .shop-copy-offer .eyebrow, body #ab-dialog .shop-copy-offer .ab-eyebrow { font-size:14px; line-height:1.55; letter-spacing:.5px; }
body .shop-buy-info summary { font-size:18px; line-height:1.5; }
body .shop-buy-info p, body .shop-guide p { font-size:17px; line-height:1.65; }
body .shop-guide a { font-size:16px; line-height:1.5; min-height:44px; }
body .shop-guide h3 { font-size:28px; line-height:1.25; }

/* Photo and video galleries. */
body .am-gallery, body .am-dialog, body .am-teaser { font-size:18px; line-height:1.65; }
body .am-eyebrow { font-size:13px; line-height:1.55; letter-spacing:1px; }
body .am-heading>p, body .am-cta p,
body .am-gallery[data-mode=video] .am-card:first-child p { font-size:17px; line-height:1.65; }
body .am-tabs a, body .am-filters button, body .am-more-row button, body .am-cta>a,
body .am-teaser-header a, body .am-teaser-links { font-size:16px; line-height:1.5; min-height:46px; }
body .am-tabs span, body .am-duration, body .am-card .am-number { font-size:14px; line-height:1.5; }
body .am-card h2 { font-size:25px; line-height:1.25; }
body .am-card p, body .am-more-row, body .am-modal-count,
body .am-original, body .am-play-error { font-size:16px; line-height:1.6; }
body .am-modal-title, body .am-teaser-grid span.am-teaser-caption { font-size:25px; line-height:1.3; }
body .am-modal-nav button { min-width:46px; width:46px; height:46px; }
body .am-teaser-links { flex-wrap:wrap; }
body .am-teaser-links a { min-height:44px; display:inline-flex; align-items:center; }

/* Private gallery: preserve display headings, enlarge reading and purchase text. */
body .eyebrow, body .selection-copy .eyebrow, body .detail-info>.eyebrow,
body .collection-index-row .eyebrow, body .section-header .eyebrow { font-size:13px; line-height:1.55; letter-spacing:.12em; }
body .button, body .button.small, body .hero .button, body .catalog-help .button,
body .detail-actions .button, body .mobile-buy-bar .button, body .room-upload .button,
body .quiet-callout .button { font-size:16px; line-height:1.45; min-height:48px; }
body .text-link, body .section-header>.text-link, body .section-aside .text-link,
body .hero-secondary, body .shop-delivery-link, body .detail-question,
body details>.text-link { font-size:16px; line-height:1.5; }
body .text-link>span, body .wordmark span, body .footer .wordmark span { font-size:11px; line-height:1.5; letter-spacing:.06em; }
body .desktop-nav { font-size:16px; line-height:1.5; gap:22px; margin-right:20px; }
body .desktop-nav>a { min-height:44px; display:flex; align-items:center; }
body .mobile-nav>a, body .mobile-nav>a:last-child { font-size:18px; line-height:1.5; min-height:48px; }
body .hero-description, body .selection-copy>p:not(.eyebrow),
body .artist-copy p:not(.eyebrow), body .page-heading>p:not(.eyebrow),
body .catalog-heading>p, body .collection-index-row p:not(.eyebrow),
body .quiet-callout>p, body .service-hero>div>p:not(.eyebrow),
body .split-form-section>div>p:not(.eyebrow), body .about-story p:not(.eyebrow),
body .three-columns p, body .delivery-steps p, body .delivery-aside p:not(.eyebrow),
body .faq-section p, body .contact-details p, body .prose-page p,
body .cart-form>p:not(.eyebrow), body .form-success>p:not(.eyebrow) { font-size:18px; line-height:1.7; }
body .hero-art-caption, body .promise-inner, body .section-aside p,
body .steps p, body .catalog-help p, body .empty-state p,
body .collection-card>p, body .detail-size, body .photo-note,
body .detail-trust p, body .spec-list>div, body details>p,
body .detail-info details p, body .cart-summary>p, body .quiet-note { font-size:16px; line-height:1.65; }
body .hero-art-caption strong { font-size:23px; line-height:1.3; }
body .hero-art-label, body .hero-bottom { font-size:12px; line-height:1.5; letter-spacing:.08em; }
body .hero-view { font-size:12px; line-height:1.4; width:96px; height:96px; }
body .promise-inner { flex-wrap:wrap; gap:18px 32px; }
body .art-title, body .catalog-grid .art-title { font-size:25px; line-height:1.3; }
body .art-card-caption p, body .catalog-grid .art-card-caption p { font-size:16px; line-height:1.6; }
body .art-price, body .catalog-grid .art-price { font-size:28px; line-height:1.4; }
body .art-status, body .detail-status, body .detail-status>span,
body .image-note, body .small-note, body .breadcrumbs, body .collection-count,
body .collection-caption>span, body .price-note, body .art-lightbox p,
body .room-upload>span, body .room-sliders label, body .wall-swatches,
body .exhibition-section .section-header>span, body .contact-details span { font-size:15px; line-height:1.6; }
body .detail-status { flex-wrap:wrap; }
body .detail-price { font-size:36px; line-height:1.35; }
body .detail-utility button, body .view-tabs button, body .zoom-button,
body .filter-toggle, body .reset-button { font-size:16px; line-height:1.5; min-height:44px; }
body .room-disclaimer { font-size:13px; line-height:1.4; max-width:90%; }
body summary, body .detail-info summary, body .faq-section summary { font-size:18px; line-height:1.5; }
body .filter-panel label, body .sort-label { font-size:16px; line-height:1.5; }
body .filter-panel input, body .filter-panel select, body .sort-label select,
body .search-input input { font-size:16px; line-height:1.5; min-height:48px; }
body .catalog-count { font-size:16px; line-height:1.6; flex-wrap:wrap; }
body .inquiry-form label, body .inquiry-form .consent, body .form-footnote,
body .file-field small, body .form-selection, body .form-error { font-size:16px; line-height:1.6; }
body .inquiry-form input:not([type=checkbox]):not([type=file]),
body .inquiry-form textarea, body .inquiry-form select { font-size:17px; line-height:1.5; }
body .inquiry-form input::placeholder, body .inquiry-form textarea::placeholder { font-size:16px; }
body .form-selection>span, body .cart-item span { font-size:15px; line-height:1.5; }
body .cart-item .art-title { font-size:23px; }
body .cart-item p { font-size:16px; line-height:1.55; }
body .cart-item strong { font-size:24px; }
body .cart-summary>div, body .cart-summary>div:first-child { font-size:18px; line-height:1.5; }
body .cart-summary>div strong { font-size:24px; }
body .exhibitions h3 { font-size:21px; line-height:1.4; }
body .exhibitions p, body .exhibitions>div>span { font-size:16px; line-height:1.6; }
body .footer-links, body .footer-contact>a:nth-child(2), body .footer-cta { font-size:17px; line-height:1.6; }
body .footer-contact>span, body .footer-bottom, body .footer-bottom>span:last-child { font-size:15px; line-height:1.6; }
body .footer-links a, body .footer-bottom a { min-height:44px; display:inline-flex; align-items:center; }
body .toast { font-size:16px; line-height:1.5; }
body .mobile-buy-bar strong { font-size:24px; }
body .mobile-buy-bar small { font-size:13px; }

/* Keep the archived biography, contacts and collection captions legible too. */
body .biography td, body .biography p, body .f-binfo p,
body .page-wrap p, body .page-warp p, body .photo-list p { font-size:17px; line-height:1.7; font-weight:400; }
body .f-bcopy, body .f-binfo .block, body .infTd p { font-size:16px; line-height:1.6; }

@media(max-width:1150px) {
  body .desktop-nav { display:none; }
  body .mobile-menu-button { display:inline-flex; }
  body .mobile-nav { display:flex; flex-direction:column; padding:10px 35px 25px; }
  body .header-actions { margin-left:auto; flex-shrink:0; }
}
@media(max-width:980px) {
  body .abn-brandrow { padding-right:76px; }
  body .abn-brand strong { font-size:26px; }
  body .abn-brand small { font-size:11px; letter-spacing:.1px; max-width:225px; }
  body .abn-menu[open]>nav { font-size:18px; gap:0; }
  body .abn-menu:not([open])>nav { display:none; }
}
@media(max-width:600px) {
  body { font-size:17px; }
  body #ab-home .abh-lead, body #ab-gallery .ab-intro>p { font-size:18px; }
  body #ab-home .abh-quality, body #ab-gallery .ab-quality { font-size:16px; }
  body #ab-home .abh-feature-head { display:block; }
  body #ab-home .abh-feature-head>a { display:inline-block; margin-top:16px; }
  body #ab-gallery .ab-grid, body .catalog-grid, body .featured-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
  body #ab-gallery .ab-card-image { height:320px; padding:25px; }
  body #ab-gallery .ab-card h2 { font-size:28px; }
  body #ab-gallery .ab-card p { font-size:16px; }
  body #ab-gallery .ab-price { font-size:30px; }
  body #ab-gallery .ab-filters { grid-template-columns:minmax(0,1fr); gap:18px; }
  body #ab-gallery .ab-toolbar .ab-cart-link { margin-left:0; }
  body #ab-gallery .ab-purchase-links { flex-direction:column; }
  body #ab-gallery .ab-purchase-links a { width:100%; box-sizing:border-box; }
  body #ab-dialog { width:96vw; padding:18px; max-height:94dvh; }
  body #ab-dialog h2 { font-size:36px; }
  body #ab-dialog .ab-button { width:100%; box-sizing:border-box; margin-right:0; }
  body #ab-dialog .ab-room-controls { grid-template-columns:1fr; }
  body #ab-dialog .ab-detail-grid { gap:28px; }
  body .shop-copy-offer { padding:20px; }
  body .shop-guide { padding:22px; }
  body .shop-compare-bar>div:last-child { flex-wrap:wrap; }
  body .shop-compare-bar button { flex:1 1 145px; }
  body .am-filters button { font-size:16px; padding:11px 14px; }
  body .am-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
  body .am-modal-bottom { flex-wrap:wrap; }
  body .am-card h2 { font-size:26px; }
  body .am-card .am-open-icon { width:40px; height:40px; font-size:26px; }
  body .wordmark { font-size:23px; }
  body .wordmark span { max-width:180px; font-size:10px; letter-spacing:0; }
  body .header-inner { flex-wrap:wrap; padding-block:14px; gap:12px; }
  body .header-actions { gap:8px; }
  body .icon-button { min-width:44px; min-height:44px; }
  body .mobile-nav { padding-inline:20px; }
  body .section-header { flex-wrap:wrap; align-items:start; gap:18px; }
  body .section-header>.text-link, body .section-aside .text-link { margin-top:0; white-space:normal; }
  body .hero-art-caption { font-size:16px; gap:15px; flex-wrap:wrap; }
  body .hero-bottom { flex-wrap:wrap; }
  body .hero-description, body .selection-copy>p:not(.eyebrow), body .artist-copy p:not(.eyebrow) { font-size:18px; }
  body .art-title, body .catalog-grid .art-title { font-size:26px; }
  body .art-price, body .catalog-grid .art-price { font-size:30px; }
  body .art-image-wrap { aspect-ratio:1/1; }
  body .filter-panel.expanded { grid-template-columns:minmax(0,1fr); }
  body .sort-label { flex-wrap:wrap; gap:8px; }
  body .sort-label select { max-width:100%; }
  body .mobile-buy-bar { flex-wrap:wrap; gap:12px; }
  body .mobile-buy-bar .button { min-height:48px; padding-inline:16px; }
  body .footer-top, body .footer-bottom { flex-wrap:wrap; }
}
@media(max-width:360px) {
  body .hero h1 { font-size:clamp(46px,16vw,52px); }
  body .abn-header { padding-inline:16px; }
  body .abn-brand img { width:30px; }
  body .abn-brand strong { font-size:23px; }
  body .abn-brand small { font-size:10px; max-width:150px; }
  body .abn-brandrow { padding-right:68px; }
  body .abn-menu>summary { right:16px; }
  body #ab-gallery .ab-card-image { height:285px; }
  body .wordmark { font-size:23px; }
  body .wordmark span { max-width:160px; }
  body .header-actions { width:100%; justify-content:flex-end; }
}
