/* Stolen Hearts — content creation showcase (homepage, after "A few of our favourites"). Scoped to #sh-content-creation. */
#sh-content-creation{--shcc-ink:#1d2120;--shcc-ink-deep:#171a19;--shcc-paper:#f8f6f3;--shcc-next:#0a0a0a;--shcc-rose:#c58d87;--shcc-serif:"Stolen Hearts Serif","Cormorant Garamond",Georgia,serif;--shcc-card-width:clamp(205px,16vw,272px);--shcc-gap:clamp(34px,3.4vw,52px);position:relative;isolation:isolate;background:var(--shcc-ink);color:var(--shcc-paper);margin:0;overflow:clip;font:400 16px/1.6 Lato,Arial,sans-serif;scroll-margin-top:82px}
#sh-content-creation *,#sh-content-creation *::before,#sh-content-creation *::after{box-sizing:border-box}

/* Banner: Natasha & James, toned to sit in the dark section, soft waves top and bottom */
#sh-content-creation .shcc-banner{position:relative;width:100%;height:clamp(340px,33vw,540px);overflow:hidden;background:var(--shcc-ink)}
#sh-content-creation .shcc-banner img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;margin:0;border:0;filter:grayscale(1) brightness(.62) contrast(1.12)}
#sh-content-creation .shcc-banner::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 70% 85% at 55% 42%,transparent 40%,#0c0f0e8c 100%),linear-gradient(0deg,var(--shcc-ink) 2%,transparent 38%)}
#sh-content-creation .shcc-wave{position:absolute;left:0;width:100%;display:block;z-index:2;pointer-events:none}
#sh-content-creation .shcc-wave-top{top:-1px;height:clamp(34px,5vw,72px);fill:var(--shcc-paper)}
#sh-content-creation .shcc-wave-bottom{bottom:-1px;height:clamp(44px,6.5vw,96px);fill:var(--shcc-ink)}
#sh-content-creation .shcc-banner-note{position:absolute;z-index:3;margin:0;color:#ece6de;font:400 clamp(10px,.82vw,12.5px)/2 var(--shcc-serif);letter-spacing:.38em;text-transform:uppercase;text-shadow:0 1px 12px #0009;white-space:pre-line}
#sh-content-creation .shcc-banner-note::after{content:"";display:block;width:26px;height:1px;margin-top:16px;background:#ece6de99}
#sh-content-creation .shcc-banner-left{left:clamp(24px,4.4vw,72px);top:42%}
#sh-content-creation .shcc-banner-right{right:clamp(24px,3.6vw,60px);top:40%}

/* Body */
#sh-content-creation .shcc-showcase{position:relative;padding:clamp(18px,2vw,34px) 0 clamp(96px,8vw,128px);background:radial-gradient(ellipse 60% 48% at 50% 52%,#2b302e 0%,transparent 70%)}
#sh-content-creation .shcc-showcase::before,#sh-content-creation .shcc-showcase::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:clamp(220px,24vw,400px);height:480px;background:url('/wp-content/mu-plugins/stolenhearts-leaf-shadow.svg') center/contain no-repeat;opacity:.075}
#sh-content-creation .shcc-showcase::before{left:-70px;top:-20px;transform:rotate(160deg)}
#sh-content-creation .shcc-showcase::after{right:-70px;bottom:40px;transform:rotate(-15deg)}
#sh-content-creation .shcc-heading{width:min(90%,1050px);margin:0 auto;text-align:center}
#sh-content-creation .shcc-eyebrow{font:400 11px/1.5 Lato,Arial,sans-serif;letter-spacing:.34em;text-transform:uppercase;color:var(--shcc-rose);margin:0 0 20px}
#sh-content-creation h2{font:400 clamp(42px,5vw,78px)/1.06 var(--shcc-serif)!important;letter-spacing:-.02em;color:var(--shcc-paper);margin:0;text-transform:none}
#sh-content-creation h2 em{font-family:inherit;font-style:italic;font-weight:400;color:var(--shcc-rose)}
#sh-content-creation .shcc-intro{font:400 clamp(15px,1.15vw,17.5px)/1.75 Lato,Arial,sans-serif;color:#d9dad5;max-width:560px;margin:22px auto 0;text-wrap:pretty}

/* Carousel: native scroll-snap track; JS curves the lineup (rotate/scale per card) */
#sh-content-creation .shcc-carousel{position:relative;margin:clamp(6px,1vw,16px) auto 0;max-width:1920px}
#sh-content-creation .shcc-carousel::after{content:"";position:absolute;left:18%;right:18%;bottom:22px;height:60px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,#000a 0%,transparent 70%);filter:blur(6px)}
#sh-content-creation .shcc-track{display:flex;align-items:center;gap:var(--shcc-gap);width:100%;padding:clamp(56px,5vw,78px) max(20px,calc((100% - var(--shcc-card-width))/2)) clamp(64px,5.4vw,86px);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y;overscroll-behavior-x:contain;scroll-behavior:smooth}
#sh-content-creation .shcc-track::-webkit-scrollbar{display:none}
#sh-content-creation .shcc-track.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;user-select:none}
#sh-content-creation .shcc-card{position:relative;flex:0 0 var(--shcc-card-width);width:var(--shcc-card-width);min-width:0;margin:0;scroll-snap-align:center;transform-origin:50% 50%;will-change:transform;backface-visibility:hidden}
#sh-content-creation .shcc-float{animation:shcc-float 7s ease-in-out infinite;animation-delay:calc(var(--shcc-i,0) * -1.3s)}
@keyframes shcc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

/* Glass / acrylic frame */
#sh-content-creation .shcc-cover{position:relative;aspect-ratio:9/16;width:100%;overflow:hidden;border-radius:18px;background:#2a302d;border:1px solid #ffffff3d;box-shadow:0 22px 40px #03050466,0 2px 0 #ffffff0d inset;transition:border-color .45s,box-shadow .45s,transform .45s cubic-bezier(.2,.7,.2,1)}
#sh-content-creation .shcc-cover::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;background:linear-gradient(155deg,#ffffff1f 0%,#ffffff05 26%,transparent 42%);box-shadow:inset 0 0 0 4px #ffffff0a,inset 0 1px 0 #ffffff59}
#sh-content-creation .shcc-cover::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,#0d100fd9 0%,#0d100f66 22%,transparent 46%)}
#sh-content-creation .shcc-card.is-active .shcc-cover{border-color:#f1e6dacc;box-shadow:0 30px 60px #02030399,0 0 0 1px #ffffff14,0 0 36px #eadccd24}
#sh-content-creation .shcc-card:hover .shcc-cover{transform:translateY(-6px)}
#sh-content-creation .shcc-cover img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;max-width:none;margin:0;border:0;pointer-events:none;-webkit-user-drag:none}
#sh-content-creation .shcc-caption{position:absolute;z-index:3;left:12%;right:12%;bottom:clamp(20px,9%,34px);margin:0;text-align:center;color:#f3eee7;font:400 clamp(10px,.8vw,12px)/1.75 var(--shcc-serif);letter-spacing:.34em;text-transform:uppercase;text-shadow:0 1px 10px #000a;white-space:pre-line;transition:opacity .4s}
#sh-content-creation .shcc-caption::after{content:"";display:block;width:20px;height:1px;margin:12px auto 0;background:#f3eee799}
#sh-content-creation .shcc-card:not(.is-near) .shcc-caption{opacity:.55}

/* Controls */
#sh-content-creation .shcc-arrow{position:absolute;z-index:30;top:calc(50% - 24px);width:48px;height:48px;min-width:0;display:grid;place-items:center;margin:0;padding:0;border:1px solid #eed5ca55;border-radius:50%;background:#bc827ef0;color:#fff;box-shadow:0 6px 22px #0008;cursor:pointer;transition:background .2s,opacity .2s,transform .2s}
#sh-content-creation .shcc-arrow::after,#sh-content-creation .shcc-play::after,#sh-content-creation .shcc-close::after{display:none}
#sh-content-creation .shcc-arrow svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#sh-content-creation .shcc-prev{left:clamp(14px,2.6vw,46px)}
#sh-content-creation .shcc-next{right:clamp(14px,2.6vw,46px)}
#sh-content-creation .shcc-arrow:hover{background:#cd9690;transform:scale(1.06)}
#sh-content-creation .shcc-arrow:disabled{opacity:.3;cursor:default;transform:none}
#sh-content-creation :focus-visible{outline:2px solid #dfafa5;outline-offset:6px}
#sh-content-creation .shcc-track:focus-visible{outline-offset:-7px}

/* CTA + features */
#sh-content-creation .shcc-more{display:flex;align-items:center;justify-content:center;gap:24px;width:max-content;max-width:90%;min-height:60px;margin:clamp(4px,.6vw,10px) auto 0;padding:17px 40px;border:1px solid #dca69a55;border-radius:999px;background:#bc827e;color:#fff;text-decoration:none;font:400 11px/1.5 Lato,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;box-shadow:0 12px 30px #0006;transition:background .2s,transform .2s}
#sh-content-creation .shcc-more>span{font-size:22px;line-height:1;letter-spacing:0}
#sh-content-creation .shcc-more:hover{background:#ce9790;transform:translateY(-2px)}
#sh-content-creation .shcc-features{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;width:min(86%,820px);margin:clamp(56px,5vw,76px) auto 0;padding:0}
#sh-content-creation .shcc-features li{list-style:none;margin:0;padding:4px 20px;text-align:center;border-right:1px solid #d6c4b829}
#sh-content-creation .shcc-features li:last-child{border:0}
#sh-content-creation .shcc-features svg{display:block;width:28px;height:28px;fill:none;stroke:var(--shcc-rose);stroke-width:1.2;stroke-linejoin:round;margin:0 auto 16px}
#sh-content-creation .shcc-features span{display:block;font:400 clamp(11px,.85vw,12.5px)/1.8 var(--shcc-serif);text-transform:uppercase;letter-spacing:.3em;color:#e2ddd5}
#sh-content-creation .shcc-wave-end{bottom:-1px;height:clamp(36px,4.6vw,66px);fill:var(--shcc-next)}

#sh-content-creation .shcc-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#sh-content-creation .shcc-play{position:absolute;inset:0;z-index:4;display:grid;width:100%;height:100%;place-items:center;border:0;padding:0;margin:0;background:transparent;cursor:pointer}
#sh-content-creation .shcc-play svg{width:54px;height:54px;border:1.5px solid #ffffffe6;border-radius:50%;padding:16px 14px 16px 18px;fill:#fff;background:#10141329;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);box-shadow:0 4px 18px #0005;transition:transform .35s,background .35s}
#sh-content-creation .shcc-play-placeholder{cursor:inherit;pointer-events:none}
#sh-content-creation button.shcc-play:hover svg{transform:scale(1.08);background:#bc827e66}
#sh-content-creation .shcc-card:not(.is-near) .shcc-play svg{opacity:.8}
#sh-content-creation .shcc-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;border:0;margin:0;padding:76px 22px 24px;background:#111917f5;color:#fff}
#sh-content-creation .shcc-dialog:not([open]){display:none}
#sh-content-creation .shcc-dialog[open]{display:flex;align-items:center;justify-content:center}
#sh-content-creation .shcc-dialog::backdrop{background:#111917}
#sh-content-creation .shcc-dialog video{display:block;max-width:100%;max-height:100%;width:auto;height:100%;margin:0;background:#111}
#sh-content-creation .shcc-close{position:absolute;top:18px;right:22px;display:flex;align-items:center;gap:14px;border:0;background:transparent;color:#fff;margin:0;padding:8px;font:400 14px/1 Lato,Arial,sans-serif;cursor:pointer}
#sh-content-creation .shcc-close span{font-size:28px}

@media(max-width:1024px){#sh-content-creation{--shcc-card-width:clamp(180px,23vw,230px);--shcc-gap:32px}#sh-content-creation .shcc-banner-note{letter-spacing:.3em}}
@media(max-width:700px){
#sh-content-creation{--shcc-card-width:clamp(200px,56vw,250px);--shcc-gap:22px}
#sh-content-creation .shcc-banner{height:360px}
#sh-content-creation .shcc-banner img{object-position:66% 44%!important}
#sh-content-creation .shcc-banner-note{font-size:9px;letter-spacing:.28em;line-height:1.9}
#sh-content-creation .shcc-banner-note::after{margin-top:10px;width:20px}
#sh-content-creation .shcc-banner-left{left:18px;top:auto;bottom:82px}
#sh-content-creation .shcc-banner-right{right:18px;top:auto;bottom:82px;text-align:right}
#sh-content-creation .shcc-banner-right::after{margin-left:auto}
#sh-content-creation .shcc-showcase{padding:14px 0 96px}
#sh-content-creation .shcc-eyebrow{font-size:10px;letter-spacing:.26em;margin-bottom:16px}
#sh-content-creation h2{font-size:clamp(38px,10.5vw,52px)!important;max-width:480px;margin:auto}
#sh-content-creation .shcc-intro{max-width:340px;margin-top:18px;font-size:15px}
#sh-content-creation .shcc-track{padding-top:44px;padding-bottom:52px}
#sh-content-creation .shcc-cover{border-radius:15px}
#sh-content-creation .shcc-caption{font-size:10px;letter-spacing:.28em}
#sh-content-creation .shcc-play svg{width:46px;height:46px;padding:13px 12px 13px 15px}
#sh-content-creation .shcc-arrow{width:42px;height:42px;top:calc(50% - 21px)}
#sh-content-creation .shcc-prev{left:10px}#sh-content-creation .shcc-next{right:10px}
#sh-content-creation .shcc-more{min-height:54px;padding:15px 30px;gap:20px}
#sh-content-creation .shcc-features{width:96%;margin-top:46px}
#sh-content-creation .shcc-features li{padding:0 6px}
#sh-content-creation .shcc-features span{font-size:10px;letter-spacing:.16em}
#sh-content-creation .shcc-features svg{width:24px;height:24px;margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){#sh-content-creation .shcc-track{scroll-behavior:auto}#sh-content-creation .shcc-float{animation:none}#sh-content-creation *,#sh-content-creation *::before,#sh-content-creation *::after{transition:none!important}}
