/* Content block (fabricator/blocks/content.html) */
.content-inner h2{font-size:2rem;font-weight:400;color:var(--ink);margin:0 0 .5rem}
.content-inner .hero-text{line-height:1.6}

/* Layout: Image Text (fabricator/blocks/content/image_text.html) */
.content-image-text{border-top:1px solid var(--line-2);}
.content-image-text .content-row{display:flex;gap:clamp(1.5rem,4vw,4rem);align-items:stretch;flex-wrap:wrap;}
.content-image-text .content-media{flex:5 1 260px;margin:0;position:relative;border-radius:16px;overflow:hidden;
  box-shadow:0 30px 60px -30px rgba(74,66,62,.45);min-height:22rem}
.content-image-text .content-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.content-image-text .content-copy{flex:7 1 320px;min-width:0;display:flex;flex-direction:column;justify-content:center}
.content-image-text .content-copy h1{font-size:clamp(1.55rem,2.4vw,1.95rem);font-weight:700;letter-spacing:-.025em;margin:0 0 1rem}
.content-image-text .content-copy .hero-text{color:var(--muted);font-size:1.02rem;line-height:1.7;max-width:56ch;}
.content-image-text .content-copy .hero-text p+p{margin-top:.9rem}
.content-image-text.image-right .content-row{flex-direction:row-reverse}
@media(max-width:900px){
  .content-image-text .content-row{flex-direction:column}
  .content-image-text .content-media{min-height:16rem;aspect-ratio:4/3;flex-basis:auto;width:100%}
}

/* Layout: Centered (fabricator/blocks/content/centered.html) */
.content-centered{text-align:center;background-color:var(--bg-soft);border-top:1px solid var(--line-2);}
.content-centered .content-centered-head{margin-bottom:2rem}
.content-centered .content-centered-head h1{font-weight:700;font-size:1.85rem;margin:0}
.content-centered .content-centered-stack{display:flex;flex-direction:column;align-items:center;gap:2.25rem}
.content-centered .content-diagram{margin:0;width:100%;max-width:64rem;background:var(--white);border:1px solid var(--line-2);overflow:hidden}
.content-centered .content-diagram img{width:100%;height:auto;display:block}
.content-centered .content-centered-prose{max-width:60rem;margin:0 auto;display:flex;flex-direction:column;gap:1rem;color:var(--muted);line-height:1.7}
.content-centered .content-centered-prose p{margin:0}
.content-centered .cta{justify-content:center}

/* Layout: Full Page (fabricator/blocks/content/full_page.html) */
.content-full-page{background:#faf8f3}
.content-full-page .content-full-page-card{max-width:64rem;margin:0 auto;background:var(--white);
  border-radius:1.25rem;box-shadow:var(--shadow-card);padding:clamp(2rem,4vw,3.5rem)}
.content-full-page .content-full-page-head{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.content-full-page .content-full-page-head .ic-tile.blue{background:var(--t-water-s);color:var(--t-water)}
.content-full-page .ic-tile img{width:1.6rem;height:1.6rem;object-fit:contain}
.content-full-page .content-full-page-head h1{font-weight:700;font-size:clamp(1.7rem,2.6vw,2.1rem);margin:0}
.content-full-page .content-full-page-lead{color:var(--muted);font-size:1.05rem;line-height:1.65;margin:0 0 1.75rem}
.content-full-page .content-full-page-rule{border:none;border-top:1px solid var(--line-2);margin:0 0 2rem}
.content-full-page .content-full-page-prose{color:var(--muted);line-height:1.75}
.content-full-page .content-full-page-prose h2{font-family:var(--sans);font-weight:700;font-size:1.3rem;
  color:var(--ink);margin:2.5rem 0 1rem;padding-bottom:.85rem;border-bottom:1px solid var(--line-2)}
.content-full-page .content-full-page-prose h2:first-child{margin-top:0}
.content-full-page .content-full-page-prose h3,
.content-full-page .content-full-page-prose h4{font-family:var(--sans);font-weight:700;font-size:1.05rem;
  color:var(--ink);margin:1.75rem 0 .6rem}
.content-full-page .content-full-page-prose p{margin:0 0 1rem}
.content-full-page .content-full-page-prose ul,
.content-full-page .content-full-page-prose ol{margin:0 0 1.25rem;padding-left:1.4rem;display:flex;
  flex-direction:column;gap:.55rem}
.content-full-page .content-full-page-prose ul{list-style:disc}
.content-full-page .content-full-page-prose ol{list-style:decimal}
.content-full-page .content-full-page-prose li{padding-left:.25rem}
.content-full-page .content-full-page-prose a{color:var(--green-d)}
.content-full-page .content-full-page-prose hr{border:none;border-top:1px solid var(--line-2);margin:2rem 0}
.content-full-page .cta{margin-top:2rem}
@media(max-width:700px){
  .content-full-page .content-full-page-head{flex-wrap:wrap}
}

/* Layout: CTA (fabricator/blocks/content/cta.html) */
.content-cta.gateway{position:relative;overflow:hidden;text-align:center;color:#fff;background:var(--green);
  padding:3.6rem 2rem 3.4rem;box-shadow:0 24px 60px -28px rgba(74,66,62,.45)}
.content-cta.gateway::before{content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1px);background-size:22px 22px;
  -webkit-mask-image:radial-gradient(ellipse at 50% 45%,#000 25%,transparent 75%);
  mask-image:radial-gradient(ellipse at 50% 45%,#000 25%,transparent 75%)}
.content-cta.gateway::after{content:'';position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent)}
.content-cta.gateway>*{position:relative;z-index:1}
.content-cta.gateway .eyebrow{color:rgba(255,255,255,.85)}
.content-cta.gateway h2{color:#fff;font-family:var(--sans);font-size:clamp(1.5rem,2.6vw,1.9rem);font-weight:700;letter-spacing:-.02em;margin:0 0 .8rem}
.content-cta.gateway .hero-text{color:rgba(255,255,255,.8);max-width:58rem;margin:0 auto 1.9rem;line-height:1.75;font-size:1rem}
.content-cta.gateway .row{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap}
.content-cta.gateway .btn.normal-link{background:var(--amber);color:var(--white);box-shadow:0 14px 30px -12px rgba(0,0,0,.55)}
.content-cta.gateway .btn.normal-link:hover{transform:translateY(-2px);background-color:#c8963f;}
.content-cta.gateway .btn.bordered-link{background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
.content-cta.gateway .btn.bordered-link:hover{background:rgba(255,255,255,.12);border-color:#fff}
@media(max-width:700px){.content-cta.gateway{padding:2.75rem 1.25rem}}

/* Layout: Quote (fabricator/blocks/content/quote.html) */
.commit-card{position:relative;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);
  background:var(--white);border:1px solid var(--line-2);border-radius:1.25rem;overflow:hidden;
  box-shadow:0 30px 60px -40px rgba(74,66,62,.4)}
.cc-side{position:relative;background:var(--amber);color:#fff;padding:2.5rem 2.25rem;
  display:flex;flex-direction:column;gap:1rem;overflow:hidden}
.cc-side::before{content:'';position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1px);background-size:20px 20px;
  -webkit-mask-image:radial-gradient(ellipse at 30% 30%,#000 20%,transparent 75%);
  mask-image:radial-gradient(ellipse at 30% 30%,#000 20%,transparent 75%)}
.cc-side .cc-ic{position:relative;display:grid;place-items:center;width:3rem;height:3rem;border-radius:.9rem;
  background:rgba(255,255,255,.16);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.cc-side .cc-ic svg,.cc-side .cc-ic i{width:1.4rem;height:1.4rem}
.cc-side h2{position:relative;color:#fff;font-size:1.45rem;letter-spacing:-.02em;line-height:1.2;max-width:12ch;margin:0}
.cc-side .qmark{position:absolute;right:1rem;bottom:-2.6rem;font-family:Georgia,'Times New Roman',serif;
  font-size:11rem;line-height:1;color:rgba(255,255,255,.16);pointer-events:none}
.cc-body{padding:2.5rem clamp(1.75rem,4vw,3.25rem);display:flex;flex-direction:column;justify-content:center;gap:1.1rem}
.cc-body p{font-size:clamp(1.15rem,1.6vw,1.4rem);line-height:1.55;color:var(--ink);font-weight:500;letter-spacing:-.01em;margin:0}
.cc-by{font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--amber-d)}
.cc-by::before{content:'';display:inline-block;width:1.6rem;height:2px;background:var(--amber);vertical-align:middle;margin-right:.6rem}
@media(max-width:820px){
  .commit-card{grid-template-columns:1fr}
  .cc-side{padding:2rem 1.75rem}
  .cc-side .qmark{font-size:8rem;bottom:-2rem}
}
