/*
Theme Name: Jackson Whiles Gutenberg
Theme URI: https://jacksonwhiles.com
Author: Jackson Whiles
Description: Gutenberg-editable WordPress conversion of the original Jackson Whiles design, with visual page blocks and dynamic Artists/Artworks content.
Version: 5.0.0
Text Domain: jacksonwhiles
*/

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;1,9..144,300;1,9..144,400&family=Inter:wght@300;400;500&display=swap');

:root{
  --bg:#f9f7f3;
  --fg:#211f1d;
  --muted:#6e6963;
  --soft:#eeeae4;
  --border:#ddd7cf;
  --accent:#98533d;
  --max:1152px;
  --wide:1280px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}.wrap{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.wrap-wide{width:min(calc(100% - 48px),var(--wide));margin-inline:auto}.display{font-family:Fraunces,Georgia,serif;font-optical-sizing:auto}.muted{color:var(--muted)}.accent{color:var(--accent)}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.35em;color:var(--muted)}.rule{border-top:1px solid var(--border)}.section{padding:80px 0}.hero{padding:96px 0 80px}.hero h1{font-family:Fraunces,Georgia,serif;font-weight:300;font-size:clamp(50px,7vw,96px);line-height:1.04;max-width:900px;margin:28px 0 0}.hero p.lead{max-width:460px;line-height:1.75;color:var(--muted);margin:34px 0 0}.studio-hero{margin-top:64px;aspect-ratio:21/9;object-fit:cover;width:100%}.caption{margin-top:12px;font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--muted)}
.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(221,215,207,.85);background:rgba(249,247,243,.88);backdrop-filter:blur(14px)}.site-header-inner{height:64px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Fraunces,Georgia,serif;font-size:19px;letter-spacing:.025em}.nav{display:flex;gap:34px;align-items:center;font-size:14px}.nav a{color:var(--muted);transition:.2s}.nav a:hover,.nav .current-menu-item>a,.nav a[aria-current="page"]{color:var(--fg)}.nav .enquire{border:1px solid rgba(33,31,29,.8);padding:10px 16px;font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--fg)}.nav .enquire:hover{background:var(--fg);color:var(--bg)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px}.section-head h2{font-family:Fraunces,Georgia,serif;font-size:clamp(34px,4vw,52px);font-weight:300;margin:0;line-height:1.1}.section-head p{max-width:320px;font-size:14px;line-height:1.7;color:var(--muted);margin:0}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px 48px;margin-top:72px}.works-grid .work-card:nth-child(even){margin-top:110px}.media{background:var(--soft);overflow:hidden}.media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.work-card:hover .media img,.artist-card:hover .media img,.collection-row:hover .media img{transform:scale(1.03)}.ratio-3-4{aspect-ratio:3/4}.ratio-4-3{aspect-ratio:4/3}.ratio-3-2{aspect-ratio:3/2}.ratio-1-1{aspect-ratio:1/1}.work-caption{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:20px}.work-title{font-family:Fraunces,Georgia,serif;font-size:21px;font-style:italic;margin:0}.meta{font-size:13px;color:var(--muted);margin-top:7px}.desc{font-size:14px;line-height:1.7;color:var(--muted);margin-top:14px;max-width:480px}.text-link{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid transparent;padding-bottom:3px;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);white-space:nowrap}.text-link:hover{border-color:var(--accent);color:var(--accent)}
.artist-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;margin-top:56px}.artist-card h3{font-family:Fraunces,Georgia,serif;font-size:19px;font-weight:400;margin:16px 0 0}.artist-card .movement{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin-top:6px}.about-teaser{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center}.about-teaser h2{font-family:Fraunces,Georgia,serif;font-size:clamp(32px,4vw,46px);font-weight:300;line-height:1.25;margin:22px 0 0}.about-teaser p{max-width:560px;line-height:1.75;color:var(--muted)}.portrait{aspect-ratio:3/4;object-fit:cover;width:100%}
.collection-intro{padding:96px 0 64px}.collection-intro h1,.artist-hero h1,.page-title{font-family:Fraunces,Georgia,serif;font-weight:300;font-size:clamp(50px,6vw,78px);line-height:1.04;margin:28px 0 0}.collection-intro .lead{max-width:600px;line-height:1.75;color:var(--muted);margin-top:34px}.collection-list{display:flex;flex-direction:column;gap:120px}.collection-row{display:grid;grid-template-columns:7fr 5fr;gap:64px;align-items:center}.collection-row.reverse .visual{order:2}.collection-copy h2{font-family:Fraunces,Georgia,serif;font-size:clamp(32px,4vw,44px);font-weight:300;margin:18px 0 0}.collection-copy p{line-height:1.72;color:var(--muted)}
.artist-hero{padding:88px 0 64px}.artist-layout{display:grid;grid-template-columns:7fr 5fr;gap:64px}.artist-layout .bio{max-width:620px}.artist-layout .bio p{line-height:1.75;color:var(--muted)}.offered-list{display:flex;flex-direction:column;gap:120px;margin-top:72px}.offered-row{display:grid;grid-template-columns:7fr 5fr;gap:64px;align-items:start}.offered-row.reverse .visual{order:2}.offered-copy h3{font-family:Fraunces,Georgia,serif;font-size:32px;font-style:italic;font-weight:300;margin:14px 0}.detail-list{margin:24px 0 0;padding:0}.detail-list>div{display:flex;gap:12px;font-size:13px;margin:11px 0}.detail-list dt{width:96px;flex:0 0 96px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}.detail-list dd{margin:0}.next-artist{display:flex;justify-content:space-between;align-items:center;padding:60px 0}.next-name{font-family:Fraunces,Georgia,serif;font-size:19px;font-style:italic;margin-top:4px}
.page-grid{display:grid;grid-template-columns:5fr 7fr;gap:64px}.prose{max-width:620px}.prose p{line-height:1.78;color:var(--muted)}.exhibitions{margin-top:56px;border-top:1px solid var(--border);padding-top:36px}.exhibition{display:grid;grid-template-columns:60px 1fr auto;gap:26px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--border)}.ex-year{font-family:Fraunces,Georgia,serif;font-size:20px;font-style:italic;color:var(--accent)}.ex-title{font-family:Fraunces,Georgia,serif;font-size:19px}.ex-venue{font-size:13px;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:5fr 7fr;gap:64px}.contact-copy h1{font-family:Fraunces,Georgia,serif;font-weight:300;font-size:clamp(40px,5vw,56px);line-height:1.15;margin:24px 0}.contact-copy p{line-height:1.75;color:var(--muted)}.contact-form{display:grid;gap:28px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--muted)}.field input,.field textarea,.field select{width:100%;background:transparent;border:0;border-bottom:1px solid #bdb5ac;border-radius:0;padding:12px 2px;color:var(--fg);outline:none}.field textarea{border:1px solid #bdb5ac;padding:14px;min-height:150px}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent)}.btn{display:inline-flex;width:max-content;border:1px solid var(--fg);background:var(--fg);color:var(--bg);padding:13px 28px;font-size:11px;text-transform:uppercase;letter-spacing:.25em;cursor:pointer}.btn:hover{background:transparent;color:var(--fg)}.notice{padding:18px;border:1px solid var(--border);background:rgba(238,234,228,.45);margin-bottom:24px}.notice.error{border-color:#b76666}.honeypot{position:absolute!important;left:-9999px!important}
.site-footer{border-top:1px solid var(--border)}.site-footer-inner{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:52px 0}.footer-brand{font-family:Fraunces,Georgia,serif;font-size:26px}.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:13px;color:var(--muted)}.footer-links{display:flex;gap:20px}.copyright{font-size:11px}
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.js .reveal.is-visible{opacity:1;transform:none}
.admin-help{background:#fff;border:1px solid #ddd;padding:18px;margin:16px 0}
@media(max-width:900px){.nav{gap:18px}.artist-grid{grid-template-columns:repeat(2,1fr)}.about-teaser,.collection-row,.artist-layout,.offered-row,.page-grid,.contact-grid{grid-template-columns:1fr}.collection-row.reverse .visual,.offered-row.reverse .visual{order:0}.works-grid .work-card:nth-child(even){margin-top:50px}}
@media(max-width:680px){.wrap,.wrap-wide{width:min(calc(100% - 32px),var(--max))}.site-header-inner{height:auto;min-height:64px;padding:12px 0;align-items:flex-start}.nav{gap:12px 16px;flex-wrap:wrap;justify-content:flex-end;font-size:12px}.nav .enquire{padding:8px 10px}.hero{padding-top:70px}.section{padding:64px 0}.section-head{align-items:flex-start;flex-direction:column}.works-grid,.artist-grid,.two-col{grid-template-columns:1fr}.works-grid .work-card:nth-child(even){margin-top:0}.collection-list,.offered-list{gap:82px}.site-footer-inner{align-items:flex-start;flex-direction:column}.footer-right{align-items:flex-start}.work-caption{flex-direction:column}.exhibition{grid-template-columns:52px 1fr}.ex-venue{grid-column:2}}
.exhibitions{margin-top:56px;border-top:1px solid var(--border);padding-top:38px}.exhibition{display:grid;grid-template-columns:72px 1fr auto;gap:20px;align-items:baseline;border-bottom:1px solid var(--border);padding:16px 0}.ex-year{font-family:Fraunces,Georgia,serif;font-size:19px;font-style:italic;color:var(--accent)}.ex-venue{font-size:13px;color:var(--muted)}

/* WordPress primary navigation */
.nav .primary-menu{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.nav .primary-menu li{margin:0;padding:0}
.nav .primary-menu a{display:inline-block}
@media (max-width:760px){.nav .primary-menu{gap:14px;flex-wrap:wrap;justify-content:flex-end}}

/* Gutenberg-managed page content */
.entry-content > *{margin-top:0;margin-bottom:0}.wp-block-group.wrap,.wp-block-group.wrap-wide{max-width:none}.wp-block-image.studio-hero-block{margin:64px 0 0}.wp-block-image.studio-hero-block img{aspect-ratio:21/9;object-fit:cover;width:100%}.wp-block-image.portrait-block{margin:0}.wp-block-image.portrait-block img{aspect-ratio:3/4;object-fit:cover;width:100%}.jw-text-buttons{margin-top:48px}.jw-text-button .wp-block-button__link{background:transparent!important;color:var(--fg)!important;border:0!important;border-bottom:1px solid var(--fg)!important;border-radius:0!important;padding:0 0 4px!important;font-size:11px!important;text-transform:uppercase;letter-spacing:.18em}.jw-text-button .wp-block-button__link:hover{color:var(--accent)!important;border-color:var(--accent)!important}.wp-block-columns.about-teaser,.wp-block-columns.page-grid,.wp-block-columns.contact-grid{margin-bottom:0}.wp-block-columns.exhibition{margin:0!important;display:grid!important;grid-template-columns:72px 1fr auto!important;gap:20px!important}.wp-block-columns.exhibition>.wp-block-column{margin:0!important}.wp-block-columns.exhibition p{margin:0}.wp-block-columns.exhibition .ex-year{font-family:Fraunces,Georgia,serif;font-size:19px;font-style:italic;color:var(--accent)}.wp-block-columns.exhibition .ex-venue{font-size:13px;color:var(--muted)}
