*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
  :root{
    --bg:#fdfbf5;--surface:#f1ece0;--surface-2:#e9e2d0;--white:#fff;
    --pine:#143a30;--pine-deep:#0f2c24;--pine-light:#1f4538;--pine-tint:#d9e4dd;
    --honey:#d99a2e;--honey-dk:#c2851f;--honey-tint:#f7e9cf;
    --ink:#1A2018;--ink-soft:#46564b;--muted:#9a907a;--border:#e5ddcb;
    --fd:'Space Grotesk',system-ui,sans-serif;--fb:'Hanken Grotesk',system-ui,sans-serif
  }
  html{scroll-behavior:smooth}
  body{font-family:var(--fb);background:var(--bg);color:var(--ink);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
  ::selection{background:var(--honey);color:var(--ink)}
  a{color:inherit}
  /* logo */
  .c-nav .logo img{height:96px;width:auto;display:block}
  .flogo img{height:40px;width:auto;display:block}
  /* scrolling coming-soon banner */
  .marq{background:var(--honey);color:var(--ink);overflow:hidden;white-space:nowrap;padding:11px 0}
  .marq__track{display:inline-block;animation:marq 26s linear infinite}
  .marq__track span{font-weight:600;font-size:14px;letter-spacing:.14em;margin:0 26px;text-transform:uppercase}
  .marq__track .dot{color:var(--pine);margin:0 0}
  @keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media(prefers-reduced-motion:reduce){.marq__track{animation:none}}
  .btn{font-family:var(--fd);font-weight:600;font-size:16px;padding:15px 30px;border-radius:100px;text-decoration:none;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:8px;transition:transform .12s,box-shadow .2s}
  .btn-sun{background:var(--honey);color:var(--ink);box-shadow:0 8px 24px rgba(217,154,46,.35)}
  .btn-sun:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(217,154,46,.45)}
  .btn-pine{background:var(--pine);color:#fff}
  .btn-pine:hover{background:var(--pine-light);transform:translateY(-3px)}
  .btn-ghost{background:transparent;color:var(--pine);border:2px solid var(--pine)}
  .btn-ghost:hover{background:var(--pine);color:var(--bg);transform:translateY(-3px)}
  .btn-outline-light{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4)}
  .btn-outline-light:hover{border-color:#fff;transform:translateY(-3px)}
  /* dark-pine chat demo (mirrors the app panel) */
  .demo{background:var(--pine);border-radius:20px;overflow:hidden;text-align:left;box-shadow:0 24px 60px rgba(20,40,30,.22)}
  .demo-bar{display:flex;align-items:center;gap:9px;padding:15px 18px 12px}
  .demo-bar .ci{color:var(--honey);width:18px;height:18px}
  .demo-bar span{font-family:var(--fd);font-size:15px;font-weight:600;color:#eef4ef}
  .demo-body{padding:6px 18px 18px;display:flex;flex-direction:column;gap:11px}
  .cq{align-self:flex-end;max-width:84%;background:var(--honey);color:#2a1c06;padding:11px 14px;border-radius:14px 14px 4px 14px;font-size:14px;line-height:1.45;font-weight:500}
  .ca{align-self:flex-start;max-width:90%;background:var(--pine-light);color:#cfe0d6;padding:11px 14px;border-radius:14px 14px 14px 4px;font-size:14px;line-height:1.45}.ca b{color:#eef4ef;font-weight:600}
  .demo-input{margin:4px 18px 16px;display:flex;align-items:center;gap:9px;background:var(--pine-light);border-radius:24px;padding:9px 9px 9px 15px}
  .demo-input .ph{flex:1;font-size:13px;color:#86a795}
  .demo-input .snd{width:30px;height:30px;border-radius:50%;background:var(--honey);display:grid;place-items:center}.demo-input .snd svg{width:15px;height:15px;color:var(--pine)}
  /* pricing/signup/footer */
  .pricing{background:var(--surface);padding:96px 0}.pricing .wrap2{max-width:1180px;margin:0 auto;padding:0 40px}
  .prgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:46px auto 0;max-width:720px}
  .pr{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:32px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
  .pr.feat{border:2px solid var(--pine);position:relative}
  .pr .badge{position:absolute;top:-12px;left:32px;background:var(--honey);color:var(--ink);font-family:var(--fd);font-weight:600;font-size:12px;padding:5px 13px;border-radius:100px}
  .pr:hover{transform:translateY(-5px);box-shadow:0 20px 48px rgba(20,40,30,.1)}
  .pr h3{font-family:var(--fd);font-weight:600;font-size:20px;margin-bottom:4px}.pr .who{font-size:13px;color:var(--ink-soft);min-height:34px;margin-bottom:14px}
  .pr .amt{font-family:var(--fd);font-weight:600;font-size:38px;line-height:1}.pr .amt small{font-size:15px;color:var(--ink-soft)}
  .pr .seats{font-size:12px;color:var(--ink-soft);margin:10px 0 16px;padding-bottom:16px;border-bottom:1px solid var(--border)}
  .pr ul{list-style:none;display:flex;flex-direction:column;gap:8px;flex:1;margin-bottom:22px}.pr li{font-size:13px;display:flex;gap:8px}.pr li span{color:var(--pine);font-weight:800}
  .pr .pbtn{font-family:var(--fd);text-align:center;font-weight:600;font-size:16px;padding:11px;border-radius:100px;text-decoration:none;background:var(--pine);color:#fff}.pr .pbtn:hover{background:var(--pine-light)}
  .pcontact{text-align:center;margin-top:24px;font-size:15px;color:var(--ink-soft)}.pcontact a{color:var(--pine);font-weight:600;text-decoration:none}.pcontact a:hover{color:var(--honey-dk)}
  .signup{background:var(--pine);padding:88px 0}.signup .wrap2{max-width:620px;margin:0 auto;padding:0 40px;text-align:center}
  .signup h2{font-family:var(--fd);font-weight:600;font-size:clamp(34px,4.6vw,52px);color:var(--bg);letter-spacing:-0.02em}.signup h2 em{font-style:normal;color:var(--honey)}
  .sublead{color:rgba(255,255,255,.72);font-size:18px;max-width:430px;margin:18px auto 34px}
  .sf{max-width:520px;margin:0 auto;text-align:left}.frow{display:flex;gap:12px;margin-bottom:14px;flex-wrap:wrap}
  .sf input{flex:1;min-width:200px;height:52px;padding:0 22px;border-radius:100px;border:2px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:var(--bg);font-family:var(--fb);font-size:16px;outline:none}
  .sf input::placeholder{color:rgba(255,255,255,.55)}.sf input:focus{border-color:var(--honey)}
  .prow{display:flex;gap:10px;flex-wrap:wrap}.po{display:none}.po+label{padding:9px 17px;border-radius:100px;border:2px solid rgba(255,255,255,.25);cursor:pointer;font-size:14px;font-weight:500;color:var(--bg)}.po:checked+label{background:var(--honey);border-color:var(--honey);color:var(--ink);font-weight:600}
  .sbtn{width:100%;height:54px;margin-top:16px;border:none;border-radius:100px;background:var(--honey);color:var(--ink);font-family:var(--fd);font-weight:600;font-size:16px;cursor:pointer;box-shadow:0 10px 26px rgba(217,154,46,.32)}.sbtn:hover{transform:translateY(-3px)}
  .snote{text-align:center;font-size:13px;color:rgba(255,255,255,.5);margin-top:14px}
  footer{padding:60px 0 38px;border-top:1px solid var(--border)}
  .fwrap3{max-width:1180px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
  .flogo{font-size:22px;text-decoration:none;display:inline-flex}
  .legal{font-size:13px;color:var(--ink-soft);margin-top:14px;max-width:280px}
  .fcol h4{font-family:var(--fd);font-weight:600;font-size:14px;color:var(--ink);margin-bottom:14px}
  .fcol a{display:block;font-size:14px;color:var(--ink-soft);text-decoration:none;font-weight:500;margin-bottom:10px}
  .fcol a:hover{color:var(--pine)}
  @media(max-width:900px){.prgrid{grid-template-columns:1fr 1fr}}
  @media(max-width:700px){.fwrap3{grid-template-columns:1fr 1fr;text-align:left}.fbrand{grid-column:1/-1;margin-bottom:10px}}
  @media(max-width:600px){.prgrid{grid-template-columns:1fr}}

  .sec-h{font-family:var(--fd);font-weight:600;font-size:clamp(34px,4.6vw,52px);letter-spacing:-0.02em;line-height:1.05}
  .ey{font-size:14px;font-weight:600;letter-spacing:.01em;color:var(--pine);margin-bottom:12px}
  /* shared expandable-screenshot lightbox (used by any section with a clickable frame) */
  .lightbox{position:fixed;inset:0;z-index:1000;background:rgba(15,20,15,.88);display:none;align-items:center;justify-content:center;padding:30px;cursor:zoom-out}
  .lightbox.open{display:flex}
  .lightbox img{max-width:95vw;max-height:92vh;width:auto;height:auto;border-radius:12px;box-shadow:0 30px 80px rgba(0,0,0,.55)}
  .lightbox .lb-close{position:absolute;top:18px;right:26px;color:#fff;font-size:38px;line-height:1;font-family:var(--fd);cursor:pointer;opacity:.85}
  .c-nav{position:sticky;top:0;z-index:100;background:rgba(253,251,245,.85);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:14px 40px}
  .c-nav .logo{text-decoration:none;display:flex}
  .c-nav .r{display:flex;gap:22px;align-items:center}.c-nav a.l{font-size:16px;font-weight:600;text-decoration:none;color:var(--ink-soft)}
  .c-nav a.l:hover{color:var(--pine)}
  .c-nav .nb{font-family:var(--fd);background:var(--pine);color:#fff;padding:9px 20px;border-radius:100px;text-decoration:none;font-weight:600;font-size:16px}.c-nav .nb:hover{background:var(--pine-light)}
  .wrap{max-width:1180px;margin:0 auto;padding:0 40px}
  /* hero */
  .c-hero{padding:70px 0 40px}
  .c-hero .wrap{max-width:1300px}
  .c-hgrid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
  .c-hleft{display:flex;flex-direction:column;gap:34px}
  .c-eye{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:13px;color:var(--pine);background:var(--pine-tint);padding:7px 16px;border-radius:100px;margin-bottom:24px}.c-eye::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--pine)}
  .c-htitle{font-family:var(--fd);font-weight:600;font-size:clamp(38px,4.7vw,70px);line-height:1.3;letter-spacing:-0.03em;color:var(--ink);white-space:nowrap;margin:0 0 36px}
  .c-hright{display:flex;flex-direction:column;gap:28px;padding-top:0}
  .c-hright p{font-size:20px;color:var(--ink-soft);line-height:1.5}
  .c-hright p.lead-strong{font-weight:700;color:var(--ink)}
  .c-hright p.c-trust{font-size:14px;color:var(--muted)}
  .c-hright{gap:18px}
  .c-hright .actions{display:flex;gap:12px;flex-wrap:wrap}
  /* overview video */
  .c-video{padding:30px 0 90px}
  .vid{position:relative;margin-top:40px;border-radius:24px;border:1px solid var(--border);box-shadow:0 18px 50px rgba(20,40,30,.10);background:var(--surface);display:flex;align-items:center;justify-content:center;overflow:hidden}
  .vplay{width:88px;height:88px;border-radius:50%;border:none;background:var(--honey);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 12px 28px rgba(217,154,46,.4);transition:transform .15s}
  .vplay:hover{transform:scale(1.06)}.vplay svg{width:30px;height:30px;margin-left:4px}
  .vtag{position:absolute;bottom:22px;font-size:13px;font-weight:600;color:rgba(255,255,255,.85);letter-spacing:.03em}
  /* always-up-to-date band */
  .c-state{background:linear-gradient(155deg,var(--pine),var(--pine-deep));color:var(--bg);padding:96px 0;text-align:center}
  .c-state h2{font-family:var(--fd);font-weight:600;font-size:clamp(34px,4.6vw,52px);line-height:1.1;letter-spacing:-0.02em;max-width:880px;margin:0 auto}
  .c-state h2 .accent{display:block;color:var(--honey)}
  .c-state p.lead{color:rgba(255,255,255,.82);font-size:19px;max-width:620px;margin:22px auto 0;line-height:1.55;text-wrap:balance}
  .c-how{padding:100px 0}
  .c-howgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start;margin-top:40px}
  .c-stick{position:sticky;top:110px;aspect-ratio:4/5;border-radius:24px;background:linear-gradient(155deg,var(--pine),var(--pine-deep));display:flex;align-items:center;justify-content:center;padding:36px}
  .c-stick .demo{max-width:100%;width:100%}
  .c-steps{display:flex;flex-direction:column;gap:18px}
  .c-step{padding:36px;background:var(--white);border:1px solid var(--border);border-radius:18px}
  .c-step h3{font-family:var(--fd);color:var(--pine);font-weight:600;font-size:20px;line-height:1.2;margin-bottom:10px;letter-spacing:-0.01em}
  .c-step p{color:var(--ink-soft);font-size:16px}
  /* why ifarlo — comparison */
  .c-why{padding:100px 0}
  .c-why h2 .accent{color:var(--pine)}
  .c-why .lead{color:var(--ink-soft);font-size:19px;max-width:700px;margin-top:18px}
  .cmp{margin-top:46px;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--white)}
  .cmp-row{display:grid;grid-template-columns:1fr 1fr}
  .cmp-row+.cmp-row{border-top:1px solid var(--border)}
  .cmp-cell{padding:20px 26px;font-size:16px}
  .cmp-cell.other{color:var(--ink-soft)}
  .cmp-cell.ifarlo{background:var(--pine-tint);color:var(--ink);font-weight:500;border-left:1px solid var(--border)}
  .cmp-headrow .cmp-cell{font-family:var(--fd);font-size:20px;font-weight:600;padding:18px 26px}
  .cmp-headrow .cmp-cell.ifarlo{color:var(--pine)}
  /* what ifarlo does — feature table */
  .c-does{background:var(--surface);padding:100px 0}
  .ftab{margin-top:44px;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--white)}
  .ftab-row{display:grid;grid-template-columns:.8fr 2fr}
  .ftab-row+.ftab-row{border-top:1px solid var(--border)}
  .ftab-head{background:var(--pine)}
  .ftab-head div{padding:16px 26px;color:var(--bg);font-weight:600;font-size:15px}
  .ftab .fname{font-family:var(--fd);color:var(--pine);padding:22px 26px;font-weight:600;font-size:20px;line-height:1.2;border-right:1px solid var(--border)}
  .ftab .fmeans{padding:22px 26px;color:var(--ink-soft);font-size:15.5px}
  .ftab-more{margin-top:28px}
  .ftab-more a{color:var(--pine);font-weight:600;font-size:15px;text-decoration:none}
  .ftab-more a:hover{color:var(--pine-light)}
  @media(max-width:700px){.cmp-headrow{display:none}.cmp-cell,.ftab-row>div{padding:16px 20px}.ftab-row{grid-template-columns:1fr}.ftab .fname{border-right:none;border-bottom:1px solid var(--border);padding-bottom:8px}.ftab-head{display:none}}
  /* blog teaser */
  .c-blog{padding:100px 0}
  .c-blog .bhead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:40px}
  .c-blog .blink{font-weight:600;font-size:15px;color:var(--pine);text-decoration:none;white-space:nowrap}.c-blog .blink:hover{color:var(--pine-light)}
  .bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .bpost{background:var(--white);border:1px solid var(--border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:transform .2s,box-shadow .2s}
  .bpost:hover{transform:translateY(-5px);box-shadow:0 20px 48px rgba(20,40,30,.1)}
  .bpost .thumb{aspect-ratio:16/10;background:linear-gradient(155deg,var(--pine),var(--pine-deep));background-size:cover;background-position:center}
  .bpost .body{padding:24px;display:flex;flex-direction:column;flex:1}
  .bpost .tag{font-size:12px;font-weight:700;letter-spacing:.01em;color:var(--pine);margin-bottom:10px}
  .bpost h3{font-family:var(--fd);font-weight:600;font-size:20px;line-height:1.2;margin-bottom:8px}
  .bpost p{font-size:14.5px;color:var(--ink-soft);flex:1}
  @media(max-width:860px){.bgrid{grid-template-columns:1fr}}
  @media(max-width:860px){.c-hgrid{grid-template-columns:1fr;gap:32px}.c-hleft{position:static}.c-howgrid{grid-template-columns:1fr;gap:28px}.c-stick{position:static;aspect-ratio:auto;padding:28px}.c-nav{padding:12px 22px}.c-nav .r .l{display:none}.c-nav .r .l.blog{display:inline-flex}.wrap{padding:0 22px}}

  /* channels — use your CRM how you want to */
  .c-channels{padding:100px 0}
  .c-channels .lead{color:var(--ink-soft);font-size:19px;max-width:700px;margin:16px 0 0}
  .ch-note{color:var(--ink-soft);font-size:15px;margin-top:40px;max-width:780px}

  /* shared dark pine CTA band */
  .cta-band{background:linear-gradient(155deg,var(--pine),var(--pine-deep));padding:90px 0;text-align:center}
  .cta-band h2{font-family:var(--fd);font-weight:600;font-size:clamp(26px,3.4vw,44px);color:var(--bg);letter-spacing:-0.02em;line-height:1.15;max-width:900px;margin:0 auto;text-wrap:balance}
  .cta-band p{color:rgba(255,255,255,.8);font-size:18px;margin:16px auto 30px;max-width:600px;text-wrap:balance}
  .cta-band .actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

  /* what changes in your week */
  .c-changes{padding:100px 0}
  .c-changes .lead{color:var(--ink-soft);font-size:19px;max-width:700px;margin:18px 0 0}

  /* built with agencies in mind */
  .c-agencies{padding:100px 0;background:var(--surface)}
  .c-agencies .lead{color:var(--ink-soft);font-size:19px;max-width:700px;margin:18px 0 0}
  .ag-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start;margin-top:44px}
  .ag-image img{width:100%;height:auto;border-radius:18px;border:1px solid var(--border);box-shadow:0 18px 50px rgba(20,40,30,.10);position:sticky;top:110px}
  .ag-benefits{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  .ag-b h3{font-family:var(--fd);color:var(--ink);font-weight:600;font-size:18px;line-height:1.2;margin-bottom:8px;letter-spacing:-0.01em}
  .ag-b p{color:var(--ink-soft);font-size:15.5px;line-height:1.6}
  .ag-close{color:var(--ink-soft);font-size:16px;max-width:780px;margin-top:40px}
  .ag-link{display:inline-block;margin-top:14px;color:var(--pine);font-weight:600;font-size:15px;text-decoration:none}
  .ag-link:hover{color:var(--pine-light)}
  @media(max-width:860px){.ag-grid{grid-template-columns:1fr}.ag-image img{position:static}.ag-benefits{grid-template-columns:1fr}}

  /* your data stays yours */
  .c-data{padding:100px 0}
  .c-data .lead{color:var(--ink-soft);font-size:19px;max-width:700px;margin:18px 0 0}
  .dt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
  .dt-item{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:26px}
  .dt-item h3{font-family:var(--fd);color:var(--ink);font-weight:600;font-size:18px;line-height:1.2;margin-bottom:8px;letter-spacing:-0.01em}
  .dt-item p{color:var(--ink-soft);font-size:15.5px;line-height:1.6}
  .dt-link{display:inline-block;margin-top:30px;color:var(--pine);font-weight:600;font-size:15px;text-decoration:none}
  .dt-link:hover{color:var(--pine-light)}
  @media(max-width:860px){.dt-grid{grid-template-columns:1fr}}

/* ── blog listing page ── */
.b-head{padding:80px 0 40px;text-align:center}
.b-head h1{font-family:var(--fd);font-weight:600;font-size:clamp(40px,6vw,72px);letter-spacing:-0.03em;line-height:1;color:var(--ink)}
.b-head p{color:var(--ink-soft);font-size:19px;max-width:560px;margin:18px auto 0}
.b-list{padding:30px 0 100px}
.bg{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.post{background:var(--white);border:1px solid var(--border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:transform .2s,box-shadow .2s}
.post:hover{transform:translateY(-5px);box-shadow:0 20px 48px rgba(20,40,30,.1)}
.post .thumb{aspect-ratio:16/10;background:linear-gradient(155deg,var(--pine),var(--pine-deep));background-size:cover;background-position:center}
.post .body{padding:24px;display:flex;flex-direction:column;flex:1}
.post .tag{font-size:12px;font-weight:700;letter-spacing:.01em;color:var(--pine);margin-bottom:10px}
.post h2{font-family:var(--fd);font-weight:600;font-size:20px;line-height:1.2;margin-bottom:8px}
.post p{font-size:14.5px;color:var(--ink-soft);flex:1}
.post .meta{font-size:13px;color:var(--muted);margin-top:16px}
.soon{margin-top:40px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:48px 30px}
.soon h2{font-family:var(--fd);font-weight:600;font-size:30px;margin-bottom:8px}
.soon p{color:var(--ink-soft);max-width:460px;margin:0 auto 22px}
.btn-cta{font-family:var(--fd);font-weight:600;font-size:16px;padding:13px 26px;border-radius:100px;text-decoration:none;display:inline-flex;background:var(--honey);color:var(--ink);box-shadow:0 8px 24px rgba(217,154,46,.35)}.btn-cta:hover{transform:translateY(-3px)}
@media(max-width:860px){.bg{grid-template-columns:1fr}}

/* ── single post (article) ── */
.article{max-width:720px;margin:0 auto;padding:60px 40px 90px}
.article .back{font-size:14px;font-weight:600;color:var(--pine);text-decoration:none}.article .back:hover{color:var(--honey-dk)}
.article .tag{display:inline-block;font-size:12px;font-weight:700;color:var(--pine);margin:24px 0 12px}
.article h1{font-family:var(--fd);font-weight:600;font-size:clamp(32px,5vw,46px);line-height:1.08;letter-spacing:-0.025em;color:var(--ink)}
.article .meta{color:var(--muted);font-size:14px;margin-top:14px}
.article .hero{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px;border:1px solid var(--border);margin-top:28px}
.article .prose{margin-top:32px;font-size:18px;line-height:1.7;color:var(--ink-soft)}
.article .prose>*+*{margin-top:20px}
.article .prose h2{font-family:var(--fd);font-weight:600;font-size:26px;color:var(--ink);margin-top:40px;letter-spacing:-0.01em}
.article .prose h3{font-family:var(--fd);font-weight:600;font-size:20px;color:var(--ink);margin-top:30px}
.article .prose a{color:var(--pine);font-weight:600;text-decoration:underline;text-decoration-color:var(--honey)}
.article .prose ul,.article .prose ol{padding-left:24px}
.article .prose li+li{margin-top:8px}
.article .prose blockquote{border-left:3px solid var(--honey);padding-left:20px;color:var(--ink);font-style:italic}
.article .prose img{max-width:100%;border-radius:14px;border:1px solid var(--border)}
.article .prose code{background:var(--surface-2);padding:2px 6px;border-radius:6px;font-size:.9em}
@media(max-width:600px){.article{padding:40px 22px 70px}.article .prose{font-size:17px}}

/* ── FAQ accordion (faq page + homepage FAQ section) ── */
.faq-head{padding:80px 0 20px;text-align:center}
.faq-lead{color:var(--ink-soft);font-size:19px;max-width:620px;margin:18px auto 0}
.faq-body{padding:20px 0 100px}
.faq-groups{display:flex;flex-direction:column;gap:48px;margin-top:20px}
.faq-group h2{font-family:var(--fd);font-weight:600;font-size:24px;color:var(--ink);margin-bottom:18px;letter-spacing:-0.01em}
.faq-list{border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--white)}
.faq-item{border-top:1px solid var(--border)}
.faq-item:first-child{border-top:none}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 26px;font-family:var(--fd);font-weight:600;font-size:16px;color:var(--ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:22px;font-weight:400;color:var(--pine);flex-shrink:0;line-height:1}
.faq-item[open] summary::after{content:"\2212"}
.faq-a{padding:0 26px 22px;color:var(--ink-soft);font-size:15.5px;line-height:1.65}
.faq-a p{margin:0}
.c-faq{padding:100px 0}
.c-faq .faq-groups{margin-top:0}
.faq-more{margin-top:28px}
.faq-more a{color:var(--pine);font-weight:600;font-size:15px;text-decoration:none}
.faq-more a:hover{color:var(--pine-light)}
.c-faq2{padding:100px 0}
.c-faq2 .faq-list{margin-top:48px}
.c-faq2 .faq-a{color:var(--muted)}
.c-faq2 .faq-a p+p{margin-top:14px}
.c-faq2-note{margin-top:28px;font-size:13px;color:var(--muted)}
@media(max-width:600px){.faq-item summary{padding:16px 20px;font-size:15px}.faq-a{padding:0 20px 18px}.faq-group h2{font-size:21px}.c-faq2{padding:70px 0}}
