/*
Theme Name: Sweet Indulgence Future
Theme URI: https://sweetindulgencerecipes.com/
Author: Sweet Indulgence Recipes
Description: An immersive 3D kitchen, a scroll-led recipe journey, and an accessible recipe journal.
Version: 1.3.0
Requires at least: 6.0
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: sweet-indulgence-future
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--ink:#352334;--paper:#faf7f2;--pink:#edafaa;--plum:#4b2642;--muted:#756570}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #a64c77;outline-offset:5px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.055em;line-height:1.12}h1{font-size:clamp(3.2rem,5.4vw,6.3rem);margin-bottom:26px}h2{font-size:clamp(2.8rem,4.7vw,5.4rem);margin-bottom:24px}h1 em,h2 em{font-weight:500;color:#a24e6b}.header{position:fixed;z-index:30;top:0;left:0;right:0;height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;background:rgba(250,247,242,.87);border-bottom:1px solid #35233410;backdrop-filter:blur(16px)}.brand{display:flex;gap:13px;align-items:center;font-size:13px;font-weight:700;letter-spacing:.12em}.brand small{display:block;font-size:10px;letter-spacing:.19em;margin-top:6px;font-weight:400}.brand-icon{font:italic 34px Georgia;letter-spacing:-4px;background:var(--plum);color:#f2bfad;border-radius:50%;width:53px;height:53px;padding:4px 10px}.header nav{display:flex;gap:33px;font-size:14px}.header nav a:hover{color:#a24e6b}.motion{background:none;border:1px solid #35233430;border-radius:22px;padding:10px 16px;font-size:12px}.skip{position:fixed;top:-70px;left:20px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}.experience{position:relative;background:#f4e8e4}.scene-wrap{position:sticky;top:0;height:100svh;margin-bottom:-100svh;overflow:hidden;background:radial-gradient(ellipse at 75% 50%,#d99ba2,#f6ede5 75%)}canvas{width:100%;height:100%;display:block}.scene-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#faf7f2 0%,#faf7f2ed 21%,#faf7f28a 40%,transparent 61%)}.chapter{min-height:100svh;position:relative;display:flex;align-items:center;padding:135px 7% 100px;pointer-events:none}.chapter-copy{width:47%;max-width:700px;pointer-events:auto}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:600;margin-bottom:25px}.intro{font-size:18px;line-height:1.8;color:#756570;margin-bottom:32px}.pill{background:var(--plum);color:white;display:inline-flex;align-items:center;gap:45px;padding:17px 23px;border-radius:40px;font-size:14px}.pill:hover{background:#773d60}.pill span{font-size:21px;font-weight:400}.text-link{display:block;margin-top:22px;font-size:13px;text-decoration:underline;text-underline-offset:5px}.scene-caption{position:absolute;right:6%;bottom:65px;display:flex;gap:20px;align-items:center;font-size:10px;letter-spacing:.15em}.caption-number{font-size:14px;border-top:1px solid;padding-top:8px}.scroll-note{position:absolute;bottom:38px;left:7%;display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.2em}.scroll-mouse{border:1px solid #8c7a82;width:15px;height:23px;border-radius:8px;display:inline-block}.scroll-mouse:before{content:'';display:block;width:2px;height:6px;background:var(--plum);margin:4px auto}.journey-line{position:fixed;left:0;top:96px;bottom:0;width:3px;z-index:25;background:#4b264215}.journey-line span{display:block;width:100%;height:0;background:#a24e6b}.spotlight{margin-top:30px;max-width:380px;background:#ffffffd9;backdrop-filter:blur(12px);border:1px solid #fff;border-radius:16px;box-shadow:0 15px 45px #572b3712}.spotlight a{display:flex;align-items:center;gap:19px;padding:12px}.spotlight img{width:92px;height:106px;object-fit:cover;border-radius:10px}.spotlight small{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#9b5971}.spotlight h3{font-family:Georgia,serif;font-size:21px;line-height:1.3;margin:7px 0 10px;font-weight:400}.spotlight .read{font-size:12px;text-decoration:underline;text-underline-offset:3px}.floating-label{position:absolute;right:9%;bottom:100px;font:italic 25px Georgia;color:#56364d}.recipe-section{position:relative;z-index:5;background:var(--paper);padding:100px 7%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:35px}.section-top h2{font-size:clamp(2.6rem,4vw,4.6rem)}.section-top>p{font-size:14px;line-height:1.7;color:var(--muted)}.recipe-tools{border-top:1px solid #35233420;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid transparent;background:none;padding:10px 17px;border-radius:24px;font-size:14px}.filters button.active{background:var(--plum);color:white}.filters button:hover{border-color:#9b5971}.search{display:flex;align-items:center;border-bottom:1px solid #35233440;gap:10px;padding:10px 0}.search span{font-size:12px}.search input{background:transparent;border:0;outline-offset:1px;width:210px;font-size:13px;color:var(--ink)}.result-count{font-size:12px;color:var(--muted);margin:25px 0 20px}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 28px}.recipe-card .image{aspect-ratio:4/4.2;overflow:hidden;border-radius:110px 110px 12px 12px;background:#eadcdb}.recipe-card:nth-child(3n+2) .image{border-radius:12px}.recipe-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.recipe-card a:hover img{transform:scale(1.05)}.card-meta{font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin:22px 0 11px;color:#9b5971}.recipe-card h3{font:500 25px/1.3 'Playfair Display',Georgia,serif;letter-spacing:-.02em;margin-bottom:13px}.recipe-card .read{font-size:12px;color:var(--muted)}.browse-blog{display:flex;width:max-content;margin:55px auto 0}.empty{padding:40px;text-align:center}footer{padding:50px 7%;background:#eee7e5;display:flex;justify-content:space-between;gap:28px;align-items:center}footer>a:not(.brand),footer>span{font-size:12px;color:var(--muted)}.noscript{padding:40px}.wp-content{max-width:850px;margin:150px auto 80px;padding:0 25px;font-size:18px;line-height:1.8}.wp-content img{max-width:100%;height:auto}.wp-content h1{font-size:clamp(2.5rem,5vw,4.5rem)}.wp-content h2{font-size:2.2rem}.wp-content h3{font-size:1.5rem}.wp-content a{text-decoration:underline}.wp-content .wp-block-image{margin-left:0;margin-right:0}.pagination{padding:30px;text-align:center}.pagination a,.pagination span{padding:10px}.wp-content table{width:100%;border-collapse:collapse}.wp-content td,.wp-content th{padding:10px;border:1px solid #ddd}.wp-content iframe{max-width:100%}
@media(min-width:1500px){.chapter-copy{width:45%}}@media(max-width:900px){.header nav{gap:18px}.header nav a:last-child{display:none}.recipe-tools{align-items:start;flex-direction:column}.recipe-grid{gap:30px 20px}.scene-caption{display:none}.chapter-copy{width:55%}.scene-shade{background:linear-gradient(90deg,#faf7f2f5,#faf7f2b0 40%,transparent 80%)}footer>span{display:none}}@media(max-width:600px){.header{height:78px;padding:0 5%}.brand{font-size:10px;gap:8px;letter-spacing:.08em}.brand small{font-size:8px}.brand-icon{width:43px;height:43px;font-size:28px;padding:4px 8px}.header nav a:first-child{display:none}.header nav{font-size:12px}.motion{font-size:10px;padding:8px 10px}.chapter{padding:115px 7% 55px;align-items:flex-start;min-height:100svh}.chapter-copy{width:100%;max-width:440px}.chapter h1,.chapter h2{font-size:clamp(2.65rem,10vw,3.5rem);max-width:360px;margin-bottom:18px}.eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:18px}.intro{font-size:15px;line-height:1.6;max-width:280px;margin-bottom:22px}.scene-shade{background:linear-gradient(180deg,#faf7f2f7 4%,#faf7f2de 26%,#faf7f22b 64%,#faf7f240)}.pill{padding:13px 20px;font-size:12px;gap:22px}.text-link{font-size:12px;margin-top:16px}.scroll-note{bottom:25px;font-size:9px}.floating-label{right:7%;bottom:40px;font-size:19px}.spotlight{max-width:300px;margin-top:24px}.spotlight img{width:66px;height:78px}.spotlight h3{font-size:17px}.journey-line{top:78px}.recipe-section{padding:65px 6%}.section-top{display:block}.section-top>p{display:none}.recipe-tools{margin-top:25px;padding-top:20px}.filters{gap:3px}.filters button{font-size:12px;padding:9px 12px}.search{width:100%}.search input{width:100%}.recipe-grid{grid-template-columns:repeat(2,1fr);gap:28px 15px}.recipe-card .image{border-radius:70px 70px 10px 10px}.recipe-card h3{font-size:19px}.card-meta{font-size:9px;margin:15px 0 8px}.recipe-card .read{font-size:11px}.section-top h2{font-size:2.6rem}.browse-blog{font-size:11px}footer{padding:35px 6%;flex-direction:column;align-items:start}.wp-content{margin-top:115px}.discovery .intro{max-width:300px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* 1.1.0 — editorial page and recipe refinements */
.page-shell{max-width:1100px}
.page-shell>.page-title{max-width:850px;margin-left:auto;margin-right:auto}
.recipe-entry .entry-header{margin-bottom:38px}
.recipe-entry .entry-kicker{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px;color:#93617a;font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.recipe-entry .entry-kicker a{text-decoration:none}
.recipe-entry .entry-kicker a:hover{color:var(--plum);text-decoration:underline;text-underline-offset:4px}
.recipe-entry .entry-title{max-width:920px;margin-bottom:0}
.recipe-entry>.post-thumbnail{display:block;width:100%;max-height:680px;object-fit:cover;margin:0 0 48px;border-radius:160px 160px 18px 18px;background:#eadcdb}
.entry-content{max-width:760px;margin:0 auto}
.entry-content>p:first-child{font-size:1.12em;line-height:1.85;color:#594854}
.entry-content h2{padding-top:.7em;scroll-margin-top:120px}
.entry-content h3{margin-top:1.75em}
.entry-content ul,.entry-content ol{padding-left:1.25em}
.entry-content li{margin-bottom:.55em}
.entry-content blockquote{margin:2.2em 0;padding:28px 32px;border-left:4px solid #a24e6b;background:#f3e8e5;font-family:'Playfair Display',Georgia,serif;font-size:1.25em;line-height:1.55}
.entry-content .tasty-recipes,.entry-content .wprm-recipe-container{margin:48px 0!important;border:1px solid #4b264222!important;border-radius:22px!important;background:#fff!important;box-shadow:0 18px 55px #4b264210!important;overflow:hidden}
.recipe-tags{margin-top:42px;padding-top:22px;border-top:1px solid #4b26421f;color:var(--muted);font-size:13px}
.recipe-tags a{display:inline-block;margin:5px 4px;padding:6px 11px;border:1px solid #4b264226;border-radius:999px;text-decoration:none}
.post-navigation{max-width:760px;margin:55px auto 0;padding-top:28px;border-top:1px solid #4b26421f}
.post-navigation .nav-links{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.post-navigation a{font-size:14px;text-decoration:none}
.comments{max-width:760px;margin:60px auto 0;padding-top:38px;border-top:1px solid #4b26421f}
.comments h2{font-size:2.2rem}
.comment-form textarea,.comment-form input[type=text],.comment-form input[type=email],.comment-form input[type=url]{width:100%;padding:14px 16px;border:1px solid #4b264233;border-radius:12px;background:#fff;color:var(--ink)}
.comment-form input[type=submit],.wp-content .search button{border:0;border-radius:999px;background:var(--plum);color:#fff;padding:12px 20px}
.comment-form input[type=submit]:hover,.wp-content .search button:hover{background:#773d60}
.wp-content>.search{max-width:520px;margin-bottom:42px}
.wp-content>.search label{font-size:13px;font-weight:600}
.wp-content>.search input{flex:1;width:auto}
.archive-description{max-width:680px;margin:-10px 0 38px;color:var(--muted);font-size:17px;line-height:1.75}
.archive-description p:last-child{margin-bottom:0}
footer nav ul{display:flex;gap:16px;flex-wrap:wrap;margin:0;padding:0;list-style:none}
footer nav a{font-size:12px;color:var(--muted)}

@media(max-width:600px){
  .header{gap:8px}
  .header .brand{min-width:0}
  .header nav{margin-left:auto;flex:0 0 auto}
  .header nav a{display:none}
  .header nav a:nth-child(2){display:block;white-space:nowrap}
  .motion{min-width:54px;white-space:nowrap}
  .wp-content{padding:0 20px;font-size:16.5px;line-height:1.75}
  .wp-content h1{font-size:clamp(2.5rem,12vw,3.25rem)}
  .wp-content h2{font-size:2rem}
  .recipe-entry .entry-header{margin-bottom:28px}
  .recipe-entry>.post-thumbnail{margin-bottom:34px;border-radius:80px 80px 12px 12px}
  .entry-content blockquote{padding:22px 24px}
  .post-navigation .nav-links{grid-template-columns:1fr}
  .comments{margin-top:42px}
}
@media(max-width:380px){
  .brand small{display:none}
  .brand-icon{width:39px;height:39px;font-size:25px;padding:4px 7px}
  .header nav a:nth-child(2){font-size:10px}
  .motion{min-width:48px;padding:7px 8px}
}

/* 1.3.0 — global Pinterest follow button */
.pinterest-follow{position:fixed;right:24px;bottom:24px;z-index:28;display:flex;align-items:center;gap:11px;min-height:54px;padding:9px 17px 9px 10px;border:1px solid #ffffff80;border-radius:999px;background:#a24e6b;color:#fff;text-decoration:none!important;box-shadow:0 12px 35px #4b264238;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}
.pinterest-follow:hover{transform:translateY(-2px);background:#bd081c;box-shadow:0 16px 40px #4b26424a}
.pinterest-follow svg{width:34px;height:34px;flex:0 0 34px;fill:currentColor}
.pinterest-follow span{display:grid;gap:1px;line-height:1.1}
.pinterest-follow strong{font-size:13px;letter-spacing:.02em}
.pinterest-follow small{font-size:10px;color:#fff;opacity:.82;white-space:nowrap}
.pinterest-follow:focus-visible{outline-color:#fff;box-shadow:0 0 0 5px #a24e6b80,0 12px 35px #4b264238}
@media(max-width:600px){
  .pinterest-follow{right:14px;bottom:14px;width:52px;height:52px;min-height:52px;padding:9px;justify-content:center}
  .pinterest-follow svg{width:32px;height:32px;flex-basis:32px}
  .pinterest-follow span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
}
