/* The homepage FAQ composition, shared by every FAQ section and accordion type. */
.inkstone-design :is(#home-questions,.ink-faq-section) { position:relative; isolation:isolate; overflow:hidden; padding-block:var(--ink-section-space)!important; min-height:780px; background:var(--ink-ivory) url('../images/faq/faq-library-background.webp') left bottom/cover no-repeat!important; border:0; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-layout { position:relative; display:grid; grid-template-columns:.85fr 1.15fr; align-items:start; gap:var(--ink-column-gap); width:min(var(--ink-container),calc(100% - var(--ink-gutter)*2))!important; max-width:var(--ink-container)!important; padding:0!important; margin:0 auto!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-intro { display:block; text-align:left; width:auto; max-width:none; margin:0; padding:0 0 0 clamp(40px,5vw,80px); }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-kicker { display:block; position:relative; width:auto; padding:0 0 18px!important; margin:0 0 24px!important; background:none!important; border:0!important; border-radius:0!important; color:var(--ink-gold-ink)!important; font:500 11px/1.6 var(--ink-font-body)!important; text-transform:uppercase; letter-spacing:.18em!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-kicker::before { display:none; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-kicker::after { content:''; display:block; position:absolute; width:55px; height:1px; left:0; bottom:0; background:var(--ink-gold-ink); }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-heading { margin:0!important; font:400 var(--ink-h2)/1.12 var(--ink-font-heading)!important; letter-spacing:-.025em!important; color:var(--ink-green)!important; text-align:left; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-intro > p:not(.ink-faq-kicker) { margin:24px 0 0; max-width:460px; text-align:left; font:400 var(--ink-copy)/1.8 var(--ink-font-body)!important; color:var(--ink-body)!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-contact { display:inline-flex; align-items:center; justify-content:center; gap:16px; width:auto; margin-top:28px; padding:14px 26px!important; min-height:52px!important; background:var(--ink-green)!important; color:var(--ink-on-dark)!important; border:1px solid var(--ink-green)!important; border-radius:var(--ink-radius-pill)!important; font:500 14px/1.5 var(--ink-font-body)!important; letter-spacing:0; text-transform:none; text-decoration:none!important; box-shadow:none; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-contact:hover { background:var(--ink-green-hover)!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-list { display:grid; gap:17px; width:100%; min-width:0; margin:0; padding:0; border:0; background:none; box-shadow:none!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-item { display:block; width:100%; min-width:0; margin:0!important; padding:0; overflow:hidden; border:1px solid #b9925080!important; border-radius:8px!important; background:#fffdf8ee!important; box-shadow:var(--ink-shadow)!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-item :is(.card-header,.accordion-header) { padding:0; margin:0; border:0; background:none!important; box-shadow:none!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-trigger { display:flex!important; position:relative; align-items:center; gap:22px; width:100%; min-height:83px; padding:20px 24px!important; margin:0; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; color:var(--ink-green)!important; font:400 var(--ink-h3)/1.28 var(--ink-font-heading)!important; letter-spacing:-.015em!important; text-align:left; list-style:none; cursor:pointer; text-decoration:none; transition:background var(--ink-duration),color var(--ink-duration); }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-trigger::after { display:none!important; content:none!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-trigger::-webkit-details-marker { display:none; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-number { display:flex; align-items:center; align-self:stretch; flex:0 0 48px; width:auto; min-height:42px; padding:0 20px 0 0; border-right:1px solid var(--ink-gold); color:var(--ink-gold-ink)!important; font:400 21px/1 var(--ink-font-heading)!important; letter-spacing:0; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-question { display:block; flex:1; min-width:0; font:inherit!important; color:inherit; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-question > span { font:inherit!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-indicator { position:static; display:block; flex:0 0 22px; width:22px; height:28px; color:var(--ink-gold-ink); }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-indicator::after { content:'+'; display:block; font:300 28px/1 var(--ink-font-body); }
.inkstone-design :is(#home-questions,.ink-faq-section) :is(.ink-faq-item[open] > .ink-faq-trigger,.ink-faq-trigger[aria-expanded=true]) { background:var(--ink-green)!important; color:var(--ink-on-dark)!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) :is(.ink-faq-item[open] > .ink-faq-trigger,.ink-faq-trigger[aria-expanded=true]) :is(.ink-faq-number,.ink-faq-indicator) { color:var(--ink-gold)!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) :is(.ink-faq-item[open] > .ink-faq-trigger,.ink-faq-trigger[aria-expanded=true]) .ink-faq-indicator::after { content:'−'; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-answer { margin:0!important; padding:24px 28px!important; background:transparent; color:var(--ink-body)!important; font:400 var(--ink-copy-small)/1.8 var(--ink-font-body)!important; text-align:left; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-answer p { margin:0; padding:0; color:inherit!important; font:inherit!important; }
.inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-trigger:focus-visible { outline:2px solid var(--ink-gold)!important; outline-offset:-5px; }
.inkstone-design :is(#home-questions,.ink-faq-section) [hidden] { display:none!important; }
/* Article FAQ sections share the visual language within their reading column. */
.inkstone-design :is(#home-questions,.ink-faq-section) { background-size:max(1440px,100%) auto!important; }
.inkstone-design :is(#home-questions,.ink-faq-section).faqs { background-image:linear-gradient(#f8f5efdd,#f8f5ef99),url('../images/faq/faq-library-background.webp')!important; }
.inkstone-design section.faqs.ink-faq-section { container-type:inline-size; padding-inline:24px; border-radius:16px; }
.inkstone-design section.faqs.ink-faq-section .ink-faq-layout { width:100%!important; }
@container (max-width:900px) {
  .ink-faq-section .ink-faq-layout { grid-template-columns:1fr!important; }
  .ink-faq-section .ink-faq-intro { padding-left:0!important; }
}
@media (max-width:1050px) {
  .inkstone-design :is(#home-questions,.ink-faq-section) { min-height:0; background-image:linear-gradient(#f8f5efed,#f8f5efed),url('../images/faq/faq-library-background.webp')!important; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-layout { grid-template-columns:1fr; gap:36px; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-intro { padding-left:0; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-intro > p:not(.ink-faq-kicker) { max-width:650px; }
}
@media (max-width:600px) {
  .inkstone-design :is(#home-questions,.ink-faq-section) { background-image:url('../images/services/paper-texture.svg')!important; }
  .inkstone-design :is(#home-questions,.ink-faq-section).faqs { background-image:url('../images/services/paper-texture.svg')!important; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-layout { gap:30px; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-list { gap:13px; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-trigger { padding:17px 14px!important; gap:12px; min-height:79px; font-size:22px!important; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-number { flex-basis:32px; padding-right:10px; font-size:17px!important; min-height:37px; }
  .inkstone-design :is(#home-questions,.ink-faq-section) .ink-faq-answer { padding:20px!important; }
  .inkstone-design section.faqs.ink-faq-section { padding-inline:16px; }
}
@media (prefers-reduced-motion:reduce) {
  .ink-faq-section * { transition:none!important; animation:none!important; }
}
