/*
Theme Name: Scarlett Jane — Kadence Child
Theme URI: https://herdailyoutfits.com/
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Description: A polished fashion editorial child theme for Kadence, inspired by a colorful, creator-led magazine layout.
Author: Scarlett Jane
Author URI: https://herdailyoutfits.com/
Template: kadence
Version: 1.2.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: scarlett-jane-kadence-child
*/

:root {
  --sj-ink: #263a40;
  --sj-muted: #5a686b;
  --sj-teal: #579b9a;
  --sj-teal-dark: #427f80;
  --sj-peach: #f8c9be;
  --sj-cream: #fbf8f5;
  --sj-line: #e9e2dc;
  --sj-white: #fff;
  --sj-serif: Georgia, 'Times New Roman', serif;
  --sj-sans: 'Avenir Next', Avenir, 'Segoe UI', Arial, sans-serif;
  --sj-script: 'Segoe Script', 'Brush Script MT', cursive;
  --sj-wrap: 1240px;
  --sj-shadow: 0 8px 26px rgba(43, 55, 57, .09);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--sj-ink); background: var(--sj-white); font-family: var(--sj-sans); font-size: 16px; line-height: 1.7; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--sj-teal-dark); }
img { max-width: 100%; height: auto; }
.sj-wrap { width: min(var(--sj-wrap), calc(100% - 56px)); margin-inline: auto; }
.sj-skip { position: absolute; left: -9999px; z-index: 999; background: white; padding: 10px; }
.sj-skip:focus { left: 10px; top: 10px; }
.sj-announcement { background: var(--sj-teal); color: white; min-height: 42px; font-size: 13px; letter-spacing: .02em; }
.sj-announcement .sj-wrap { min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.sj-announcement-note:before { content: '✧'; font-size: 19px; margin-right: 12px; }
.sj-announcement a { color: var(--sj-ink); background: #d9ece7; align-self: stretch; display: flex; align-items: center; padding: 0 18px; }
.sj-announcement a:after { content: '➜'; display: inline-grid; place-items: center; width: 25px; height: 25px; margin-left: 12px; border-radius: 50%; background: var(--sj-teal); color: white; }
.sj-brand-row { min-height: 78px; border-bottom: 1px solid #f1efed; display: flex; align-items: center; }
.sj-brand-inner { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.sj-brand { font: 600 34px/1 var(--sj-serif); letter-spacing: .075em; text-transform: uppercase; white-space: nowrap; }
.sj-brand .sj-script { display: block; font: 28px/.9 var(--sj-script); letter-spacing: 0; text-transform: none; color: var(--sj-teal-dark); text-align: center; }
.sj-brand-name { display: block; margin-top: 4px; }
.sj-brand img { max-height: 66px; width: auto; }
.sj-menu, .sj-categories { list-style: none; display: flex; align-items: center; gap: clamp(16px, 2.3vw, 34px); padding: 0; margin: 0; }
.sj-menu { font-size: 14px; }
.sj-menu li { position: relative; }
.sj-menu a { display: inline-flex; align-items: center; min-height: 48px; }
.sj-menu .sub-menu { display: none; position: absolute; z-index: 20; top: 100%; left: -16px; min-width: 210px; padding: 8px 16px; background: white; box-shadow: var(--sj-shadow); list-style: none; }
.sj-menu li:hover > .sub-menu, .sj-menu li:focus-within > .sub-menu { display: block; }
.sj-cart { border: 1px solid var(--sj-line); border-radius: 50%; width: 36px; height: 36px; display: grid; place-items: center; font-size: 13px; }
.sj-nav-row { min-height: 49px; border-bottom: 1px solid #f3f0ed; }
.sj-nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: inherit; }
.sj-categories { gap: 29px; font-size: 14px; }
.sj-categories a { padding-block: 10px; }
.sj-categories li:first-child a { color: #e59f92; letter-spacing: .16em; font-weight: 800; }
.sj-social { display: flex; gap: 9px; }
.sj-social a { width: 33px; height: 33px; border: 1px solid #e7b4aa; border-radius: 50%; display: grid; place-items: center; color: var(--sj-teal-dark); font-size: 12px; font-weight: 700; }
.sj-mobile-toggle { display: none; border: 0; background: none; font-size: 25px; color: var(--sj-ink); }
.sj-home-hero { background: linear-gradient(#fcfaf8 0%, #fff 100%); padding: 58px 0 54px; position: relative; overflow: hidden; }
.sj-home-hero:before { content: ''; position: absolute; height: 34px; left: -2%; right: -2%; top: -18px; background: white; border-radius: 50%; }
.sj-hero-grid { display: grid; grid-template-columns: 1fr 1fr .94fr; gap: 29px; align-items: stretch; position: relative; }
.sj-post-card { background: white; border: 5px solid white; box-shadow: 0 2px 12px rgba(34,48,50,.12); position: relative; min-height: 425px; overflow: hidden; }
.sj-post-card .sj-card-image { height: 100%; min-height: 425px; }
.sj-card-image { background: var(--sj-cream); display: block; overflow: hidden; position: relative; }
.sj-card-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sj-card-image .sj-placeholder { width: 100%; height: 100%; min-height: inherit; display: grid; place-items: center; background: linear-gradient(145deg,#efe5dc,#f6c9bd 55%,#d5e5dd); }
.sj-card-image .sj-placeholder img { width: min(72%, 310px); height: min(78%, 330px); object-fit: contain; mix-blend-mode: multiply; }
.sj-card-overlay { position: absolute; inset: 56% 0 0; padding: 24px 20px 18px; display: flex; flex-direction: column; justify-content: flex-end; background: linear-gradient(transparent, rgba(255,255,255,.93) 30%); }
.sj-kicker { color: var(--sj-teal-dark); text-transform: uppercase; letter-spacing: .14em; font-size: 11px; font-weight: 800; }
.sj-card-overlay h2 { font: 600 21px/1.25 var(--sj-serif); margin: 4px 0 10px; }
.sj-card-overlay p { margin: 0 0 12px; font-size: 14px; line-height: 1.6; color: #465558; }
.sj-read-more { display: inline-flex; gap: 9px; align-items: center; text-transform: uppercase; font-size: 11px; letter-spacing: .09em; font-weight: 800; }
.sj-read-more:before { content: '✧'; font-size: 19px; }
.sj-newsletter { background: var(--sj-peach); min-height: 425px; padding: 57px 30px 28px; text-align: center; position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.sj-newsletter:before { content: '✿'; position: absolute; font-size: 44px; line-height: 1; color: var(--sj-ink); top: -27px; right: 24px; transform: rotate(12deg); }
.sj-newsletter h2 { font: 600 30px/1.2 var(--sj-serif); margin: 10px 0 20px; }
.sj-newsletter p { color: #394b4e; margin: 0 auto 20px; max-width: 330px; }
.sj-form { width: 100%; max-width: 350px; display: grid; gap: 12px; }
.sj-form input { border: 1px solid #333; padding: 13px; font: inherit; min-height: 47px; background: white; }
.sj-form button, .sj-button { display: inline-flex; justify-content: center; align-items: center; border: 0; padding: 13px 24px; color: white; background: #151515; font: 700 13px var(--sj-sans); cursor: pointer; text-transform: uppercase; letter-spacing: .08em; }
.sj-form button:hover, .sj-button:hover { color: white; background: var(--sj-teal-dark); }
.sj-powered { font-family: var(--sj-serif); font-size: 16px; font-weight: bold; margin-top: 15px; }
.sj-section { padding: 65px 0; }
.sj-section--soft { background: var(--sj-cream); }
.sj-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 27px; }
.sj-overline { font: 700 12px var(--sj-sans); text-transform: uppercase; letter-spacing: .16em; color: var(--sj-teal-dark); }
.sj-section-heading h2, .sj-section-title { font: 500 clamp(30px,3.4vw,43px)/1.15 var(--sj-serif); margin: 5px 0 0; color: var(--sj-ink); }
.sj-section-heading a { text-transform: uppercase; font-weight: 800; font-size: 11px; letter-spacing: .1em; padding-bottom: 7px; }
.sj-category-strip { display: grid; grid-template-columns: repeat(6,1fr); gap: 18px; }
.sj-category-tile { text-align: center; color: var(--sj-ink); }
.sj-category-art { height: 155px; border-radius: 50%; overflow: hidden; background: linear-gradient(145deg,#eadfd5,#f6c9be 56%,#d9e8e4); display: grid; place-items: center; margin-bottom: 13px; }
.sj-category-art span { font: 44px var(--sj-serif); color: rgba(38,58,64,.8); }
.sj-category-tile strong { font: 700 12px var(--sj-sans); text-transform: uppercase; letter-spacing: .07em; }
.sj-about { display: grid; grid-template-columns: .86fr 1.14fr; gap: 60px; align-items: center; }
.sj-about-image { min-height: 370px; background: linear-gradient(140deg,#e7ded5,#f8c9be,#e0ebe6); display: grid; place-items: center; }
.sj-about-image img { width: 70%; height: 330px; object-fit: contain; mix-blend-mode: multiply; }
.sj-about-copy h2 { font: 500 clamp(32px,4vw,48px)/1.1 var(--sj-serif); margin: 8px 0 18px; }
.sj-about-copy p { color: var(--sj-muted); }
.sj-grid-posts { display: grid; grid-template-columns: repeat(4,1fr); gap: 23px; }
.sj-mini-card .sj-card-image { height: 245px; }
.sj-mini-card h3 { font: 600 19px/1.3 var(--sj-serif); margin: 13px 0 6px; }
.sj-mini-card p { font-size: 14px; color: var(--sj-muted); margin: 0 0 10px; }
.sj-explore-grid { display: grid; grid-template-columns: repeat(8,1fr); gap: 12px; }
.sj-explore-tile { text-align: center; padding: 17px 8px; background: white; border: 1px solid var(--sj-line); text-transform: uppercase; font-size: 10px; font-weight: 800; letter-spacing: .06em; }
.sj-explore-tile span { display: block; font-size: 26px; margin-bottom: 5px; color: var(--sj-teal-dark); }
.sj-library-banner { background: #d8e9e4; padding: 52px; text-align: center; position: relative; overflow: hidden; }
.sj-library-banner:after { content: '✧'; font-size: 100px; color: rgba(66,127,128,.18); position: absolute; right: 7%; top: 10px; }
.sj-library-banner h2 { font: 500 36px/1.2 var(--sj-serif); max-width: 750px; margin: 8px auto 15px; }
.sj-library-banner p { max-width: 720px; margin: 0 auto 20px; }
.sj-video-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 30px; }
.sj-video-placeholder { min-height: 350px; background: linear-gradient(135deg,#e4d8ce,#f7c8bc,#cfe1dc); display: grid; place-items: center; }
.sj-play { display: grid; place-items: center; width: 70px; height: 70px; border-radius: 50%; background: white; color: var(--sj-teal-dark); font-size: 26px; box-shadow: var(--sj-shadow); }
.sj-workshop { display: grid; grid-template-columns: 1fr 1fr; background: var(--sj-cream); align-items: center; }
.sj-workshop-art { min-height: 380px; display: grid; place-items: center; background: linear-gradient(145deg,#edddd4,#f5c8bd,#dceae4); font-size: 100px; }
.sj-workshop-copy { padding: 35px 8%; }
.sj-workshop-copy h2 { font: 500 36px/1.18 var(--sj-serif); margin: 8px 0 14px; }
.sj-lead-guide { display: grid; grid-template-columns: 1fr 1fr; background: #f4e4dc; align-items: center; }
.sj-guide-art { min-height: 330px; display: grid; place-items: center; font-size: 90px; }
.sj-guide-copy { padding: 35px 8%; }
.sj-guide-copy h2 { font: 500 36px/1.18 var(--sj-serif); margin: 8px 0 14px; }
.sj-footer { background: #263a40; color: white; padding: 48px 0 22px; }
.sj-footer-top { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 40px; padding-bottom: 28px; }
.sj-footer h2, .sj-footer h3 { color: white; font-family: var(--sj-serif); font-weight: 500; }
.sj-footer h2 { font-size: 30px; }
.sj-footer-links { list-style: none; padding: 0; margin: 0; display: grid; gap: 7px; font-size: 14px; }
.sj-footer-bottom { border-top: 1px solid rgba(255,255,255,.22); padding-top: 18px; display: flex; justify-content: space-between; gap: 20px; font-size: 12px; color: #d0d9d8; }
.sj-page { padding: 55px 0 75px; }
.sj-page h1, .sj-entry-title { font: 500 clamp(34px,5vw,54px)/1.1 var(--sj-serif); margin: 0 0 14px; }
.sj-content { max-width: 820px; margin-inline: auto; }
.sj-entry { padding: 45px 0 65px; }
.sj-entry .sj-featured { margin: 25px 0; }
.sj-entry .entry-content { color: #445457; font-size: 17px; }
.sj-entry .entry-content h2, .sj-entry .entry-content h3 { color: var(--sj-ink); font-family: var(--sj-serif); }
.sj-archive-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.sj-archive-grid .sj-card-image { height: 260px; }
.sj-pagination { margin-top: 38px; text-align: center; }
@media(max-width: 980px) {
  .sj-wrap { width: min(var(--sj-wrap), calc(100% - 36px)); }
  .sj-hero-grid { grid-template-columns: 1fr 1fr; }
  .sj-newsletter { grid-column: 1 / -1; min-height: 310px; }
  .sj-category-strip { grid-template-columns: repeat(3,1fr); }
  .sj-grid-posts { grid-template-columns: repeat(2,1fr); }
  .sj-explore-grid { grid-template-columns: repeat(4,1fr); }
}
@media(max-width: 680px) {
  .sj-announcement .sj-wrap { width: 100%; padding-left: 16px; }
  .sj-announcement { font-size: 11px; }
  .sj-announcement a { padding-inline: 10px; }
  .sj-brand-row { min-height: 68px; }
  .sj-brand { font-size: 25px; }
  .sj-brand .sj-script { font-size: 23px; }
  .sj-mobile-toggle { display: block; }
  .sj-brand-inner { flex-wrap: wrap; }
  .sj-brand-inner > .sj-menu-wrap { display: none; width: 100%; }
  .sj-brand-inner.is-open > .sj-menu-wrap { display: block; }
  .sj-menu { display: grid; gap: 0; }
  .sj-menu a { min-height: 42px; }
  .sj-nav-inner { align-items: flex-start; flex-direction: column; padding-block: 8px; }
  .sj-categories { width: 100%; overflow: auto; gap: 21px; white-space: nowrap; }
  .sj-social { display: none; }
  .sj-home-hero { padding: 34px 0; }
  .sj-hero-grid { grid-template-columns: 1fr; gap: 20px; }
  .sj-post-card, .sj-post-card .sj-card-image { min-height: 390px; }
  .sj-newsletter { grid-column: auto; }
  .sj-section { padding: 46px 0; }
  .sj-section-heading { align-items: flex-start; }
  .sj-section-heading h2 { font-size: 32px; }
  .sj-category-strip { grid-template-columns: repeat(2,1fr); }
  .sj-category-art { height: 130px; }
  .sj-about, .sj-video-grid, .sj-workshop, .sj-lead-guide { grid-template-columns: 1fr; gap: 24px; }
  .sj-about { gap: 28px; }
  .sj-about-image { min-height: 290px; }
  .sj-about-image img { height: 260px; }
  .sj-grid-posts { gap: 17px; }
  .sj-mini-card .sj-card-image { height: 190px; }
  .sj-mini-card h3 { font-size: 17px; }
  .sj-explore-grid { grid-template-columns: repeat(2,1fr); }
  .sj-library-banner { padding: 38px 20px; }
  .sj-workshop-art, .sj-guide-art { min-height: 230px; }
  .sj-footer-top { grid-template-columns: 1fr; gap: 22px; }
  .sj-footer-bottom { flex-direction: column; }
  .sj-archive-grid { grid-template-columns: 1fr 1fr; gap: 15px; }
  .sj-archive-grid .sj-card-image { height: 180px; }
  .sj-soc-label { display: none; }
}


/* Gutenberg pattern styles. Every section is assembled from core blocks. */
.sj-content-canvas > .wp-block-group.alignfull,
.sj-content-canvas > .wp-block-cover.alignfull { margin-block: 0; }
.sj-pattern-home { width: 100%; max-width: none !important; }
.sj-pattern-hero { position: relative; background: linear-gradient(180deg,#fbf8f5 0%,#fff 100%); padding: 56px 24px 48px; }
.sj-pattern-hero:before { content: ''; position: absolute; left: -2%; right: -2%; top: -16px; height: 32px; background: #fff; border-radius: 50%; }
.sj-pattern-hero-columns { position: relative; gap: 28px; }
.sj-featured-column .wp-block-post-template { gap: 25px; }
.sj-feature-card { position: relative; height: 425px; min-height: 425px; overflow: hidden; border: 5px solid white; box-shadow: 0 2px 12px rgba(34,48,50,.12); }
.sj-feature-card > .wp-block-post-featured-image { height: 100%; min-height: 415px; margin: 0; }
.sj-feature-card > .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.sj-feature-card > .wp-block-post-featured-image { background: linear-gradient(145deg,#efe5dc,#f6c9bd 55%,#d5e5dd); }
.sj-feature-card-copy { position: absolute; inset: auto 0 0; padding: 48px 19px 18px; background: linear-gradient(transparent,rgba(255,255,255,.96) 42%); }
.sj-feature-card-copy h2 { font: 600 21px/1.25 var(--sj-serif); margin: 4px 0 9px; }
.sj-feature-card-copy .wp-block-post-excerpt { margin: 0; font-size: 14px; line-height: 1.55; }
.sj-feature-card-copy .wp-block-post-excerpt__more-link { display: inline-block; margin-top: 7px; text-transform: uppercase; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.sj-kicker, .sj-pattern-home .wp-block-post-terms { color: var(--sj-teal-dark); text-transform: uppercase; letter-spacing: .14em; font-size: 11px; font-weight: 800; }
.sj-newsletter-column { display: flex; }
.sj-pattern-newsletter { width: 100%; min-height: 425px; padding: 42px 28px 26px; text-align: center; display: flex; flex-direction: column; justify-content: center; align-items: center; background: var(--sj-peach); }
.sj-pattern-newsletter h2 { font: 600 30px/1.2 var(--sj-serif); }
.sj-pattern-newsletter .wp-block-buttons { margin-top: 8px; }
.sj-pattern-newsletter .wp-block-button__link { background: #151515; color: white; padding: 13px 24px; }
.sj-pattern-section { padding-block: 64px; }
.sj-pattern-heading { align-items: end; margin-bottom: 26px; }
.sj-pattern-heading > .wp-block-group { margin: 0; }
.sj-pattern-heading h2, .sj-pattern-section > h2 { font: 500 clamp(30px,3.4vw,43px)/1.15 var(--sj-serif); margin: 4px 0 0; }
.sj-category-section { padding-top: 48px; }
.sj-category-grid { gap: 15px; }
.sj-category-tile { text-align: center; padding: 14px 8px; }
.sj-category-icon { width: 116px; height: 116px; border-radius: 50%; background: linear-gradient(145deg,#eadfd5,#f6c9be 56%,#d9e8e4); display: grid; place-items: center; margin: 0 auto 12px !important; color: var(--sj-ink); font: 44px var(--sj-serif); }
.sj-category-tile h3 { margin: 0; font: 700 12px var(--sj-sans); text-transform: uppercase; letter-spacing: .06em; }
.sj-about-section { background: var(--sj-cream); padding: 64px 24px; }
.sj-about-section .wp-block-columns { gap: 56px; }
.sj-about-section .wp-block-image { margin: 0; }
.sj-about-section .wp-block-image img { width: 100%; max-height: 410px; object-fit: cover; background: linear-gradient(140deg,#e7ded5,#f8c9be,#e0ebe6); }
.sj-about-section h2 { font: 500 clamp(32px,4vw,48px)/1.1 var(--sj-serif); }
.sj-about-section .wp-block-button__link, .sj-library-banner .wp-block-button__link { padding: 13px 24px; }
.sj-mini-card { height: 100%; }
.sj-mini-card .wp-block-post-featured-image { margin: 0 0 13px; aspect-ratio: 4 / 3; background: linear-gradient(145deg,#efe5dc,#f6c9bd 55%,#d5e5dd); overflow: hidden; }
.sj-mini-card .wp-block-post-featured-image img { height: 100%; width: 100%; object-fit: cover; }
.sj-mini-card h3, .sj-mini-card .wp-block-post-title { font: 600 19px/1.3 var(--sj-serif); margin: 8px 0 6px; }
.sj-mini-card .wp-block-post-excerpt { font-size: 14px; color: var(--sj-muted); }
.sj-mini-card .wp-block-post-excerpt__more-link { text-transform: uppercase; font-size: 11px; letter-spacing: .08em; font-weight: 800; }
.sj-library-banner { background: #d8e9e4; padding: 52px 24px; text-align: center; }
.sj-library-banner h2 { max-width: 750px; margin: 8px auto 15px; font: 500 clamp(30px,4vw,40px)/1.2 var(--sj-serif); }
.sj-library-banner > p:not(.sj-overline) { max-width: 720px; margin-inline: auto; }
.sj-latest-section { padding-bottom: 76px; }
.sj-content-canvas .wp-block-columns { margin-bottom: 0; }
.sj-content-canvas > * { max-width: var(--wp--style--global--wide-size, 1240px); margin-inline: auto; }
.sj-content-canvas > .alignfull { max-width: none; }
.sj-content-canvas > .alignwide { max-width: var(--wp--style--global--wide-size, 1240px); }
.sj-empty-home { padding-block: 80px; }
@media (max-width: 980px) {
  .sj-pattern-hero-columns { flex-wrap: wrap !important; }
  .sj-featured-column, .sj-newsletter-column { flex-basis: 100% !important; }
  .sj-pattern-newsletter { min-height: 300px; }
  .sj-category-grid { flex-wrap: wrap !important; }
  .sj-category-grid > .wp-block-column { flex-basis: 30% !important; }
}
@media (max-width: 680px) {
  .sj-pattern-hero { padding: 34px 18px; }
  .sj-featured-column .wp-block-post-template { grid-template-columns: 1fr !important; }
  .sj-feature-card { height: 390px; min-height: 390px; }
  .sj-pattern-section { padding-block: 44px; }
  .sj-about-section { padding: 42px 18px; }
  .sj-about-section .wp-block-columns { gap: 24px; }
  .sj-category-grid > .wp-block-column { flex-basis: 45% !important; }
  .sj-pattern-home .wp-block-post-template { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 17px; }
  .sj-pattern-home .sj-featured-column .wp-block-post-template { grid-template-columns: 1fr !important; }
  .sj-pattern-heading { align-items: flex-start; }
}

.sj-nav-inner { position: relative; }
.sj-search-toggle { width: 33px; height: 33px; border: 1px solid #e7b4aa; border-radius: 50%; display: grid; place-items: center; color: var(--sj-teal-dark); font: 22px/1 var(--sj-sans); background: white; cursor: pointer; }
.sj-search-panel { position: absolute; z-index: 30; top: calc(100% + 4px); right: 0; width: min(360px, 100%); padding: 14px; background: white; box-shadow: var(--sj-shadow); }
.sj-search-panel form { display: flex; gap: 8px; }
.sj-search-panel input[type="search"] { min-width: 0; flex: 1; padding: 10px; border: 1px solid var(--sj-line); font: inherit; }
.sj-search-panel input[type="submit"] { border: 0; padding: 0 14px; color: white; background: var(--sj-ink); font: 700 12px var(--sj-sans); }

.sj-database-categories { margin-top: 28px; }
.sj-database-categories h3 { font: 500 21px/1.2 var(--sj-serif); }
.sj-category-db { list-style: none; display: flex; flex-wrap: wrap; gap: 9px; padding: 0; margin: 12px 0 0; }
.sj-category-db li { margin: 0; }
.sj-category-db a { display: inline-block; padding: 7px 13px; border: 1px solid var(--sj-line); border-radius: 24px; background: white; color: var(--sj-ink); font-size: 12px; }
.sj-category-db a:hover { border-color: var(--sj-teal); color: var(--sj-teal-dark); }

.sj-search-panel[hidden] { display: none !important; }
.sj-video-section { background: var(--sj-cream); padding: 54px 24px; }
.sj-video-art { box-shadow: 0 5px 20px rgba(38,58,64,.12); }
.sj-play-icon { margin: 0; color: white; font-size: 58px; text-shadow: 0 2px 8px rgba(0,0,0,.25); }
.sj-guide-cards { gap: 18px; }
.sj-guide-tile { padding: 20px; height: 100%; text-align: center; background: white; border: 1px solid var(--sj-line); }
.sj-guide-tile .sj-category-icon { width: 86px; height: 86px; font-size: 34px; }
.sj-guide-tile h3 { font: 600 19px/1.25 var(--sj-serif); }
.sj-shop-section { background: #fff; }
.sj-workshop-banner { background: #f4e4dc; padding: 46px 24px; }
.sj-workshop-mark { font-size: 118px; line-height: 1; text-align: center; color: var(--sj-teal-dark); margin: 0; }
.sj-workshop-banner h2 { font: 500 clamp(30px,4vw,40px)/1.18 var(--sj-serif); }
.sj-occasion-section { padding-bottom: 48px; }
.sj-occasion-grid { gap: 14px; }
.sj-occasion-tile { text-align: center; padding: 12px; }
.sj-occasion-tile .sj-category-icon { width: 90px; height: 90px; font-size: 34px; }
.sj-occasion-tile h3 { font: 700 12px var(--sj-sans); text-transform: uppercase; letter-spacing: .06em; }

.sj-custom-logo .custom-logo-link { display: inline-flex; align-items: center; }

/* Optional Elementor page template. Its widgets and containers remain editable in Elementor. */
.sj-el-home, .sj-el-section { width: min(1240px, calc(100% - 48px)); margin-inline: auto; }
.sj-el-hero { width: 100%; max-width: none; padding: 52px max(24px,calc((100% - 1240px)/2)); background: linear-gradient(180deg,#fbf8f5,#fff); gap: 26px; align-items: stretch; }
.sj-el-featured-cards { flex: 2 1 62%; gap: 22px; }
.sj-el-story-card { flex: 1 1 46%; min-width: 250px; background: #fff; border: 5px solid #fff; box-shadow: 0 2px 12px rgba(34,48,50,.12); overflow: hidden; padding: 0 18px 20px; }
.sj-el-story-card .sj-el-image { margin: 0 -18px 15px; }
.sj-el-image img { display:block; width:100%; max-height:260px; object-fit:cover; background:linear-gradient(145deg,#efe5dc,#f6c9bd 55%,#d5e5dd); }
.sj-el-story-card .elementor-widget-heading h2 { font:600 21px/1.25 var(--sj-serif); }
.sj-el-kicker h5, .sj-el-overline p { color:var(--sj-teal-dark); text-transform:uppercase; letter-spacing:.14em; font-size:11px; font-weight:800; }
.sj-el-newsletter { flex: 1 1 31%; min-width: 260px; padding: 38px 28px; text-align:center; background:var(--sj-peach); justify-content:center; align-items:center; }
.sj-el-newsletter .elementor-widget-button { width:100%; }
.sj-el-newsletter .elementor-button { display:block; background:#151515; }
.sj-el-section { padding-block:60px; }
.sj-el-category-list { justify-content:space-between; gap:14px; flex-wrap:wrap; }
.sj-el-category-tile { flex:1 1 140px; text-align:center; align-items:center; }
.sj-el-category-icon p { width:116px; height:116px; border-radius:50%; display:grid; place-items:center; margin:0 auto 10px; background:linear-gradient(145deg,#eadfd5,#f6c9be 56%,#d9e8e4); color:var(--sj-ink); font:44px var(--sj-serif); }
.sj-el-about { width:100%; max-width:none; padding:60px max(24px,calc((100% - 1240px)/2)); align-items:center; gap:56px; background:var(--sj-cream); }
.sj-el-about > .elementor-element { flex:1 1 45%; }
.sj-el-about-copy { flex:1 1 55%; }
.sj-el-post-grid { gap:20px; align-items:stretch; flex-wrap:wrap; }
.sj-el-post-card { flex:1 1 21%; min-width:210px; }
.sj-el-post-card .sj-el-image img { aspect-ratio:4/3; }
.sj-el-post-card .elementor-widget-heading h3 { font:600 19px/1.3 var(--sj-serif); }
.sj-el-cta { width:100%; max-width:none; padding:44px max(24px,calc((100% - 1240px)/2)); background:#d8e9e4; align-items:center; justify-content:space-between; }
.sj-el-guide { width:100%; max-width:none; padding:48px 24px; background:#f4e4dc; text-align:center; align-items:center; }
.sj-el-guide > .elementor-element { max-width:760px; }
.sj-el-guide .elementor-widget-button { align-self:center; }
.sj-el-story-card .elementor-widget-button .elementor-button, .sj-el-post-card .elementor-widget-button .elementor-button { padding:0; color:var(--sj-ink); background:transparent; text-transform:uppercase; font-size:11px; font-weight:800; letter-spacing:.08em; }
@media(max-width:980px){.sj-el-hero{flex-wrap:wrap}.sj-el-featured-cards{flex-basis:100%}.sj-el-newsletter{flex-basis:100%}.sj-el-post-card{flex-basis:45%}}
@media(max-width:680px){.sj-el-hero{padding:34px 18px}.sj-el-featured-cards{flex-direction:column}.sj-el-story-card{min-width:0}.sj-el-section{padding-block:42px}.sj-el-about{padding:42px 18px;flex-direction:column}.sj-el-category-list{justify-content:center}.sj-el-post-grid{flex-direction:column}.sj-el-post-card{min-width:0}.sj-el-cta{padding:36px 20px;flex-direction:column;align-items:flex-start}.sj-el-guide{padding:38px 20px}}
