/*
Theme Name: Cece Bold Blue
Author: Cece
Description: An editorial scrapbook block theme with paper textures, postage stamps, Polaroid journal cards, and handwritten notes.
Version: 1.2.0
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cece-bold-blue
Tags: blog, block-patterns, full-site-editing, custom-colors, custom-logo, editor-style, featured-images, wide-blocks
*/
html { scroll-behavior: smooth; scroll-padding-top: 2rem; }
body, .editor-styles-wrapper {
 background-color: #fff9f3;
 background-image: url('assets/paper.svg');
 color: #443223;
}
* { box-sizing: border-box; }
a { text-underline-offset: .2em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #44422d; outline-offset: 5px; }
img { max-width: 100%; height: auto; }
.wp-site-blocks { padding-top: 0; padding-bottom: 0; }
:is(.cece-label, .is-style-archival-label) { font-family: 'Sanchez', serif; font-size: .75rem; letter-spacing: .15em; text-transform: uppercase; color: #72583e; }
:is(.cece-handwritten, .is-style-handwritten) { font-family: 'Give You Glory', cursive; font-size: clamp(1.4rem, 2.5vw, 1.85rem); line-height: 1.65; color: #755151; }
.cece-masthead { padding: 2.5rem 0 2rem; border-bottom: 1px solid #dbCAA5; }
.cece-masthead .wp-block-site-title { margin-block: 1rem .5rem; }
.wp-block-site-title a { color: #44422d; text-decoration: none; }
.cece-masthead :is(.cece-handwritten, .is-style-handwritten) { margin-top: .6rem; }
/* Original supplied stamp artwork; only the background viewport is adjusted
   to account for white margins. Images are never stretched or edited. */
.cece-stamp-nav { margin-top: 2rem; }
.cece-stamp-nav .wp-block-navigation__container { gap: 1rem; align-items: center; }
.cece-stamp-nav .wp-block-navigation-item { padding: 0; background: none; }
.cece-stamp-nav .wp-block-navigation-item__content { display: flex; align-items: flex-end; justify-content: center; width: clamp(7rem, 14vw, 10rem); aspect-ratio: .9; padding: 0 .6rem 1.15rem; background-color: transparent; background-repeat: no-repeat; background-position: center; border: 0; color: #44422d; text-decoration: none; transition: transform 180ms ease; }
.cece-stamp-nav .wp-block-navigation-item__label { display: inline-block; padding: .1rem .55rem; background: #fff9f3; border: 1px solid #dbCAA5; box-shadow: 0 1px 3px #44322318; font-family: 'Sanchez', serif; font-size: .875rem; line-height: 1.6; text-align: center; }
.cece-stamp-nav .cece-stamp-home .wp-block-navigation-item__content { background-image: url('assets/stamps/home.png'); background-size: auto 115%; }
.cece-stamp-nav .cece-stamp-journal .wp-block-navigation-item__content { background-image: url('assets/stamps/journal.png'); background-size: auto 115%; }
.cece-stamp-nav .cece-stamp-about .wp-block-navigation-item__content { background-image: url('assets/stamps/about.png'); background-size: auto 104%; }
.cece-stamp-nav .cece-stamp-links .wp-block-navigation-item__content { background-image: url('assets/stamps/links.png'); background-size: auto 108%; }
.cece-stamp-nav .cece-stamp-freebies .wp-block-navigation-item__content { background-image: url('assets/stamps/freebies.png'); background-size: auto 94%; }
.cece-stamp-nav .wp-block-navigation-item__content:hover .wp-block-navigation-item__label { text-decoration: underline; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
 .cece-stamp-nav .wp-block-navigation-item__content:hover { transform: translateY(-4px) rotate(-1deg); }
}
.cece-opening { padding-block: clamp(2rem, 7vw, 5rem); position: relative; }
.cece-opening::before, .cece-opening::after { content: '✷'; display: block; position: absolute; font-size: 3rem; color: #7c7960; opacity: .45; top: 42%; }
.cece-opening::before { left: 2%; }.cece-opening::after { right: 2%; }
.cece-opening h1 { margin-block: 1rem 1.5rem; }
.cece-opening > p:not(:is(.cece-label, .is-style-archival-label)):not(:is(.cece-handwritten, .is-style-handwritten)) { max-width: 37rem; }
.cece-section { margin-block: 3rem 5rem; }
.cece-section h2 { font-size: clamp(2rem, 4vw, 3rem); }
/* Instant-photograph cards: generous images and a deeper caption frame. */
.cece-polaroids { gap: clamp(1.5rem, 3vw, 2.5rem) !important; padding-block: 1.5rem 2.5rem; align-items: stretch; }
.cece-polaroids > li { min-width: 0; display: flex; }
:is(.cece-polaroid, .is-style-polaroid) { width: 100%; height: 100%; background: #fffcf8; padding: .7rem .7rem 2rem; border: 1px solid #dbCAA5; box-shadow: 1px 2px 3px #44322310, 4px 9px 18px #44322318; transform: rotate(-1.2deg); }
.cece-polaroids .cece-polaroid { display: flex; flex-direction: column; overflow-wrap: anywhere; }
.cece-polaroids > li:nth-child(3n + 2) .cece-polaroid { transform: translateY(.65rem) rotate(1.3deg); }
.cece-polaroids > li:nth-child(3n) .cece-polaroid { transform: rotate(-.5deg); }
.cece-polaroid .wp-block-post-featured-image { width: 100%; margin: 0 0 1.25rem; background: #dbCAA5; }
.cece-polaroid .wp-block-post-featured-image a { display: block; }
.cece-polaroid .wp-block-post-featured-image img { display: block; width: 100%; height: auto; aspect-ratio: 1 / 1 !important; object-fit: cover; filter: none; }
.cece-polaroid .wp-block-post-title { font-size: clamp(1.6rem, 2.4vw, 2rem); line-height: 1.15; font-weight: 600; margin: 0 .5rem .6rem; }
.cece-polaroid .wp-block-post-title a { color: #44422d; text-decoration: none; }
.cece-polaroid .wp-block-post-title a:hover { text-decoration: underline; }
.cece-polaroid .wp-block-post-date { order: 1; font-family: 'Sanchez', serif; font-size: .75rem; letter-spacing: .04em; line-height: 1.6; color: #72583e; margin: 0 .5rem .75rem; }
.cece-polaroid .wp-block-post-title { order: 0; }
.cece-polaroid .wp-block-post-featured-image { order: -1; }
.cece-polaroid .wp-block-post-excerpt { order: 2; display: flex; flex-direction: column; flex: 1; font-size: .95rem; line-height: 1.7; margin: 0 .5rem; }
.cece-polaroid .wp-block-post-excerpt__excerpt { margin: 0 0 .8rem; }
.cece-polaroid .wp-block-post-excerpt__more-text { margin: auto 0 0; padding-top: .5rem; }
.cece-polaroid .wp-block-post-excerpt__more-link { font-family: 'Sanchez', serif; font-size: .8rem; }
:is(.cece-note, .is-style-journal-note) { position: relative; padding: clamp(1.5rem, 5vw, 4rem); border: 1px solid #dbCAA5; background: repeating-linear-gradient(transparent, transparent 35px, #72583e0e 35px, #72583e0e 36px), #f5ecd9; box-shadow: 3px 5px 0 #dbCAA550; }
:is(.cece-note, .is-style-journal-note)::before { content: ''; position: absolute; width: 7rem; height: 1.7rem; background: #75839750; top: -.7rem; left: calc(50% - 3.5rem); transform: rotate(-4deg); }
:is(.cece-note, .is-style-journal-note) h2:is(.cece-handwritten, .is-style-handwritten) { font-size: clamp(2.5rem, 5vw, 3.5rem); font-weight: 400; }
:is(.cece-postcard, .is-style-vintage-postcard) { position: relative; padding: clamp(1.5rem, 5vw, 4rem); background: #dbCAA535; border: 1px solid #72583e; outline: 1px solid #72583e; outline-offset: -8px; }
:is(.cece-postcard, .is-style-vintage-postcard)::after { content: 'POST\a CARD'; white-space: pre; position: absolute; top: 1.5rem; right: 1.5rem; font: .65rem/1.6 'Sanchez', serif; letter-spacing: .1em; text-align: center; color: #72583e; border: 2px dotted #72583e; padding: .5rem; transform: rotate(7deg); }
:is(.cece-postcard, .is-style-vintage-postcard) :is(.cece-label, .is-style-archival-label) { padding-right: 5rem; }
.cece-signup-placeholder { border-top: 1px dashed #72583e; padding-top: 1rem; font-size: .9rem; }
.cece-footer { padding-block: 2.5rem; border-top: 1px solid #72583e; text-align: center; }
.cece-footer .wp-block-social-links { gap: 1.5rem; }
.wp-block-post-content { overflow-wrap: anywhere; }
@media (max-width: 1000px) {
 .cece-polaroids { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
 .cece-polaroids > li:nth-child(n) .cece-polaroid { transform: rotate(-.6deg); }
 .cece-polaroids > li:nth-child(2n) .cece-polaroid { transform: rotate(.6deg); }
 .cece-opening::before, .cece-opening::after { display: none; }
}
@media (max-width: 600px) {
 .cece-masthead { padding-top: 1.5rem; }
 .cece-stamp-nav .wp-block-navigation__container { gap: .5rem; }
 .cece-stamp-nav .wp-block-navigation-item__content { width: clamp(5.3rem, 25vw, 7rem); padding: 0 .35rem .7rem; }
 .cece-stamp-nav .wp-block-navigation-item__label { font-size: .8rem; }
 .cece-polaroids { grid-template-columns: minmax(0, 1fr) !important; gap: 1.5rem !important; }
 :is(.cece-polaroid, .is-style-polaroid) { transform: none !important; }
 .cece-section { margin-block: 2rem 3rem; }
 :is(.cece-label, .is-style-archival-label) { letter-spacing: .1em; }
 :is(.cece-postcard, .is-style-vintage-postcard)::after { top: 1rem; right: 1rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .cece-stamp-nav .wp-block-navigation-item__content { transition: none; } }

/* Reusable photo and button styles also work outside the homepage. */
.wp-block-image.is-style-polaroid-photo { background: #fffcf8; padding: .8rem .8rem 1.3rem; border: 1px solid #dbCAA5; box-shadow: 2px 5px 12px #44322318; }
.wp-block-image.is-style-polaroid-photo figcaption { font-family: 'Give You Glory', cursive; color: #755151; font-size: 1.25rem; }
.wp-block-button.is-style-postage-stamp { padding: .35rem; background: radial-gradient(circle at 4px 4px, transparent 3px, #dbCAA5 3.5px) -4px -4px / 8px 8px; }
.wp-block-button.is-style-postage-stamp .wp-block-button__link { background: #fff9f3; color: #44422d; border: 1px solid #72583e; border-radius: 0; min-height: 44px; }
.wp-block-social-links .wp-social-link a { min-width: 44px; min-height: 44px; justify-content: center; }
.cece-stamp-nav .wp-block-navigation-item__content { min-height: 44px; }

.cece-home-content .wp-block-list a, .is-style-journal-note .wp-block-list a { display: inline-block; min-height: 44px; padding-block: .45rem; }
