/* ==========================================================================
   Atelier — the classic artist's portfolio.
   White · soft grey text #777 · ink headings #333 · hairlines #ECECEC
   Poppins throughout: a large, light name; an uppercase menu with the social
   icons above it; a full-screen slideshow under a see-through header;
   breadcrumbs, light headings and small italic captions.
   ========================================================================== */

:root {
    --art-bg: #ffffff; --art-surface: #f6f6f6; --art-text: #777777; --art-heading: #333333; --art-muted: #999999;
    --art-link: #333333; --art-link-hover: #777777; --art-accent: #333333; --art-accent-2: #ececec; --art-price: #333333;
    --art-font: "Poppins", Arial, sans-serif; --art-size: 14px;
    --art-heading-font: "Poppins", Arial, sans-serif; --art-heading-weight: 300; --art-heading-case: none;
    --art-meta-font: "Poppins", Arial, sans-serif;
    --art-header-bg: #ffffff; --art-header-text: #111111; --art-header-hover: #777777; --art-header-rule: #ececec; --art-header-rule-w: 1px;
    --art-title-font: "Poppins", sans-serif; --art-title-size: 46px; --art-title-weight: 300; --art-title-case: none; --art-title-tracking: -1px; --art-logo-h: 60px;
    --art-nav-font: "Poppins", sans-serif; --art-nav-size: 14px; --art-nav-weight: 400; --art-nav-case: uppercase; --art-nav-tracking: 0px;
    --art-footer-bg: #ffffff; --art-footer-text: #777777; --art-footer-link: #333333; --art-footer-hover: #777777;
    --art-footer-rule: #ececec; --art-footer-rule-w: 1px; --art-footer-font: "Poppins", sans-serif; --art-footer-size: 13px; --art-footer-case: none;
    --art-gallery-gap: 24px;
    --art-gutter: clamp(20px, 3vw, 40px);
    --art-max: 1180px;
    --art-text-col: 900px;
    --art-lightbox-bg: rgba(255, 255, 255, .98);
}

body { line-height: 1.85; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { letter-spacing: -.02em; color: var(--art-heading); }
h1 { font-size: clamp(28px, 3vw, 36px); }
h2 { font-size: clamp(24px, 2.6vw, 32px); }
h3 { font-size: clamp(20px, 2.2vw, 28px); }
h1 strong, h2 strong, h3 strong, h4 strong { font-weight: 400; }
a { text-underline-offset: 2px; }
hr, .wp-block-separator { width: 75%; margin: 2.5rem auto; border-color: #333; opacity: .25; }
blockquote, .wp-block-quote { max-width: 760px; margin: 2rem auto; text-align: center; font-style: italic; font-size: 1.15em; color: var(--art-heading); border: 0; padding: 0; }

/* Header: the name on the left, social icons over an uppercase menu on the right */
.art-header__inner { max-width: none; padding-top: 18px; padding-bottom: 14px; align-items: flex-end; }
.art-brand { line-height: 1.05; }
.art-sticky-header .art-header { box-shadow: 0 1px 0 rgba(0, 0, 0, .02); }
.art-menu { gap: .2rem 2rem; }
.art-menu .nav-link { padding: .25rem 0; }
.art-menu .nav-link.active, .art-menu .current-menu-item > .nav-link { color: var(--art-header-text); text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; }
.at-header-social { display: flex; gap: .9rem; margin: 0; padding: 0; }
.at-header-social a { color: var(--art-header-text); }
.at-header-social a:hover { color: var(--art-header-hover); }
.at-header-social .fran-icon { width: 15px; height: 15px; }
@media (min-width: 992px) {
    .art-nav { flex-direction: column-reverse; align-items: flex-end; gap: .7rem; }
}
@media (max-width: 991.98px) {
    .art-brand { font-size: calc(var(--art-title-size) * .65); }
    .at-header-social { padding: .5rem 0 1rem; }
}

/* The home page's slideshow fills the screen, under a see-through header */
.at-overlay .art-header { position: absolute; top: 0; left: 0; right: 0; background: rgba(255, 255, 255, .55); border-bottom: 0; backdrop-filter: blur(2px); }
.admin-bar.at-overlay .art-header { top: 32px; }
@media (max-width: 782px) { .admin-bar.at-overlay .art-header { top: 46px; } }
.at-overlay .art-header .navbar-collapse.show { background: rgba(255, 255, 255, .95); }

.at-hero { position: relative; height: 100vh; min-height: 480px; background: #111; overflow: hidden; }
.at-hero .carousel-inner, .at-hero .carousel-item { height: 100%; }
.at-hero__img { width: 100%; height: 100%; object-fit: cover; display: block; }
.at-hero__caption { position: absolute; left: 3%; right: 3%; bottom: 3.25rem; z-index: 2; color: #fff; text-align: left; }
.at-hero__title { margin: 0; padding: 0; max-width: 1400px; font-size: clamp(20px, 2.4vw, 32px); font-weight: 400; line-height: 1.25; letter-spacing: 0; text-transform: uppercase; color: #fff; text-shadow: 0 1px 12px rgba(0, 0, 0, .45); }
.at-hero__link { position: absolute; inset: 0; z-index: 3; }
.at-hero__link:hover ~ .at-hero__caption .at-hero__title { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 2px; }
.at-hero__caption { pointer-events: none; }
.at-hero__dots, .at-hero__arrow { z-index: 4; }
.at-hero__dots { margin-bottom: 1rem; }
.at-hero__dots [data-bs-target] { width: 8px; height: 8px; border-radius: 50%; border: 0; margin: 0 5px; opacity: .55; }
.at-hero__dots .active { opacity: 1; }
.at-hero__arrow { width: 8%; opacity: .7; }
.at-hero__arrow .fran-icon { width: 34px; height: 34px; color: #fff; filter: drop-shadow(0 1px 6px rgba(0, 0, 0, .4)); }
@media (max-width: 575.98px) { .at-hero { height: 75vh; } .at-hero__caption { bottom: 2.75rem; } }

/* Home sections */
.at-home { padding-top: clamp(40px, 6vw, 80px); }
.at-label { margin: 0 0 2rem; padding: 0; font-size: clamp(22px, 2.4vw, 30px); font-weight: 300; text-align: center; }
.art-home-section { margin-top: clamp(56px, 8vw, 110px); }
.at-home > .art-home-section:first-child { margin-top: 0; }
.at-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem 2rem; align-items: end; }
@media (max-width: 991.98px) { .at-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575.98px) { .at-grid { grid-template-columns: minmax(0, 1fr); } }
.at-work { display: block; text-align: center; color: var(--art-text); text-decoration: none; }
.at-work__frame { display: block; line-height: 0; overflow: hidden; }
.at-work__img { width: 100%; height: auto; transition: transform .5s ease, opacity .3s ease; }
.at-work:hover .at-work__img { transform: scale(1.03); }
.at-work__title { display: block; margin-top: .9rem; color: var(--art-link); text-decoration: underline; text-underline-offset: 3px; }
.at-work__meta { display: block; font-size: 12px; color: var(--art-muted); }
.at-news .art-home-section__head, .at-sale .art-home-section__head { justify-content: center; margin-bottom: 2rem; }
.at-news .edith-section-title, .at-sale .edith-section-title { font-size: clamp(22px, 2.4vw, 30px); font-weight: 300; }

/* Breadcrumbs: small, uppercase, underlined */
.fran-breadcrumbs { max-width: var(--art-max); margin: 0 auto; padding: 1.6rem var(--art-gutter) 0; }
.fran-breadcrumbs .breadcrumb { margin: 0; font-size: 11px; text-transform: uppercase; letter-spacing: .02em; --bs-breadcrumb-divider-color: #bbb; --bs-breadcrumb-item-active-color: #333; }
.fran-breadcrumbs a { color: #333; text-decoration: underline; }
.fran-breadcrumbs .breadcrumb-item.active { text-decoration: underline; }

/* Works: small italic captions centred under each image */
.fran-artwork__caption { padding-top: .5rem; font-size: 13px; font-style: italic; text-align: center; color: var(--art-text); }
.fran-artwork__title { font-style: italic; }
.edith-card__title { font-size: 14px; font-weight: 400; }
.edith-shop-grid .btn.edith-btn { background: #333; border-color: #333; color: #fff; border-radius: 0; }
.edith-shop-grid .btn.edith-btn:hover { background: #000; border-color: #000; }

/* Footer: a hairline, the icons in the middle */
.art-footer__name { font-size: 14px; font-weight: 400; color: var(--art-heading); }
.art-footer__label { font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
