:root{ --limoncello:#F2C94C; --limoncello-deep:#E0AC1F; --vert-eau:#BFE3D6; --vert-eau-soft:#E4F3EC; --pin:#184A41; --pin-soft:#2F6B5F; --cream:#FBF8EF; --ink:#1B3B34; --white:#FFFFFF; }
*{box-sizing:border-box; margin:0; padding:0;}
body{ font-family:'Inter', sans-serif; background:var(--cream); color:var(--ink); line-height:1.7; }
h1,h2,.serif{ font-family:'Fraunces', serif; font-weight:600; color:var(--pin); }
a{ color:var(--pin); }
.wrap{ max-width:760px; margin:0 auto; padding:0 24px; }
nav{ display:flex; justify-content:space-between; align-items:center; max-width:1180px; margin:0 auto; padding:24px 32px; }
.logo{ font-family:'Fraunces', serif; font-style:italic; font-size:1.3rem; color:var(--pin); }
.logo em{ opacity:0.7; }
nav a.back{ font-size:0.88rem; font-weight:600; color:var(--pin-soft); }
header.article-head{ background:var(--vert-eau-soft); padding:70px 24px 60px; text-align:center; }
header.article-head .kicker{ color:var(--limoncello-deep); font-weight:700; font-size:0.85rem; text-transform:uppercase; letter-spacing:0.08em; display:block; margin-bottom:16px; }
header.article-head h1{ font-size:clamp(2.1rem, 5vw, 3rem); max-width:20ch; margin:0 auto 18px; }
header.article-head p{ color:var(--pin-soft); max-width:52ch; margin:0 auto; font-size:1.05rem; }
article{ padding:60px 24px 40px; }
article h2{ font-size:1.5rem; margin-top:48px; margin-bottom:14px; }
.article-img{ width:100%; height:280px; object-fit:cover; border-radius:20px; margin-bottom:18px; background:var(--vert-eau-soft); }
.article-img.img-fallback{
  background:linear-gradient(135deg, var(--vert-eau-soft), var(--limoncello) 180%);
  position:relative;
}
article p{ margin-bottom:16px; font-size:1.02rem; }
article ul{ margin:0 0 16px 22px; }
article li{ margin-bottom:8px; }
.callout{ background:var(--vert-eau-soft); border-radius:20px; padding:28px 30px; margin:40px 0; }
.callout h3{ font-family:'Fraunces', serif; color:var(--pin); margin-bottom:10px; }
.callout p{ margin-bottom:16px; color:var(--pin-soft); }
.btn-primary{ background:var(--limoncello); color:var(--pin); padding:14px 26px; border-radius:100px; font-weight:700; font-size:0.94rem; display:inline-block; }
.related{ background:var(--white); border:1px solid rgba(24,74,65,0.1); border-radius:16px; padding:22px 24px; margin:16px 0 40px; }
.related .related-title{ font-size:0.8rem; font-weight:700; text-transform:uppercase; letter-spacing:0.06em; color:var(--limoncello-deep); margin-bottom:10px; }
.related ul{ margin:0; list-style:none; }
.related li{ margin-bottom:6px; }
.breadcrumb{ max-width:1180px; margin:0 auto; padding:0 32px; font-size:0.82rem; color:var(--pin-soft); }
.breadcrumb a{ color:var(--pin-soft); }
.breadcrumb a:hover{ color:var(--pin); }
.breadcrumb span.sep{ margin:0 6px; opacity:0.5; }
.breadcrumb span[aria-current]{ color:var(--pin); font-weight:600; }
.faq{ margin-top:8px; }
.faq-item{ border-bottom:1px solid rgba(24,74,65,0.1); padding:18px 0; }
.faq-item:last-child{ border-bottom:none; }
.faq-item h3{ font-family:'Inter', sans-serif; font-weight:700; font-size:1rem; color:var(--pin); margin-bottom:8px; }
.faq-item p{ margin-bottom:0; color:var(--pin-soft); font-size:0.96rem; }
footer{ padding:50px 24px; text-align:center; font-size:0.85rem; color:var(--pin-soft); border-top:1px solid rgba(24,74,65,0.12); margin-top:40px; }
footer a{ color:var(--pin-soft); margin:0 10px; }
