/*
Theme Name: FizzyWay
Theme URI: https://fizzyway.com/
Author: FizzyWay
Description: Editorial theme for FizzyWay — DIY shower steamers, bath fizz, scent blends and troubleshooting. Photo-led homepage with scent finder, fizz fixer and ingredient explorer.
Version: 2.0.2
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fizzyway
*/
    :root{
      --cream:#F7F3EA;
      --cream-2:#FFFDF8;
      --ink:#173029;
      --muted:#66736d;
      --green:#CFE4D7;
      --green-deep:#2D5C4D;
      --mint:#E5F2EB;
      --lav:#E9E2F4;
      --peach:#F5D8C6;
      --yellow:#F2E29A;
      --blue:#DCEFF0;
      --white:#fff;
      --line:rgba(23,48,41,.12);
      --shadow:0 24px 70px rgba(52,69,61,.12);
      --radius:28px;
      --radius-sm:18px;
      --ease:cubic-bezier(.22,1,.36,1);
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      background:var(--cream);
      color:var(--ink);
      font-family:"DM Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.18;
      z-index:999;
      background-image:
        radial-gradient(circle at 20% 30%, rgba(255,255,255,.8) 0 1px, transparent 1.5px),
        radial-gradient(circle at 80% 70%, rgba(23,48,41,.12) 0 1px, transparent 1.5px);
      background-size:34px 34px, 47px 47px;
      mix-blend-mode:multiply;
    }

    a{color:inherit;text-decoration:none}
    button,input{font:inherit}
    button{cursor:pointer}
    .container{width:min(1180px,calc(100% - 40px));margin:0 auto}

    .eyebrow{
      display:inline-flex;align-items:center;gap:10px;
      letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700;
      color:var(--green-deep);
    }
    .eyebrow::before{content:"";width:28px;height:1px;background:currentColor;opacity:.5}

    h1,h2,h3{font-family:"Playfair Display",Georgia,serif;letter-spacing:-.03em;margin:0}
    h1{font-size:clamp(58px,7.3vw,110px);line-height:.88;font-weight:700}
    h2{font-size:clamp(42px,5vw,72px);line-height:.96}
    h3{font-size:28px;line-height:1}
    p{line-height:1.65}

    .btn{
      border:none;border-radius:999px;padding:15px 22px;
      display:inline-flex;align-items:center;justify-content:center;gap:10px;
      font-weight:700;transition:.3s var(--ease);
    }
    .btn-primary{background:var(--ink);color:white}
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(23,48,41,.22)}
    .btn-soft{background:rgba(255,255,255,.72);border:1px solid var(--line);backdrop-filter:blur(14px)}
    .btn-soft:hover{background:white;transform:translateY(-2px)}
    .arrow{transition:.25s var(--ease)}
    .btn:hover .arrow,.text-link:hover .arrow{transform:translateX(4px)}

    /* NAV */
    .nav{
      position:fixed;top:14px;left:50%;transform:translateX(-50%);
      width:min(1160px,calc(100% - 28px));z-index:100;
      transition:.35s var(--ease);
    }
    .nav-shell{
      height:74px;padding:0 18px 0 24px;
      display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
      border:1px solid rgba(255,255,255,.65);
      background:rgba(255,253,248,.74);
      backdrop-filter:blur(22px) saturate(140%);
      border-radius:24px;
      box-shadow:0 12px 40px rgba(55,72,64,.08);
    }
    .nav.scrolled .nav-shell{height:62px;border-radius:20px;background:rgba(255,253,248,.92)}
    .nav-left,.nav-right{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600}
    .nav-right{justify-content:flex-end}
    .nav a:hover{opacity:.58}
    .logo{font-family:"Playfair Display",serif;font-size:29px;font-weight:700;letter-spacing:-.04em}
    .logo i{font-style:normal;color:#7eaa96}
    .icon-btn{
      width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.72);
      display:grid;place-items:center;color:var(--ink)
    }
    .menu-btn{display:none}

    /* HERO */
    .hero{
      min-height:100svh;padding:145px 0 68px;position:relative;display:flex;align-items:center;
    }
    .hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:56px;align-items:center}
    .hero-copy p{
      max-width:560px;font-size:18px;color:var(--muted);margin:30px 0 30px;
    }
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
    .hero-note{display:flex;gap:24px;margin-top:38px;color:var(--muted);font-size:13px}
    .note-item{display:flex;align-items:center;gap:8px}
    .dot{width:7px;height:7px;border-radius:50%;background:#8ab5a0}

    .hero-art{
      position:relative;min-height:640px;border-radius:42px;overflow:hidden;
      background:
        radial-gradient(circle at 66% 15%, rgba(255,255,255,.95), transparent 28%),
        linear-gradient(155deg,#dcebe4 0%,#c8ddd4 42%,#b6d0c4 100%);
      box-shadow:var(--shadow);
      isolation:isolate;
    }
    .hero-art::after{
      content:"";position:absolute;inset:auto -12% -19% 15%;height:44%;
      background:rgba(255,255,255,.34);filter:blur(2px);transform:rotate(-8deg);border-radius:50%;
    }
    .steam{
      position:absolute;width:180px;height:360px;border-radius:50%;
      border-left:8px solid rgba(255,255,255,.32);filter:blur(2px);
      animation:steam 6s ease-in-out infinite;
    }
    .steam.s1{left:18%;top:3%;transform:rotate(13deg)}
    .steam.s2{left:49%;top:-6%;height:420px;animation-delay:-2s}
    .steam.s3{right:-2%;top:5%;height:300px;animation-delay:-4s}
    @keyframes steam{50%{transform:translateY(-18px) rotate(4deg);opacity:.35}}

    .steamer{
      position:absolute;border-radius:50%;
      box-shadow:inset -18px -18px 30px rgba(74,99,88,.18), inset 12px 12px 24px rgba(255,255,255,.75), 0 34px 50px rgba(69,92,81,.20);
      background:
        radial-gradient(circle at 33% 28%, rgba(255,255,255,.98) 0 4%, transparent 5%),
        radial-gradient(circle at 48% 50%, #d7eadf 0 5%, transparent 6%),
        radial-gradient(circle at 70% 36%, #d2e6da 0 3%, transparent 4%),
        linear-gradient(145deg,#edf7f1,#b7d4c5);
    }
    .steamer.big{width:260px;height:260px;left:50%;top:47%;transform:translate(-50%,-50%) rotate(-8deg)}
    .steamer.small.one{width:128px;height:128px;left:8%;bottom:10%;background:linear-gradient(145deg,#f2e8f7,#cfc0e3)}
    .steamer.small.two{width:112px;height:112px;right:7%;top:18%;background:linear-gradient(145deg,#fff2d8,#f0cf7d)}
    .steamer-label{
      position:absolute;left:50%;top:46%;transform:translate(-50%,-50%) rotate(-8deg);
      width:130px;text-align:center;z-index:3;
    }
    .steamer-label b{display:block;font-family:"Playfair Display";font-size:24px}
    .steamer-label span{font-size:10px;letter-spacing:.14em;text-transform:uppercase}
    .leaf{
      position:absolute;width:130px;height:32px;border-radius:100% 0 100% 0;
      background:#497c67;filter:drop-shadow(0 14px 12px rgba(30,62,50,.16));
    }
    .leaf.l1{left:8%;top:31%;transform:rotate(-28deg)}
    .leaf.l2{left:13%;top:38%;transform:rotate(13deg) scale(.9)}
    .leaf.l3{right:3%;bottom:23%;transform:rotate(-45deg) scale(1.2)}
    .bubble{
      position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.75);
      background:rgba(255,255,255,.15);backdrop-filter:blur(2px);
      animation:float 5s ease-in-out infinite;
    }
    .b1{width:32px;height:32px;left:16%;top:14%}
    .b2{width:17px;height:17px;right:19%;top:10%;animation-delay:-1.5s}
    .b3{width:45px;height:45px;right:11%;bottom:11%;animation-delay:-3s}
    .b4{width:22px;height:22px;left:41%;bottom:12%;animation-delay:-2s}
    @keyframes float{50%{transform:translateY(-16px) translateX(6px)}}

    .floating-card{
      position:absolute;right:24px;bottom:26px;padding:17px 19px;background:rgba(255,255,255,.78);
      border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(14px);border-radius:20px;
      box-shadow:0 12px 30px rgba(48,72,61,.12);z-index:4;
    }
    .floating-card small{display:block;color:var(--muted);margin-bottom:4px}
    .floating-card strong{font-size:14px}

    /* GENERIC */
    section{padding:110px 0}
    .section-head{
      display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:44px
    }
    .section-head p{max-width:500px;color:var(--muted);margin:0}
    .section-title-wrap .eyebrow{margin-bottom:15px}
    .text-link{font-weight:700;display:inline-flex;gap:8px;align-items:center}

    /* MOOD */
    .mood-section{background:var(--cream-2)}
    .mood-shell{
      border-radius:40px;background:#dce9e2;padding:54px;position:relative;overflow:hidden;
    }
    .mood-shell::after{
      content:"";position:absolute;width:420px;height:420px;border-radius:50%;
      right:-110px;top:-110px;background:rgba(255,255,255,.23);filter:blur(4px)
    }
    .mood-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center;position:relative;z-index:2}
    .mood-pills{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 34px}
    .mood-pill{
      padding:12px 17px;border-radius:999px;border:1px solid rgba(23,48,41,.13);
      background:rgba(255,255,255,.55);color:var(--ink);font-weight:700;
      transition:.25s var(--ease)
    }
    .mood-pill:hover,.mood-pill.active{background:var(--ink);color:white;transform:translateY(-2px)}
    .mood-result{
      background:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.75);
      border-radius:28px;padding:28px;backdrop-filter:blur(12px)
    }
    .mood-result .ingredients{font-family:"Playfair Display";font-size:34px;line-height:1.15;margin:8px 0 12px}
    .mood-result p{color:var(--muted);margin:0}
    .mood-art{
      min-height:430px;border-radius:28px;position:relative;overflow:hidden;
      background:linear-gradient(155deg,#cae4d5,#a9cdbb);
      transition:.5s var(--ease);
    }
    .mood-art .orb{
      width:230px;height:230px;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
      box-shadow:inset -18px -18px 25px rgba(67,91,80,.18),inset 12px 10px 24px rgba(255,255,255,.85),0 30px 55px rgba(45,75,61,.18);
      background:linear-gradient(145deg,#ecf8f1,#b4d9c4)
    }
    .mood-art .orb::after{
      content:"";position:absolute;width:54px;height:14px;border-radius:50%;background:rgba(255,255,255,.55);
      left:30%;top:21%;transform:rotate(-20deg);filter:blur(2px)
    }
    .mood-word{
      position:absolute;left:26px;bottom:20px;color:white;font-family:"Playfair Display";font-size:36px;text-shadow:0 2px 12px rgba(0,0,0,.14)
    }

    /* RECIPES */
    .recipe-grid{
      display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:280px 280px;gap:18px
    }
    .recipe-card{
      position:relative;border-radius:28px;overflow:hidden;padding:24px;display:flex;align-items:flex-end;
      min-height:240px;isolation:isolate;transition:.35s var(--ease);border:1px solid rgba(23,48,41,.08)
    }
    .recipe-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(45,66,57,.13)}
    .recipe-card.feature{grid-row:span 2}
    .recipe-card::before{
      content:"";position:absolute;inset:0;z-index:-2;transition:.5s var(--ease);
      background:var(--card-bg,linear-gradient(145deg,#dceadf,#bfd7c9));
    }
    .recipe-card:hover::before{transform:scale(1.035)}
    .recipe-card::after{
      content:"";position:absolute;inset:0;z-index:-1;
      background:linear-gradient(180deg,transparent 40%,rgba(23,48,41,.78) 100%);
    }
    .card-content{color:white}
    .tag{
      display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.18);
      backdrop-filter:blur(10px);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px
    }
    .card-content h3{font-size:31px}
    .card-meta{display:flex;gap:14px;font-size:12px;margin-top:10px;opacity:.84}
    .decor-disc{
      position:absolute;border-radius:50%;background:rgba(255,255,255,.27);box-shadow:inset -12px -12px 20px rgba(42,75,62,.12),inset 10px 10px 22px rgba(255,255,255,.46);
      z-index:-1
    }
    .feature .decor-disc{width:270px;height:270px;right:-35px;top:38px}
    .recipe-card:not(.feature) .decor-disc{width:150px;height:150px;right:-25px;top:18px}
    .recipe-card.lav{--card-bg:linear-gradient(145deg,#d7cfe9,#a89bbf)}
    .recipe-card.cit{--card-bg:linear-gradient(145deg,#f4e5a2,#e3c361)}
    .recipe-card.men{--card-bg:linear-gradient(145deg,#d7eef0,#a9ced0)}
    .recipe-card.rose{--card-bg:linear-gradient(145deg,#efd8d1,#d7a79a)}

    /* FIXER */
    .fixer-section{background:#173029;color:white}
    .fixer-section .eyebrow{color:#b9d6c8}
    .fixer-section .section-head p{color:rgba(255,255,255,.65)}
    .fixer-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px}
    .problem-list{
      padding:16px;border-radius:28px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)
    }
    .problem-btn{
      width:100%;text-align:left;border:0;background:transparent;color:white;border-radius:18px;padding:16px 17px;
      display:flex;justify-content:space-between;gap:10px;transition:.25s
    }
    .problem-btn:hover,.problem-btn.active{background:rgba(255,255,255,.11)}
    .problem-btn span:last-child{opacity:.4}
    .fix-card{
      background:#f6f3ea;color:var(--ink);border-radius:28px;padding:34px;min-height:372px;
      display:flex;flex-direction:column;justify-content:space-between
    }
    .fix-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#769082}
    .fix-card h3{font-size:38px;margin:10px 0 14px}
    .fix-card p{color:var(--muted)}
    .fixes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}
    .fix{padding:16px;border-radius:18px;background:white;border:1px solid var(--line);font-size:13px}
    .fix b{display:block;font-size:12px;color:#739080;margin-bottom:7px}

    /* INGREDIENTS */
    .ingredient-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .ingredient{
      border:1px solid var(--line);border-radius:24px;padding:22px;background:rgba(255,255,255,.44);
      min-height:170px;transition:.3s var(--ease);position:relative;overflow:hidden
    }
    .ingredient:hover{transform:translateY(-5px);background:white;box-shadow:0 18px 42px rgba(45,66,57,.1)}
    .ingredient .emoji{font-size:35px;display:block;margin-bottom:28px}
    .ingredient strong{font-family:"Playfair Display";font-size:23px}
    .ingredient small{display:block;color:var(--muted);margin-top:7px}
    .ingredient .plus{position:absolute;right:16px;top:16px;width:30px;height:30px;border-radius:50%;background:var(--mint);display:grid;place-items:center}

    /* EDITORIAL */
    .editorial-section{background:var(--cream-2)}
    .article-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:18px}
    .article{
      min-height:420px;border-radius:28px;border:1px solid var(--line);background:white;overflow:hidden;
      transition:.3s var(--ease)
    }
    .article:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(45,66,57,.10)}
    .article-img{height:230px;position:relative;overflow:hidden}
    .article.big .article-img{height:330px}
    .article-img::before,.article-img::after{content:"";position:absolute;border-radius:50%}
    .article-img::before{width:180px;height:180px;background:rgba(255,255,255,.55);left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:inset -15px -15px 25px rgba(51,77,66,.13)}
    .article-img::after{width:70px;height:20px;background:rgba(255,255,255,.45);left:39%;top:33%;transform:rotate(-18deg);filter:blur(2px)}
    .img-green{background:linear-gradient(145deg,#bad6c8,#7da891)}
    .img-lav{background:linear-gradient(145deg,#ded7ef,#a998c5)}
    .img-peach{background:linear-gradient(145deg,#f1dacd,#d9ae9e)}
    .article-body{padding:22px}
    .article-body small{font-weight:700;letter-spacing:.1em;color:#789084}
    .article-body h3{margin:9px 0 10px}
    .article-body p{font-size:14px;color:var(--muted);margin:0}

    /* BRAND MOMENT */
    .brand-moment{padding:22px 0 110px;background:var(--cream-2)}
    .brand-panel{
      min-height:520px;border-radius:40px;position:relative;overflow:hidden;
      background:
        radial-gradient(circle at 20% 30%, rgba(255,255,255,.65),transparent 26%),
        linear-gradient(145deg,#afcfbf,#739f8b);
      display:grid;place-items:center;text-align:center;color:white
    }
    .brand-panel::before{
      content:"";position:absolute;inset:0;
      background:linear-gradient(180deg,transparent,rgba(23,48,41,.22))
    }
    .brand-panel .steam.s1{left:28%}.brand-panel .steam.s2{left:54%}.brand-panel .steam.s3{right:16%}
    .brand-copy{position:relative;z-index:2;max-width:780px;padding:30px}
    .brand-copy h2{font-size:clamp(48px,6vw,80px)}
    .brand-copy p{font-size:17px;opacity:.9;max-width:620px;margin:20px auto 0}

    /* FOOTER */
    footer{padding:58px 0 34px;background:#10251f;color:white}
    .footer-top{display:grid;grid-template-columns:1.2fr .8fr .8fr .8fr;gap:30px}
    .footer-logo{font-family:"Playfair Display";font-size:36px;margin-bottom:12px}
    footer p,footer a{color:rgba(255,255,255,.62);font-size:14px}
    footer h4{margin:8px 0 14px}
    footer .links{display:grid;gap:10px}
    .copyright{margin-top:52px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.44);font-size:12px}

    /* MODAL + MOBILE MENU */
    .overlay{
      position:fixed;inset:0;background:rgba(11,30,24,.48);backdrop-filter:blur(8px);z-index:500;
      opacity:0;pointer-events:none;transition:.25s
    }
    .overlay.open{opacity:1;pointer-events:auto}
    .modal{
      position:absolute;left:50%;top:50%;transform:translate(-50%,-45%) scale(.98);
      width:min(560px,calc(100% - 28px));background:#fffdf8;border-radius:28px;padding:30px;
      box-shadow:0 30px 100px rgba(0,0,0,.18);transition:.3s var(--ease)
    }
    .overlay.open .modal{transform:translate(-50%,-50%) scale(1)}
    .modal-close{position:absolute;right:18px;top:18px;border:0;background:var(--cream);border-radius:50%;width:38px;height:38px}
    .modal-icon{font-size:42px}
    .modal h3{font-size:40px;margin:15px 0}
    .modal p{color:var(--muted)}
    .modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
    .mini-card{padding:16px;border-radius:16px;background:var(--cream);font-size:13px}
    .mini-card b{display:block;margin-bottom:5px}

    .mobile-drawer{
      position:fixed;inset:0 0 0 auto;width:min(360px,88vw);background:#fffdf8;z-index:600;
      padding:22px;transform:translateX(100%);transition:.35s var(--ease);box-shadow:-20px 0 60px rgba(0,0,0,.12)
    }
    .mobile-drawer.open{transform:translateX(0)}
    .mobile-drawer .drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px}
    .mobile-drawer nav{display:grid;gap:8px}
    .mobile-drawer nav a{font-family:"Playfair Display";font-size:31px;padding:10px 0;border-bottom:1px solid var(--line)}
    .drawer-backdrop{position:fixed;inset:0;background:rgba(12,30,24,.32);z-index:550;opacity:0;pointer-events:none;transition:.25s}
    .drawer-backdrop.open{opacity:1;pointer-events:auto}

    /* REVEAL */
    .js .reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
    .js .reveal.visible{opacity:1;transform:none}

    @media(max-width:1000px){
      .nav-left{display:none}.nav-right a{display:none}.menu-btn{display:grid}
      .hero-grid,.mood-grid,.fixer-grid{grid-template-columns:1fr}
      .hero{padding-top:125px}.hero-art{min-height:560px}
      .recipe-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.recipe-card.feature{grid-row:auto;grid-column:span 2;min-height:420px}
      .ingredient-grid{grid-template-columns:repeat(3,1fr)}
      .article-grid{grid-template-columns:1fr 1fr}.article.big{grid-column:span 2}
      .footer-top{grid-template-columns:1fr 1fr}
    }
    @media(max-width:700px){
      .container{width:min(100% - 26px,1180px)}
      .nav{top:8px;width:calc(100% - 16px)}.nav-shell{height:62px;border-radius:18px;padding:0 12px 0 16px}
      .logo{font-size:25px}.nav-right{gap:8px}
      section{padding:78px 0}
      .hero{padding:108px 0 50px;min-height:auto}
      .hero-grid{gap:30px}.hero-copy p{font-size:16px;margin:22px 0}.hero-note{flex-wrap:wrap;gap:12px}
      .hero-art{min-height:470px;border-radius:30px}.steamer.big{width:210px;height:210px}.steamer-label{width:110px}.steamer-label b{font-size:20px}
      .section-head{align-items:flex-start;flex-direction:column;margin-bottom:30px}
      .mood-shell{padding:26px;border-radius:28px}.mood-grid{gap:24px}.mood-art{min-height:320px}
      .mood-result .ingredients{font-size:28px}
      .recipe-grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto}
      .recipe-card.feature{grid-column:auto;min-height:390px}.recipe-card{min-height:300px}
      .fixes{grid-template-columns:1fr}.fix-card{padding:24px}
      .ingredient-grid{grid-template-columns:1fr 1fr}.ingredient{min-height:150px}
      .article-grid{grid-template-columns:1fr}.article.big{grid-column:auto}.article{min-height:0}
      .brand-panel{min-height:440px;border-radius:28px}
      .footer-top{grid-template-columns:1fr}.copyright{flex-direction:column}
      .modal-grid{grid-template-columns:1fr}
    }
  /* WordPress templates and mobile header refinements */
.nav-shell{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.nav-right{min-width:0}
.category-strip{display:flex;gap:8px;justify-content:center;padding:9px 14px;margin-top:8px;border-radius:18px;background:rgba(255,253,248,.88);backdrop-filter:blur(18px);box-shadow:0 10px 30px rgba(55,72,64,.06)}
.category-strip a{font-size:12px;font-weight:700;padding:5px 8px;white-space:nowrap}.category-strip a:hover{text-decoration:underline;text-underline-offset:4px}
.category-nav{padding:18px 0 12px;background:var(--cream-2)}
.category-nav .container{display:flex;gap:9px;overflow:auto;scrollbar-width:thin}
.category-nav a{white-space:nowrap;padding:11px 17px;border-radius:999px;border:1px solid var(--line);font-size:13px;font-weight:700;background:white}
.category-nav a:hover,.category-nav a:focus-visible{background:var(--mint)}
.category-hubs{padding:85px 0;background:var(--cream-2)}
.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.hub-card{padding:28px;border-radius:28px;min-height:250px;display:flex;flex-direction:column;justify-content:space-between;background:#e7f0e9;border:1px solid var(--line)}
.hub-card:nth-child(2){background:#f5e2da}.hub-card:nth-child(3){background:#f3eabc}.hub-card:nth-child(4){background:#e7e0f1}.hub-card:nth-child(5){background:#dcebef}.hub-card:nth-child(6){background:#eee5d7}
.hub-card h3{font-size:31px;margin:14px 0}.hub-card p{color:#4d5d56;margin:0 0 18px;font-size:14px}
.hub-card .text-link{font-size:13px}.hub-card small{letter-spacing:.12em;text-transform:uppercase;font-weight:700}
.hub-card.has-photo{background-image:linear-gradient(180deg,rgba(10,35,28,.28),rgba(10,35,28,.76)),var(--category-photo);background-size:cover;background-position:center;color:white}
.hub-card.has-photo p,.hub-card.has-photo a{color:white}
.mood-art.has-photo{background-image:linear-gradient(180deg,rgba(15,45,35,.05),rgba(15,45,35,.38)),var(--mood-photo)!important;background-size:cover!important;background-position:center!important;color:white}
.mood-art.has-photo .orb{display:none}
.hub-start{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.hub-start a{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.hub-start a + a::before{content:'· ';text-decoration:none}
.search-panel{position:absolute;right:8px;top:calc(100% + 9px);width:min(430px,calc(100vw - 24px));padding:14px;background:#fffdf8;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.search-panel[hidden]{display:none}.search-panel form{display:flex;gap:8px}.search-panel input{min-width:0;flex:1;padding:12px;border:1px solid var(--line);border-radius:12px;background:white}
.search-panel button{background:var(--ink);color:white;border:0;border-radius:12px;padding:0 15px}
.archive-shell{padding:155px 0 90px;min-height:65vh}.archive-intro{max-width:820px}.archive-intro h1{font-size:clamp(45px,6vw,78px);line-height:1.04}.archive-intro p{color:var(--muted);font-size:17px}
.archive-cover{height:clamp(220px,34vw,430px);border-radius:32px;background-position:center;background-size:cover;margin-bottom:48px}
.archive-start{background:white;border-radius:24px;padding:25px;margin:36px 0}.archive-start ul{display:flex;flex-wrap:wrap;gap:10px 24px;margin:12px 0 0;padding:0;list-style:none}.archive-start a{text-decoration:underline;text-underline-offset:4px}
.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:32px 0}.post-card{background:white;border-radius:24px;overflow:hidden;border:1px solid var(--line)}.post-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.post-card .article-body{min-height:170px}
.post-card h3{font-size:24px;line-height:1.15}.post-placeholder{aspect-ratio:4/3;background:linear-gradient(135deg,#d3e6da,#a5c7b6);display:grid;place-items:center;font:700 42px Georgia;color:#fff}
.pager{display:flex;gap:15px}.pager a{padding:10px 16px;background:white;border-radius:15px}
.post-shell{padding:145px 0 90px}.post-shell article{max-width:780px;margin:auto}.post-shell h1{font-size:clamp(44px,6.2vw,76px);line-height:1.06}.post-meta{font-size:14px;color:var(--muted);margin:22px 0}.post-cover{width:100%;height:auto;border-radius:26px;margin:20px 0}.entry-content{font-size:18px;line-height:1.75}.entry-content img{max-width:100%;height:auto;border-radius:18px}.entry-content h2{font-size:38px;line-height:1.16;margin:38px 0 16px}.entry-content h3{font-size:28px;line-height:1.2;margin:30px 0 12px}
.breadcrumbs{font-size:13px;margin-bottom:25px;color:var(--muted)}.breadcrumbs a{text-decoration:underline}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px)}.skip-link:focus{position:fixed;clip:auto;top:0;left:0;z-index:1000;background:white;padding:12px}
.hero-art.has-photo{background-image:linear-gradient(180deg,transparent,rgba(17,48,39,.12)),var(--hero-photo);background-size:cover;background-position:center}.hero-art.has-photo .steam,.hero-art.has-photo .steamer,.hero-art.has-photo .bubble,.hero-art.has-photo .hero-art-label{display:none}
.brand-panel.has-photo{background-image:linear-gradient(180deg,rgba(15,47,37,.15),rgba(15,47,37,.48)),var(--brand-photo);background-size:cover;background-position:center}
@media(max-width:1000px){.nav-shell{display:flex;justify-content:space-between}.nav-right{margin-left:auto}.category-strip{display:none}.hub-grid{grid-template-columns:repeat(2,1fr)}.post-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.nav-shell{display:flex;justify-content:space-between}.nav-right{margin-left:auto;gap:7px}.logo{flex-shrink:0;font-size:25px}.nav-right .icon-btn{width:39px;height:39px}.category-hubs{padding:65px 0}.hub-grid,.post-grid{grid-template-columns:1fr}.hub-card{min-height:220px}.archive-shell,.post-shell{padding-top:115px}.post-shell h1{line-height:1.07}.category-nav{padding-top:14px}}
@media(max-width:380px){.logo{font-size:23px}.nav-shell{padding-left:12px;padding-right:9px}.nav-right .icon-btn{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* ===== FizzyWay theme additions ===== */
.logo{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}
.logo img,.logo .custom-logo{width:40px;height:40px;object-fit:contain;display:block}
.custom-logo-link{display:inline-flex}
.footer-logo{display:flex;align-items:center;gap:12px}
.footer-logo img{width:46px;height:46px;background:#fffdf8;border-radius:50%;padding:4px}
.admin-bar .nav{top:46px}
@media screen and (max-width:782px){.admin-bar .nav{top:54px}}
.nav-left a[aria-current],.category-strip .current-menu-item>a{text-decoration:underline;text-underline-offset:5px}
.category-strip ul,.mobile-drawer nav ul{list-style:none;margin:0;padding:0;display:contents}
.hero-art.has-photo .leaf{display:none}
.article-img.has-photo{background-size:cover;background-position:center}
.article-img.has-photo::before,.article-img.has-photo::after{display:none}
.recipe-card.has-photo .decor-disc{display:none}
.recipe-card.has-photo::before{background-size:cover!important;background-position:center!important}
.recipe-card .card-meta span+span::before{content:"· ";opacity:.7}
.recipe-card .card-meta span{margin-right:-8px}
.mood-link{display:inline-flex;margin-top:16px;font-weight:700;font-size:14px;gap:6px;text-decoration:underline;text-underline-offset:4px}
.ingredient{font:inherit;color:inherit;text-align:left;cursor:pointer}
.ingredient:focus-visible,.mood-pill:focus-visible,.problem-btn:focus-visible,.btn:focus-visible,.icon-btn:focus-visible{outline:3px solid #7eaa96;outline-offset:3px}
/* archive & post extras */
.archive-intro .eyebrow{margin-bottom:14px}
.archive-desc{max-width:760px;color:var(--muted);font-size:17px;line-height:1.7}
.archive-desc p{margin:0 0 14px}
.nav-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:40px}
.nav-links .page-numbers{min-width:46px;height:46px;padding:0 16px;border-radius:999px;background:white;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-weight:700}
.nav-links .page-numbers.current{background:var(--ink);color:white;border-color:var(--ink)}
.post-card{transition:.3s var(--ease)}.post-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(45,66,57,.10)}
.post-card a{display:block;height:100%}
.empty-state{background:white;border:1px solid var(--line);border-radius:28px;padding:40px;text-align:center;margin-top:30px}
.empty-state p{color:var(--muted)}
.post-shell .eyebrow{margin-bottom:16px}
.post-meta a{text-decoration:underline;text-underline-offset:3px}
.entry-content > *{max-width:100%}
.entry-content p{margin:0 0 22px}
.entry-content a{color:var(--green-deep);text-decoration:underline;text-underline-offset:3px}
.entry-content ul,.entry-content ol{padding-left:24px;margin:0 0 24px}
.entry-content li{margin-bottom:8px}
.entry-content blockquote{margin:30px 0;padding:22px 26px;border-radius:22px;background:var(--mint);font-family:"Playfair Display",Georgia,serif;font-size:22px;line-height:1.45}
.entry-content table{width:100%;border-collapse:collapse;margin:28px 0;font-size:16px;background:white;border-radius:18px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.entry-content th{background:var(--ink);color:white;text-align:left;padding:14px 16px;font-weight:600}
.entry-content td{padding:13px 16px;border-top:1px solid var(--line);vertical-align:top}
.entry-content tr:nth-child(even) td{background:#fbf8f1}
.entry-content figure{margin:30px 0}.entry-content figcaption{font-size:13px;color:var(--muted);text-align:center;margin-top:8px}
.entry-content hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.entry-content details{background:white;border:1px solid var(--line);border-radius:18px;padding:0 20px;margin:0 0 10px}
.entry-content summary{cursor:pointer;font-weight:700;padding:18px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
.entry-content summary::after{content:"+";font-size:22px;line-height:1;color:var(--green-deep)}
.entry-content details[open] summary::after{content:"−"}
.entry-content details > *:not(summary){margin-bottom:18px}
/* article boxes produced by the drafts pipeline */
.entry-content .fw-answer{background:var(--ink);color:#fff;border-radius:26px;padding:28px 30px;margin:0 0 32px;font-family:"Playfair Display",Georgia,serif;font-size:22px;line-height:1.45}
.entry-content .fw-answer *{color:inherit}
.entry-content .fw-answer p:last-child{margin-bottom:0}
.entry-content [class*="fw-ingredients"],.entry-content [class*="fw-tools"],.entry-content [class*="fw-box"]{background:white;border:1px solid var(--line);border-radius:24px;padding:24px 28px;margin:30px 0}
.entry-content [class*="fw-steps"] h3,.entry-content [class*="fw-step"] h3{font-size:26px}
.entry-content .fw-faq{margin:40px 0}
.entry-content .fw-faq h3,.entry-content .fw-faq dt{font-family:"DM Sans",sans-serif;font-size:18px;font-weight:700;letter-spacing:0;background:white;border:1px solid var(--line);border-radius:18px;padding:18px 20px;margin:10px 0 0}
.entry-content .fw-faq p,.entry-content .fw-faq dd{margin:0;padding:14px 20px 4px}
.related{margin-top:70px;padding-top:40px;border-top:1px solid var(--line)}
.related h2{font-size:clamp(34px,4vw,48px)}
.post-cta{margin:50px 0 0;padding:34px;border-radius:28px;background:#dce9e2;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.post-cta h3{font-size:30px}
.not-found-art{height:clamp(220px,34vw,420px);border-radius:32px;background:linear-gradient(180deg,rgba(15,47,37,.1),rgba(15,47,37,.4)),var(--nf-photo) center/cover;margin:36px 0}
.chip-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.chip-row a{padding:11px 17px;border-radius:999px;border:1px solid var(--line);background:white;font-weight:700;font-size:14px}
.chip-row a:hover{background:var(--mint)}
.wp-caption,.gallery-caption,.bypostauthor,.sticky{max-width:100%}
.alignleft{float:left;margin:0 24px 16px 0}.alignright{float:right;margin:0 0 16px 24px}.aligncenter{display:block;margin:0 auto}
.screen-reader-text:focus{clip:auto;position:static}
@media(max-width:700px){.logo img,.logo .custom-logo{width:34px;height:34px}.post-cta{padding:24px}.entry-content{font-size:17px}.entry-content .fw-answer{font-size:19px;padding:22px}}
form.search-panel{display:flex;gap:8px;width:min(560px,100%);padding:10px}
form.search-panel button{padding:0 18px;min-height:46px}
.article-body small{text-transform:uppercase}
.post-card img{height:auto}
.ingredient-photo{display:block;width:58px;height:58px;object-fit:contain;margin-bottom:22px;transition:transform .3s var(--ease)}
.ingredient:hover .ingredient-photo{transform:scale(1.08) rotate(-4deg)}
.modal-icon .modal-photo{display:block;width:84px;height:84px;object-fit:contain}
@media(max-width:700px){.ingredient-photo{width:48px;height:48px;margin-bottom:16px}}
