/* FOLIÈRE · ordinary pages and posts (privacy policy, terms, shipping, journal) */
:root {
  --fp-ivory: #F5F0E8;
  --fp-paper: #FBF8F3;
  --fp-ink: #171411;
  --fp-charcoal: #2B2723;
  --fp-taupe: #9A8C7C;
  --fp-taupe-d: #6B6054;
  --fp-line: #DAD0C2;
  --fp-gold: #C4A465;
  --fp-claret: #6B2232;
  --fp-display: "Bodoni Moda", "Bodoni 72", Didot, Georgia, serif;
  --fp-text: "EB Garamond", Garamond, Georgia, serif;
  --fp-ui: "Montserrat", "Helvetica Neue", Arial, sans-serif;
}
html { background: var(--fp-ivory); }
body.foliere-page { margin: 0; background: var(--fp-ivory); color: var(--fp-charcoal); font: 400 19px/1.7 var(--fp-text); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.foliere-page *, .foliere-page *::before, .foliere-page *::after { box-sizing: border-box; }
.foliere-page a { color: var(--fp-ink); text-decoration-color: var(--fp-gold); text-underline-offset: .2em; text-decoration-thickness: 1px; }
.foliere-page a:hover { color: var(--fp-claret); }
.foliere-page :focus-visible { outline: 2px solid var(--fp-gold); outline-offset: 3px; }
.fp-skip { position: absolute; left: -9999px; top: 8px; background: var(--fp-ink); color: var(--fp-ivory) !important; padding: 8px 14px; font: 500 12px var(--fp-ui); letter-spacing: .12em; text-transform: uppercase; z-index: 10; }
.fp-skip:focus { left: 12px; }

/* header */
.fp-hdr { border-bottom: 1px solid var(--fp-line); background: var(--fp-paper); }
.fp-in { max-width: 1180px; margin: 0 auto; padding: 0 max(20px, env(safe-area-inset-left, 0px)); }
.fp-hdr .fp-in { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; min-height: 76px; gap: 20px; }
.fp-nav { display: flex; flex-wrap: wrap; gap: 6px 22px; }
.fp-nav a, .fp-cart, .fp-links a { font: 500 11px/1.4 var(--fp-ui); letter-spacing: .16em; text-transform: uppercase; text-decoration: none; color: var(--fp-ink); }
.fp-logo { display: block; line-height: 0; color: var(--fp-ink); }
.fp-logo svg { width: 132px; height: auto; fill: currentColor; }
.fp-cart { justify-self: end; }

/* content */
.fp-main { max-width: 760px; margin: 0 auto; padding: 72px max(20px, env(safe-area-inset-left, 0px)) 96px; outline: none; }
.fp-article { text-align: left; }
.fp-eye { margin: 0 0 14px; font: 500 11px/1.4 var(--fp-ui); letter-spacing: .2em; text-transform: uppercase; color: var(--fp-taupe-d); }
.fp-title { margin: 0; font: 400 clamp(38px, 6vw, 60px)/1.06 var(--fp-display); color: var(--fp-ink); letter-spacing: -.01em; text-wrap: balance; }
.fp-title em { font-style: italic; }
.fp-rule { display: flex; align-items: center; gap: 10px; margin: 28px 0 36px; }
.fp-rule::before, .fp-rule::after { content: ""; height: 1px; width: 56px; background: var(--fp-gold); }
.fp-rule span { width: 6px; height: 6px; transform: rotate(45deg); border: 1px solid var(--fp-gold); }
.fp-thumb { margin: 0 0 32px; }
.fp-thumb img { width: 100%; height: auto; display: block; }
.fp-content > * + * { margin-top: 1.1em; }
.fp-content p { margin: 0; }
.fp-content h2 { margin: 1.9em 0 .4em; font: 400 32px/1.15 var(--fp-display); color: var(--fp-ink); }
.fp-content h3 { margin: 1.6em 0 .3em; font: 500 13px/1.4 var(--fp-ui); letter-spacing: .16em; text-transform: uppercase; color: var(--fp-ink); }
.fp-content h4 { margin: 1.4em 0 .2em; font: italic 400 22px/1.3 var(--fp-display); }
.fp-content ul, .fp-content ol { padding-left: 1.3em; }
.fp-content li + li { margin-top: .35em; }
.fp-content blockquote { margin: 1.6em 0; padding: 4px 0 4px 24px; border-left: 1px solid var(--fp-gold); font-style: italic; font-size: 22px; color: var(--fp-ink); }
.fp-content img { max-width: 100%; height: auto; }
.fp-content figure { margin: 1.6em 0; }
.fp-content figcaption, .fp-content .wp-element-caption { font: 400 12px/1.5 var(--fp-ui); color: var(--fp-taupe-d); margin-top: 8px; }
.fp-content table { width: 100%; border-collapse: collapse; font-size: 17px; }
.fp-content th, .fp-content td { text-align: left; padding: 10px 8px; border-bottom: 1px solid var(--fp-line); vertical-align: top; }
.fp-content th { font: 500 11px var(--fp-ui); letter-spacing: .14em; text-transform: uppercase; }
.fp-content hr { border: 0; border-top: 1px solid var(--fp-line); margin: 2.4em 0; }
.fp-content .wp-block-button__link, .fp-content .button { display: inline-block; padding: 14px 26px; border: 1px solid var(--fp-ink); background: var(--fp-ink); color: var(--fp-ivory); font: 500 11px var(--fp-ui); letter-spacing: .18em; text-transform: uppercase; text-decoration: none; border-radius: 0; }
.fp-content .alignwide { margin-left: -80px; margin-right: -80px; max-width: none; }
.fp-content .alignfull { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); max-width: 100vw; }
.fp-content .aligncenter { margin-left: auto; margin-right: auto; display: block; }
.fp-back { margin-top: 64px; }
.fp-back a { font: 500 11px var(--fp-ui); letter-spacing: .18em; text-transform: uppercase; }
.fp-list { display: grid; gap: 48px; }
.fp-item h2 { margin: 0 0 8px; font: 400 32px/1.15 var(--fp-display); }
.fp-item h2 a { text-decoration: none; }
.fp-pager { display: flex; justify-content: space-between; gap: 20px; margin-top: 56px; font: 500 12px var(--fp-ui); letter-spacing: .1em; }
.fp-empty { color: var(--fp-taupe-d); }
.fp-404 { text-align: center; }
.fp-404 .fp-rule { justify-content: center; }

/* footer */
.fp-ft { background: #101010; color: #E9E2D6; padding: 64px 0 40px; }
.fp-ft .fp-in { display: grid; gap: 22px; justify-items: center; text-align: center; }
.fp-ft .fp-logo { color: #F5F0E8; }
.fp-ft .fp-logo svg { width: 150px; }
.fp-line { margin: 0; font: italic 400 20px var(--fp-display); color: #E9E2D6; }
.fp-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 24px; }
.fp-ft .fp-links a { color: #E9E2D6; }
.fp-fine { margin: 10px 0 0; max-width: 70ch; font: 400 11px/1.6 var(--fp-ui); letter-spacing: .04em; color: #A79C8D; }

/* the block editor (add_editor_style) */
.editor-styles-wrapper { font: 400 19px/1.7 var(--fp-text); color: var(--fp-charcoal); background: var(--fp-ivory); }
.editor-styles-wrapper h1, .editor-styles-wrapper h2 { font-family: var(--fp-display); font-weight: 400; color: var(--fp-ink); }

@media (max-width: 760px) {
  .fp-hdr .fp-in { grid-template-columns: 1fr auto; grid-template-areas: "logo cart" "nav nav"; padding-top: 14px; padding-bottom: 14px; }
  .fp-logo { grid-area: logo; }
  .fp-cart { grid-area: cart; }
  .fp-nav { grid-area: nav; gap: 6px 16px; }
  .fp-main { padding-top: 48px; }
  .fp-content .alignwide { margin-left: 0; margin-right: 0; }
}

/* Instagram */
.fp-follow { display: flex; align-items: center; gap: 14px; margin: 0; font: 500 11px/1.4 var(--fp-ui); letter-spacing: .22em; text-transform: uppercase; color: #A79C8D; }
.fp-ft .ig-link { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; color: #E9E2D6; text-decoration: none; font: 400 13px/1.4 var(--fp-ui); letter-spacing: .08em; text-transform: none; }
.fp-ft .ig-link svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.2; }
.fp-ft .ig-link:hover span, .fp-ft .ig-link:focus-visible span { text-decoration: underline; text-underline-offset: 4px; }
