/* Blog (/blog, /blog/<slug>, /blog/authors/<slug>). Generated pages: scripts/blog.mjs. Everything is scoped under .bl.
   Listing: the "Blog-Listing-V2Centered" design. Post page: the Lovable blog template. Brand: Poppins only; canvas #fff,
   baseline #222, graphite #555, cream #F8F5EF, coral #FF6B6B, coral ink #A83C3C, leaf #50EBC5. */
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/ab7a9164435121aa.woff2") format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/6c86d3e39cd44957.woff2") format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/6865eddfad58bc69.woff2") format("woff2");unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/038a10b3447236a7.woff2") format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/b7292a62ad32587e.woff2") format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/1c17f9bcd5eca43c.woff2") format("woff2");unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/8bbfef09d2e8adae.woff2") format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/8e7c07bd5a6c7e47.woff2") format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/113a38bdc7d95ad6.woff2") format("woff2");unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* the strip behind the floating menu and the page edges are cream, as on the other pages (the browser default is white with an 8px margin) */
html:has(.bl),body:has(.bl){margin:0;background:#F8F5EF}
.bl{background:#F8F5EF;color:#222222;font-family:"Poppins",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.bl.bl-article{background:#FFFFFF}
.bl .sec{position:relative}
.bl{margin:0}
.bl, .bl *{box-sizing:border-box}
.bl h1,.bl h2,.bl h3,.bl p,.bl ul,.bl ol{margin:0}
.bl ul,.bl ol{padding:0;list-style:none}
.bl a{color:#A83C3C;text-decoration:none}
.bl a:hover{text-decoration:underline}
.bl a:focus-visible,.bl button:focus-visible,.bl input:focus-visible,.bl select:focus-visible,.bl summary:focus-visible{outline:2px solid #222222;outline-offset:2px}
.bl .wrap{max-width:1280px;margin:0 auto;padding:0 32px}
.bl .eyebrow{font-size:11px;line-height:1.4;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:#A83C3C}
.bl .h-hero{font-size:48px;line-height:1.15;font-weight:600;letter-spacing:-0.02em}
.bl .h-sec{font-size:32px;line-height:1.2;font-weight:600;letter-spacing:-0.015em}
.bl .h-block{font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-0.01em}
.bl .h-card{font-size:20px;line-height:1.35;font-weight:600;letter-spacing:-0.005em}
.bl .lead{font-size:18px;line-height:1.6}
.bl .body-g{font-size:16px;line-height:1.6;color:#555555}
.bl .body-s{font-size:14px;line-height:1.5;color:#555555}
.bl .cap{font-size:12px;line-height:1.6;color:#555555}
.bl .lnk{display:inline-flex;align-items:center;min-height:44px;font-size:14px;line-height:1.45;font-weight:600;color:#A83C3C;white-space:nowrap;background:none;border:0;padding:0;cursor:pointer;font-family:'Poppins',system-ui,sans-serif}
.bl .lnk-t{font-size:14px;line-height:1.45;font-weight:600;color:#A83C3C}
.bl .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 24px;border-radius:999px;font:500 14px/1.45 'Poppins',system-ui,sans-serif;border:1px solid #222222;background:transparent;color:#222222;cursor:pointer}
.bl .btn:hover{background:#222222;color:#FFFFFF}
.bl .btn-coral{background:#FF6B6B;border-color:#FF6B6B;color:#222222;flex:none}
.bl .btn-coral:hover{background:#222222;border-color:#222222;color:#FFFFFF}
.bl .mast{padding:64px 0 48px}
.bl .mast-in{display:flex;align-items:flex-end;justify-content:space-between;gap:48px}
.bl .mast-l{display:flex;flex-direction:column;gap:16px;max-width:760px}
.bl .stats{display:flex;gap:32px;flex:none}
.bl .stat{display:flex;flex-direction:column;gap:4px;padding-left:24px;border-left:1px solid rgba(34,34,34,0.14)}
.bl .stat b{font-size:32px;line-height:1.2;font-weight:600;letter-spacing:-0.015em}
.bl .navbar{display:flex;align-items:stretch;justify-content:space-between;gap:24px;border-bottom:1px solid rgba(34,34,34,0.14);border-top:1px solid rgba(34,34,34,0.14)}
.bl .tabs{display:flex;gap:32px}
.bl .tab{display:inline-flex;align-items:center;min-height:56px;padding:0;background-color:transparent;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;font:500 14px/1.45 'Poppins',system-ui,sans-serif;color:#555555;cursor:pointer;white-space:nowrap;border-radius:0}
.bl .tab:hover{color:#222222}
.bl .tab[aria-pressed="true"],.bl .sel[data-on="true"]{color:#222222;border-bottom-color:#222222}
.bl .sel{appearance:none;-webkit-appearance:none;padding-right:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%23555555' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;width:124px}
.bl .search{position:relative;width:272px;flex:none;align-self:center}
.bl .search svg{position:absolute;left:16px;top:14px;pointer-events:none}
.bl .search input{width:100%;min-height:44px;padding:0 16px 0 44px;border:1px solid rgba(34,34,34,0.3);border-radius:10px;background:#FFFFFF;font:400 16px/1.6 'Poppins',system-ui,sans-serif;color:#222222}
.bl .sec{padding:96px 0}
.bl .sec-first{padding:64px 0 96px}
.bl .band{background:#FFFFFF}
.bl .stack{display:flex;flex-direction:column;gap:48px}
.bl .sh{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}
.bl .sh-r{display:flex;align-items:center;gap:16px}
.bl .thumb{position:relative;overflow:hidden;aspect-ratio:3/2;background:#F8F5EF;border:1px solid rgba(34,34,34,0.14);border-radius:12px}
.bl .thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.bl .fgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px}
.bl .f-l{grid-column:span 7}
.bl .f-r{grid-column:span 5;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.bl .fi{display:grid;grid-template-columns:176px minmax(0,1fr);gap:24px;align-items:start;color:#222222}
.bl .fi + .fi{padding-top:24px;border-top:1px solid rgba(34,34,34,0.14)}
.bl .fi-b{display:flex;flex-direction:column;gap:8px;min-width:0}
.bl .fi:hover,.bl .pc:hover{text-decoration:none}
.bl .fi:hover h3,.bl .pc:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.bl .pc{display:flex;flex-direction:column;gap:16px;color:#222222;min-width:0}
.bl .pc .h-card,.bl .pc .h-block{margin-top:-8px}
.bl .pm{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bl .topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.bl .tcard{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding:24px;border:1px solid rgba(34,34,34,0.14);border-radius:16px;background:#FFFFFF;color:#222222;font-family:'Poppins',system-ui,sans-serif;cursor:pointer;min-height:44px}
.bl .band .tcard{background:#F8F5EF}
.bl .tcard:hover{border-color:#222222}
.bl .tcard .body-s{flex:1}
.bl .tcard .lnk-t{margin-top:16px}
.bl .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px}
.bl .empty{display:flex;flex-direction:column;gap:16px;align-items:flex-start;padding:32px;border:1px solid rgba(34,34,34,0.14);border-radius:16px;background:#FFFFFF}
.bl .more{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}
.bl .sub{background:linear-gradient(180deg,#FFF0F0,#F8F5EF)}
.bl .sub-in{display:flex;align-items:center;justify-content:space-between;gap:48px}
.bl .sub-l{display:flex;flex-direction:column;gap:16px;max-width:560px}
.bl .sub-f{display:flex;flex-direction:column;gap:8px;width:480px;flex:none}
.bl .sub-row{display:flex;gap:8px}
.bl .sub-row input{flex:1;min-width:0;min-height:44px;padding:0 16px;border:1px solid rgba(34,34,34,0.3);border-radius:10px;background:#FFFFFF;font:400 16px/1.6 'Poppins',system-ui,sans-serif;color:#222222}
.bl [hidden]{display:none!important}
.bl.js .pc.is-off{display:none}
.bl:not(.js) #res-more{display:none}
@media (max-width:1050px){
.bl .wrap{padding:0 24px}
.bl .mast{padding:48px 0 32px}
.bl .mast-in{flex-direction:column;align-items:flex-start;gap:32px}
.bl .navbar{flex-wrap:wrap;gap:0}
.bl .tabs{order:2;width:100%;overflow-x:auto;gap:24px}
.bl .search{order:1;width:100%;max-width:none;margin:16px 0}
.bl .sec,.bl .sec-first{padding:64px 0}
.bl .fgrid{grid-template-columns:minmax(0,1fr);gap:48px}
.bl .f-l,.bl .f-r{grid-column:auto}
.bl .topics{grid-template-columns:repeat(2,minmax(0,1fr))}
.bl .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.bl .sub-in{flex-direction:column;align-items:flex-start;gap:32px}
.bl .sub-f{width:100%;max-width:560px}
}
@media (max-width:720px){
.bl .wrap{padding:0 20px}
.bl .h-hero{font-size:34px}
.bl .h-sec{font-size:26px}
.bl .h-block{font-size:22px}
.bl .h-card{font-size:18px}
.bl .lead{font-size:16px}
.bl .stats{gap:16px}
.bl .stat{padding-left:16px}
.bl .stat b{font-size:26px}
.bl .sec,.bl .sec-first{padding:48px 0}
.bl .stack{gap:32px}
.bl .fgrid{gap:32px}
.bl .fi{grid-template-columns:112px minmax(0,1fr);gap:16px}
.bl .topics,.bl .grid{grid-template-columns:minmax(0,1fr)}
.bl .topics{gap:16px}
.bl .grid{gap:32px}
.bl .tabs{margin:0 -20px;padding:0 20px}
.bl .tab{flex:none}
.bl .sub-row{flex-direction:column}
.bl .btn-coral{width:100%}
}
.bl .chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(34,34,34,0.3);background-color:transparent;font:500 14px/1.45 'Poppins',system-ui,sans-serif;color:#222222;cursor:pointer;white-space:nowrap}
.bl .chip:hover{border-color:#222222}
.bl .chip .n{font-size:12px;font-weight:400;color:#555555}
.bl .chip[aria-pressed="true"]{background-color:#222222;border-color:#222222;color:#FFFFFF}
.bl .chip[aria-pressed="true"] .n{color:#D9D5CE}
.bl .chip:disabled{opacity:.45;cursor:default;border-color:rgba(34,34,34,0.14)}
.bl .chip:disabled:hover{border-color:rgba(34,34,34,0.14)}
.bl .fchips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bl .flabel{font-size:12px;line-height:1.6;color:#555555;margin-right:8px}
.bl .tw{grid-column:span 2}
.bl .tw .cap{line-height:1.6}
.bl .fstrip{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bl .topics{grid-template-columns:repeat(5,minmax(0,1fr))}
.bl .tlink{display:inline-flex;align-items:center;min-height:44px;font-size:14px;line-height:1.45;font-weight:600;color:#A83C3C}
@media (max-width:1050px){
.bl .topics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
.bl .topics{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:16px}
.bl .tcard{padding:16px;min-height:72px;justify-content:center}
.bl .tcard .h-card{font-size:16px;line-height:1.35}
.bl .tcard .body-s,.bl .tcard .lnk-t{display:none}
.bl .tw{grid-column:auto}
.bl .fstrip{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px;padding:0 20px 8px}
.bl .fchips{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px;padding:0 20px 8px}
.bl .chip{flex:none}
.bl .flabel{flex:none}
.bl .tabs{margin:0 -20px;padding:0 20px}
}
.bl .sel{field-sizing:content;width:auto;min-width:124px}
.bl .hero-h{display:flex;align-items:center;justify-content:center;gap:16px}
.bl .cta-sec{padding:96px 0}
.bl .cta-panel{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:48px;align-items:stretch;border:1px solid #F5D9D9;border-radius:16px;background:#FFF0F0;overflow:hidden;padding:0 64px}
.bl .cta-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:24px;padding:56px 0;min-width:0}
.bl .cta-h{margin:0}
.bl .cta-lead{max-width:560px;color:#555555;margin:0}
.bl .cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:56px;padding:0 24px;border-radius:999px;background:#FF6B6B;color:#222222;font-size:16px;line-height:1;font-weight:600;white-space:nowrap}
.bl .cta-btn:hover{background:#A83C3C;color:#FFFFFF;text-decoration:none}
.bl .cta-btn svg{display:block;width:18px;height:18px;transition:transform 240ms cubic-bezier(.2,.7,.2,1)}
.bl .cta-btn:hover svg{transform:translateX(4px)}
.bl .cta-scout{position:relative;display:flex;align-items:flex-end;justify-content:center;min-width:0;padding:48px 0 24px}
.bl .cta-scout::after{content:"";position:absolute;left:50%;bottom:8px;width:min(88%,300px);height:32px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(34,34,34,.30) 0,rgba(34,34,34,.14) 45%,rgba(34,34,34,0) 72%);pointer-events:none}
.bl .cta-pup{position:relative;z-index:1;display:block;width:min(100%,320px);height:auto}
@media (max-width:1050px){
.bl .cta-sec{padding:64px 0}
.bl .cta-panel{padding:0 32px;gap:32px}
}
@media (max-width:720px){
.bl .cta-sec{padding:48px 0}
.bl .cta-panel{grid-template-columns:minmax(0,1fr);padding:0 20px;gap:0}
.bl .cta-copy{padding:32px 0 24px}
.bl .cta-btn{width:100%}
.bl .cta-scout{padding:0 0 24px}
.bl .cta-pup{width:min(100%,240px)}
}
.bl .eb-pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;background:#FFFFFF;border:1px solid #A83C3C;color:#A83C3C;font-size:11px;font-weight:600;line-height:1.4;letter-spacing:0.08em;text-transform:uppercase}
.bl .hero-ic{width:64px;height:64px;flex:none;color:#FF6B6B;transform:rotate(-8deg)}
.bl .hl{position:relative;display:inline-block;white-space:nowrap;isolation:isolate}
.bl .hl-w{position:relative;color:#222222}
.bl .hl-mk{position:absolute;left:-3%;bottom:0.1em;width:106%;height:0.5em;z-index:-1;overflow:visible}
@media (max-width:720px){
.bl .hero-h{gap:12px}
.bl .hero-ic{width:44px;height:44px}
}
.bl .mast{padding:64px 0 48px}
.bl .mast-in{justify-content:center}
.bl .mast-l{align-items:center;text-align:center;margin:0 auto;max-width:780px}
.bl .mast-l .search.hero-search{width:100%;max-width:520px;margin:16px 0 0;order:0;align-self:center;text-align:left}
.bl .mast-l .search.hero-search input{border-radius:999px;padding:0 24px 0 48px}
.bl .mast-l .search.hero-search svg{left:20px}
.bl .navbar{justify-content:center}
.bl .tabs{justify-content:safe center;overflow-x:auto;scrollbar-width:none}
.bl .tabs::-webkit-scrollbar{display:none}
@media (max-width:1050px){
.bl .mast{padding:48px 0 32px}
.bl .navbar{justify-content:center}
.bl .tabs{width:100%;justify-content:safe center}
.bl .mast-l .search.hero-search{margin:8px 0 0}
}
@media (max-width:720px){
.bl .mast{padding:32px 0 32px}
.bl .navbar{justify-content:flex-start}
.bl .tabs{justify-content:flex-start}
}
.bl .tab-sep{flex:none;align-self:center;width:1px;height:24px;background:rgba(34,34,34,0.14)}
.bl .areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.bl .acard{display:flex;flex-direction:column;gap:16px;padding:24px;border:1px solid rgba(34,34,34,0.14);border-radius:16px;background:#F8F5EF}
.bl .acard-h{display:flex;flex-direction:column;gap:8px}
.bl .alist{display:flex;flex-direction:column}
.bl .alist button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;padding:0;background:none;border:0;border-top:1px solid rgba(34,34,34,0.14);font:500 14px/1.45 'Poppins',system-ui,sans-serif;color:#222222;text-align:left;cursor:pointer}
.bl .alist button:hover{color:#A83C3C}
.bl .alist .n{font-size:12px;font-weight:400;color:#555555}
.bl .acard-all{margin-top:auto;justify-content:flex-start}
.bl .blk{display:flex;flex-direction:column;gap:32px}
.bl .fcards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.bl .fcard{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding:24px;border:1px solid rgba(34,34,34,0.14);border-radius:16px;background:#F8F5EF;color:#222222;font-family:'Poppins',system-ui,sans-serif;cursor:pointer;min-height:44px}
.bl .fcard:hover{border-color:#222222}
.bl .fcard .body-s{flex:1}
.bl .fcard .lnk-t{margin-top:16px}
.bl .subnav{padding-top:24px}
.bl .stabs{display:flex;align-items:center;gap:24px;overflow-x:auto;scrollbar-width:none}
.bl .stabs::-webkit-scrollbar{display:none}
.bl .sub-lab{flex:none;margin:0 0 0 auto;font-size:11px;line-height:1.4;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:#555555}
.bl .stab{flex:none;display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;font:500 13px/1.45 'Poppins',system-ui,sans-serif;color:#555555;cursor:pointer;white-space:nowrap}
.bl .stab:hover{color:#222222}
.bl .stab[aria-pressed="true"]{color:#A83C3C;border-bottom-color:#A83C3C}
.bl .stab:last-child{margin-right:auto}
.bl .navbar{scroll-margin-top:24px}
.bl .res-head{display:flex;flex-direction:column;gap:8px}
.bl .crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:0 8px;font-size:13px;line-height:1.45;font-weight:500;color:#555555;margin-bottom:8px}
.bl .crumbs[hidden]{display:none}
.bl .crumb{display:inline-flex;align-items:center;min-height:44px;padding:0;background:none;border:0;font:500 13px/1.45 'Poppins',system-ui,sans-serif;color:#A83C3C;cursor:pointer}
.bl .crumb:hover{text-decoration:underline;text-underline-offset:4px}
.bl .crumbs [aria-current]{color:#222222}
.bl .cg{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.bl .sh-r{flex-wrap:wrap}
.bl .res-head .sh{align-items:center}
.bl #all .stack{gap:32px}
.bl .subnav ~ main #all,.bl .subnav ~ #all{padding-top:48px}
@keyframes swap{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.bl .swap{animation:swap 240ms cubic-bezier(.2,.7,.2,1) both}
@media (prefers-reduced-motion:reduce){
.bl .swap{animation:none}
}
@media (min-width:1051px){
.bl .acard-h .body-s{min-height:42px}
}
@media (max-width:1050px){
.bl .areas{grid-template-columns:minmax(0,1fr);gap:16px}
.bl .fcards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
@media (max-width:720px){
.bl .stabs{margin:0 -20px;padding:0 20px 8px}
.bl .sub-lab{margin-left:0}
.bl .fcards{grid-template-columns:minmax(0,1fr)}
.bl .subnav{padding-top:16px}
.bl .tab-sep{display:none}
}

/* ======================= post page (Lovable blog template) ======================= */
.bl-article{background:#FFFFFF}
.bl .t-headline{font-size:48px;line-height:1.15;font-weight:600;letter-spacing:-0.02em;text-wrap:balance}
.bl .t-l{font-size:32px;line-height:1.2;font-weight:600;letter-spacing:-0.015em}
.bl .t-m{font-size:24px;line-height:1.3;font-weight:600;letter-spacing:-0.01em}
.bl .t-s{font-size:20px;line-height:1.35;font-weight:600;letter-spacing:-0.005em}
.bl .t-ui{font-size:14px;line-height:1.45;font-weight:500}
.bl .t-ui-s{font-size:13px;line-height:1.45;font-weight:500}
.bl .t-cap{font-size:12px;line-height:1.6}
.bl .t-body{font-size:16px;line-height:1.6}
.bl .muted{color:#555555}
.bl .row{display:flex;align-items:center;gap:16px}
.bl .row-s{gap:8px}
.bl .stack-s{display:flex;flex-direction:column;gap:8px}
.bl .stack-g{display:flex;flex-direction:column;gap:32px}
.bl .stack-b{display:flex;flex-direction:column;gap:48px}
.bl .av{display:block;flex:none;border-radius:999px;object-fit:cover}
.bl .av-mono{display:inline-grid;place-items:center;background:#FFF0F0;color:#A83C3C;font-weight:600;font-size:15px;border:1px solid #F5D9D9}
.bl .blog-skip{position:fixed;z-index:100;top:8px;left:16px;padding:16px;background:#FFFFFF;color:#222222;transform:translateY(-200%)}
.bl .blog-skip:focus{transform:none}

/* hero */
.bl .blog-hero{background:#F8F5EF;padding:48px 0;border-bottom:1px solid rgba(34,34,34,0.14)}
.bl .blog-hero-centered{display:flex;flex-direction:column;gap:32px;align-items:center;text-align:center}
.bl .blog-hero-copy{display:flex;flex-direction:column;align-items:center;gap:24px;max-width:760px;margin:0 auto}
.bl .blog-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;color:#222222}
.bl .blog-breadcrumb svg{width:16px;height:16px;color:#555555}
.bl .blog-breadcrumb a{color:#222222}
.bl .blog-breadcrumb a.blog-category,.bl .blog-breadcrumb span.blog-category{color:#A83C3C}
.bl .blog-byline{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:16px 32px}
.bl .blog-author{display:inline-flex;align-items:center;gap:16px;color:inherit}
.bl .blog-author-trigger{border:1px solid transparent;border-radius:999px;padding:8px 16px 8px 8px;text-align:left;transition:border-color .15s,background-color .15s}
.bl .blog-author-trigger:hover{border-color:rgba(34,34,34,0.14);background:#FFFFFF;text-decoration:none}
.bl .blog-author-text{display:flex;flex-direction:column;line-height:1.2;color:#222222}
.bl .blog-author-text .t-cap{color:#555555}
.bl .blog-author-chevron{width:16px;height:16px;color:#555555;transition:transform .15s}
.bl .blog-author-trigger:hover .blog-author-chevron{transform:translateX(2px);color:#A83C3C}
.bl .blog-meta-item{display:inline-flex;align-items:center;gap:8px;color:#222222}
.bl .blog-meta-item svg{width:16px;height:16px;color:#A83C3C}
.bl .blog-cover{width:min(calc(25vh * 1200 / 630),420px);max-width:100%;margin:0 auto}
.bl .blog-cover img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;border-radius:16px}

/* reading layout */
.bl .blog-reading-band{padding:48px 0 96px}
.bl .blog-reading-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,7fr) minmax(0,2fr);gap:32px;align-items:start}
.bl .blog-sidebar{position:sticky;top:128px}
.bl .blog-article{min-width:0;max-width:720px}
.bl .blog-contents summary{min-height:44px;cursor:pointer;display:flex;align-items:center;border-bottom:1px solid #222222;font-weight:600;list-style:none}
.bl .blog-contents summary::-webkit-details-marker{display:none}
.bl .blog-contents nav{display:flex;flex-direction:column;padding-top:16px;gap:4px}
.bl .blog-contents nav a{display:grid;grid-template-columns:24px 1fr;gap:8px;padding:8px;margin:0 -8px;border-radius:10px;color:#555555}
.bl .blog-contents nav a span{color:#A83C3C}
.bl .blog-contents nav a:hover,.bl .blog-contents nav a[aria-current]{color:#222222;background:#F8F5EF;text-decoration:underline;text-underline-offset:4px}
.bl .blog-share{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid rgba(34,34,34,0.3);border-radius:10px;background:transparent;color:#222222;cursor:pointer;padding:0}
.bl .blog-share:hover{background:#F8F5EF;border-color:#222222;text-decoration:none}
.bl .blog-share svg{width:18px;height:18px}

/* body */
.bl .blog-takeaway{border-top:4px solid #FF6B6B;border-radius:16px;padding:24px;background:#F8F5EF;display:flex;flex-direction:column;gap:16px}
.bl .blog-takeaway .blog-prose{color:#222222}
.bl .blog-section{scroll-margin-top:128px;display:flex;flex-direction:column;gap:24px}
.bl .blog-section-heading{border-top:1px solid rgba(34,34,34,0.14);padding-top:32px}
.bl #introduction{gap:0}
.bl #introduction .blog-section-heading{display:none}
.bl .blog-prose{color:#555555;font-size:16px;line-height:1.6;display:flex;flex-direction:column;gap:16px;min-width:0}
.bl .blog-prose>*{margin:0}
.bl .blog-prose :is(ul,ol){padding-left:24px;display:flex;flex-direction:column;gap:8px}
.bl .blog-prose ul{list-style:disc}
.bl .blog-prose ol{list-style:decimal}
.bl .blog-prose li>:is(ul,ol){margin-top:8px}
.bl .blog-prose li>p+p{margin-top:8px}
.bl .blog-prose :is(strong,b){color:#222222;font-weight:600}
.bl .blog-prose a{color:#A83C3C;text-decoration:underline;text-underline-offset:4px}
.bl .blog-prose h3{margin-top:16px;font-size:20px;line-height:1.35;font-weight:600;color:#222222;letter-spacing:-0.005em}
.bl .blog-prose h4{margin-top:8px;font-size:16px;line-height:1.5;font-weight:600;color:#222222}
.bl .blog-prose blockquote{border-left:3px solid #FF6B6B;padding:4px 0 4px 24px;color:#222222}
.bl .blog-prose figure{display:flex;flex-direction:column;gap:8px}
.bl .blog-prose figure img{display:block;max-width:100%;height:auto;border-radius:12px;border:1px solid rgba(34,34,34,0.14)}
.bl .blog-prose figcaption{font-size:12px;color:#555555}
.bl .blog-prose img{max-width:100%;height:auto}
.bl .bp-video{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#222222}
.bl .bp-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.bl .bp-table{overflow-x:auto;border:1px solid rgba(34,34,34,0.14);border-radius:12px;background:#FFFFFF;max-width:100%}
.bl .bp-table table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5;min-width:480px}
.bl .bp-table th{background:#F8F5EF;color:#222222;font-weight:600;text-align:left}
.bl .bp-table :is(th,td){padding:12px 16px;border-bottom:1px solid rgba(34,34,34,0.14);vertical-align:top}
.bl .bp-table tr:last-child td{border-bottom:0}
.bl .bp-table td :is(ul,ol){padding-left:18px;margin:0}

/* call to action inside a post */
.bl .blog-cta{background:#222222;color:#FFFFFF;padding:48px 32px;border-top:8px solid #FF6B6B;border-radius:16px;display:flex;flex-direction:column;gap:24px}
.bl .blog-cta .eyebrow{color:#FF9696}
.bl .blog-cta h2{color:#FFFFFF}
.bl .blog-cta .cta-p{color:#E7E3DC;font-size:16px;line-height:1.6}
.bl .blog-conversion{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 24px;border-radius:999px;background:#FF6B6B;color:#222222;font-weight:600;font-size:14px;line-height:1.45}
.bl .blog-conversion:hover{background:#FFFFFF;text-decoration:none}
.bl .blog-conversion svg{width:16px;height:16px;transition:transform 240ms cubic-bezier(.2,.7,.2,1)}
.bl .blog-conversion:hover svg{transform:translateX(4px)}

/* FAQ */
.bl .blog-faqs{display:flex;flex-direction:column;gap:12px}
.bl .blog-faq{border:1px solid rgba(34,34,34,0.14);border-radius:12px;background:#FFFFFF}
.bl .blog-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;min-height:44px;cursor:pointer;list-style:none;font-weight:600;font-size:16px;line-height:1.4;color:#222222}
.bl .blog-faq summary::-webkit-details-marker{display:none}
.bl .blog-faq summary svg{flex:none;width:18px;height:18px;color:#A83C3C;transition:transform .24s cubic-bezier(.2,.7,.2,1)}
.bl .blog-faq[open] summary svg{transform:rotate(180deg)}
.bl .blog-faq .blog-prose{padding:0 20px 20px}

/* author, related, end links */
.bl .blog-author-end,.bl .blog-related-block{border-top:1px solid rgba(34,34,34,0.14);padding-top:32px}
.bl .blog-related-block{display:flex;flex-direction:column;gap:24px}
.bl .blog-author-end .t-ui-s{color:#555555}
.bl .blog-author-end .row{align-items:flex-start;gap:16px}
.bl .blog-text-link{display:inline-flex;align-items:center;gap:8px;color:#A83C3C}
.bl .blog-text-link svg{width:16px;height:16px;flex:none}
.bl .blog-text-link:hover{text-decoration:underline;text-underline-offset:4px}
.bl .blog-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bl .blog-related-card{display:flex;flex-direction:column;border:1px solid rgba(34,34,34,0.14);border-radius:16px;overflow:hidden;color:#222222;background:#FFFFFF;transition:border-color .2s;min-width:0}
.bl .blog-related-card:hover{border-color:#A83C3C;text-decoration:none}
.bl .blog-related-cover{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-bottom:1px solid rgba(34,34,34,0.14);background:#F8F5EF}
.bl .blog-related-body{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:16px}
.bl .blog-related-body .t-cap{color:#555555}
.bl .blog-related-body .t-s{display:inline-flex;gap:8px;align-items:baseline;font-size:16px;line-height:1.4}
.bl .blog-related-body .t-s svg{width:16px;height:16px;color:#A83C3C;flex:none;align-self:center}
.bl .blog-related-card:hover .t-s{text-decoration:underline;text-underline-offset:4px}
.bl .blog-end-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:center}
.bl .blog-back-top{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:500;color:#222222}
.bl .blog-back-top svg{width:16px;height:16px}

/* reading progress */
.bl .blog-progress{position:fixed;z-index:60;right:24px;bottom:24px;width:60px;height:60px;display:grid;place-items:center;border:1px solid rgba(34,34,34,0.14);border-radius:999px;background:#FFFFFF;color:#222222;cursor:pointer;opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 12px 28px rgba(34,34,34,.12);padding:0}
.bl .blog-progress.on{opacity:1;transform:none;pointer-events:auto}
.bl .blog-progress-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.bl .blog-progress-track,.bl .blog-progress-fill{fill:none;stroke-width:3}
.bl .blog-progress-track{stroke:rgba(34,34,34,.12)}
.bl .blog-progress-fill{stroke:#A83C3C;stroke-linecap:round;transition:stroke-dasharray .1s linear}
.bl .blog-progress-arrow{position:relative;width:16px;height:16px;color:#A83C3C}

/* author page */
.bl .blog-author-page-head{display:flex;gap:32px;align-items:center}
.bl .blog-author-page-head .av{width:112px;height:112px}
.bl .blog-author-page-head .av-mono{font-size:32px}
.bl .blog-author-page-head .blog-breadcrumb{justify-content:flex-start}

@media (max-width:1050px){
.bl .blog-reading-layout{grid-template-columns:minmax(0,2fr) minmax(0,6fr)}
.bl .blog-reading-layout .blog-sidebar{grid-column:1}
}
@media (max-width:720px){
.bl .t-headline{font-size:34px}
.bl .t-l{font-size:26px}
.bl .t-m{font-size:22px}
.bl .blog-hero{padding:32px 0}
.bl .blog-reading-band{padding:32px 0 64px}
.bl .blog-reading-layout{grid-template-columns:minmax(0,1fr);gap:48px}
.bl .blog-sidebar{position:static}
.bl .blog-contents nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bl .blog-byline{gap:8px 24px}
.bl .blog-byline>.blog-author{flex-basis:100%;justify-content:center}
.bl .blog-cta{padding:24px}
.bl .blog-related-grid{grid-template-columns:minmax(0,1fr)}
.bl .blog-progress{right:16px;bottom:16px}
.bl .blog-author-page-head{flex-direction:column;align-items:flex-start;gap:16px}
}
@media (prefers-reduced-motion:reduce){.bl *{scroll-behavior:auto!important;transition:none!important}}
