#fott-faq-v2,
#fott-faq-v2 * { box-sizing:border-box; }

#fott-faq-v2 {
  --blue:#16324f;
  --terracotta:#b84e31;
  --cream:#f7f4ee;
  --ink:#23313f;
  --muted:#465462;
  --white:#fff;
  color:var(--ink);
  background:var(--white);
  overflow:hidden;
}

#fott-faq-v2 .fott-faq-wrap {
  width:min(1120px, calc(100% - 48px));
  margin:0 auto;
}

#fott-faq-v2 h1,
#fott-faq-v2 h2,
#fott-faq-v2 p { margin-top:0; }

#fott-faq-v2 .fott-faq-hero {
  padding:64px 0 54px;
  background:
    radial-gradient(circle at 86% 14%, rgba(71,120,129,.15), transparent 30%),
    linear-gradient(135deg, var(--cream) 0%, #fff 64%);
  border-bottom:1px solid rgba(22,50,79,.08);
}

#fott-faq-v2 .fott-faq-hero-inner { max-width:860px; }

#fott-faq-v2 .fott-faq-kicker {
  margin-bottom:10px;
  color:var(--terracotta);
  font-size:13px;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
}

#fott-faq-v2 h1 {
  margin-bottom:18px;
  color:var(--blue);
  font-size:clamp(48px,6.4vw,78px);
  line-height:1;
  letter-spacing:-.045em;
}

#fott-faq-v2 .fott-faq-lead {
  max-width:790px;
  margin-bottom:24px;
  color:var(--ink);
  font-size:clamp(19px,2.1vw,25px);
  line-height:1.45;
}

#fott-faq-v2 .fott-faq-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:12px 22px;
  color:#fff;
  background:var(--terracotta);
  border-radius:999px;
  font-weight:800;
  text-decoration:none;
  transition:transform .18s ease, filter .18s ease;
}

#fott-faq-v2 .fott-faq-button:hover,
#fott-faq-v2 .fott-faq-button:focus-visible {
  filter:brightness(.94);
  transform:translateY(-1px);
}

#fott-faq-v2 .fott-faq-jump {
  position:relative;
  z-index:2;
  background:#fff;
  border-bottom:1px solid rgba(22,50,79,.09);
  box-shadow:0 6px 18px rgba(22,50,79,.04);
}

#fott-faq-v2 .fott-faq-jump-inner {
  display:flex;
  gap:8px;
  padding:14px 0;
  overflow-x:auto;
  scrollbar-width:thin;
}

#fott-faq-v2 .fott-faq-jump a {
  flex:0 0 auto;
  padding:8px 13px;
  color:var(--blue);
  background:var(--cream);
  border-radius:999px;
  font-size:14px;
  font-weight:750;
  text-decoration:none;
}

#fott-faq-v2 .fott-faq-jump a:hover,
#fott-faq-v2 .fott-faq-jump a:focus-visible {
  color:#fff;
  background:var(--blue);
}

#fott-faq-v2 .fott-faq-content {
  padding:54px 0 64px;
  background:#fbfaf7;
}

#fott-faq-v2 .fott-faq-group { scroll-margin-top:100px; }

#fott-faq-v2 .fott-faq-group + .fott-faq-group {
  margin-top:42px;
  padding-top:42px;
  border-top:1px solid rgba(22,50,79,.10);
}

#fott-faq-v2 .fott-faq-group-head {
  display:grid;
  grid-template-columns:50px minmax(0,1fr);
  gap:18px;
  align-items:start;
  margin-bottom:20px;
}

#fott-faq-v2 .fott-faq-group-number {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:50px;
  height:50px;
  color:#fff;
  background:var(--blue);
  border-radius:50%;
  font-size:13px;
  font-weight:800;
}

#fott-faq-v2 .fott-faq-group-head h2 {
  margin-bottom:6px;
  color:var(--blue);
  font-size:clamp(29px,3.4vw,41px);
  line-height:1.08;
  letter-spacing:-.03em;
}

#fott-faq-v2 .fott-faq-group-head p {
  margin-bottom:0;
  color:var(--muted) !important;
  font-size:16px;
  line-height:1.5;
}

#fott-faq-v2 .fott-faq-list {
  display:grid !important;
  gap:8px !important;
}

#fott-faq-v2 .fott-faq-item {
  margin:0 !important;
  background:#fff;
  border:1px solid rgba(22,50,79,.12);
  border-radius:15px;
  box-shadow:0 6px 18px rgba(22,50,79,.045);
  overflow:hidden;
}

#fott-faq-v2 .fott-faq-item summary {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 30px !important;
  gap:14px !important;
  align-items:center !important;
  min-height:0 !important;
  margin:0 !important;
  padding:15px 18px !important;
  color:var(--blue) !important;
  cursor:pointer;
  font-size:17px !important;
  font-weight:800 !important;
  line-height:1.3 !important;
  list-style:none;
}

#fott-faq-v2 .fott-faq-item summary::-webkit-details-marker { display:none; }

#fott-faq-v2 .fott-faq-item summary:hover,
#fott-faq-v2 .fott-faq-item summary:focus-visible {
  background:rgba(247,244,238,.72);
  outline:none;
}

#fott-faq-v2 .fott-faq-icon {
  position:relative;
  width:30px;
  height:30px;
  border-radius:50%;
  background:var(--cream);
}

#fott-faq-v2 .fott-faq-icon::before,
#fott-faq-v2 .fott-faq-icon::after {
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:13px;
  height:2px;
  background:var(--blue);
  transform:translate(-50%,-50%);
  transition:transform .18s ease;
}

#fott-faq-v2 .fott-faq-icon::after { transform:translate(-50%,-50%) rotate(90deg); }
#fott-faq-v2 details[open] .fott-faq-icon::after { transform:translate(-50%,-50%) rotate(0); }

#fott-faq-v2 .fott-faq-answer {
  margin:0 !important;
  padding:0 18px 17px !important;
  border-top:1px solid rgba(22,50,79,.08);
}

#fott-faq-v2 .fott-faq-answer p {
  max-width:920px;
  margin:14px 0 0 !important;
  color:#354554 !important;
  font-size:16px !important;
  line-height:1.62 !important;
  opacity:1 !important;
}

#fott-faq-v2 .fott-faq-note {
  padding:10px 12px;
  color:#6c4c38 !important;
  background:#fff6ee;
  border-left:3px solid var(--terracotta);
  border-radius:8px;
  font-size:14px !important;
}

#fott-faq-v2 .fott-faq-cta {
  padding:52px 0;
  background:var(--blue);
}

#fott-faq-v2 .fott-faq-cta-inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
}

#fott-faq-v2 .fott-faq-cta h2 {
  margin-bottom:10px;
  color:#fff;
  font-size:clamp(30px,3.6vw,44px);
  line-height:1.08;
  letter-spacing:-.03em;
}

#fott-faq-v2 .fott-faq-cta p:not(.fott-faq-kicker) {
  max-width:700px;
  margin-bottom:0;
  color:rgba(255,255,255,.84) !important;
  font-size:16px;
  line-height:1.55;
}

#fott-faq-v2 .fott-faq-cta .fott-faq-kicker { color:#efb8a8; }
#fott-faq-v2 .fott-faq-button-light { flex:0 0 auto; color:var(--blue); background:#fff; }

@media (max-width:760px) {
  #fott-faq-v2 .fott-faq-wrap { width:min(100% - 28px, 1120px); }
  #fott-faq-v2 .fott-faq-hero { padding:38px 0 34px; }
  #fott-faq-v2 h1 { font-size:clamp(38px,12.5vw,52px); margin-bottom:14px; }
  #fott-faq-v2 .fott-faq-lead { margin-bottom:20px; font-size:17px; line-height:1.43; }
  #fott-faq-v2 .fott-faq-button { width:100%; min-height:46px; padding:10px 16px; text-align:center; }
  #fott-faq-v2 .fott-faq-jump-inner { padding:10px 0; gap:7px; }
  #fott-faq-v2 .fott-faq-jump a { padding:7px 11px; font-size:13px; }
  #fott-faq-v2 .fott-faq-content { padding:38px 0 44px; }
  #fott-faq-v2 .fott-faq-group + .fott-faq-group { margin-top:32px; padding-top:32px; }
  #fott-faq-v2 .fott-faq-group-head { grid-template-columns:40px minmax(0,1fr); gap:12px; margin-bottom:15px; }
  #fott-faq-v2 .fott-faq-group-number { width:40px; height:40px; font-size:11px; }
  #fott-faq-v2 .fott-faq-group-head h2 { margin-bottom:4px; font-size:26px; }
  #fott-faq-v2 .fott-faq-group-head p { font-size:14px; line-height:1.45; }
  #fott-faq-v2 .fott-faq-list { gap:7px !important; }
  #fott-faq-v2 .fott-faq-item { border-radius:12px; }
  #fott-faq-v2 .fott-faq-item summary {
    grid-template-columns:minmax(0,1fr) 26px !important;
    gap:9px !important;
    padding:13px 13px !important;
    font-size:15px !important;
    line-height:1.28 !important;
  }
  #fott-faq-v2 .fott-faq-icon { width:26px; height:26px; }
  #fott-faq-v2 .fott-faq-answer { padding:0 13px 14px !important; }
  #fott-faq-v2 .fott-faq-answer p { margin-top:12px !important; font-size:14.5px !important; line-height:1.55 !important; }
  #fott-faq-v2 .fott-faq-note { padding:9px 10px; font-size:13px !important; }
  #fott-faq-v2 .fott-faq-cta { padding:38px 0; }
  #fott-faq-v2 .fott-faq-cta-inner { display:grid; gap:18px; }
  #fott-faq-v2 .fott-faq-cta h2 { font-size:30px; }
  #fott-faq-v2 .fott-faq-cta p:not(.fott-faq-kicker) { font-size:14.5px; }
}

@media (max-width:420px) {
  #fott-faq-v2 .fott-faq-wrap { width:calc(100% - 22px); }
  #fott-faq-v2 .fott-faq-group-head h2 { font-size:24px; }
  #fott-faq-v2 .fott-faq-item summary { font-size:14.5px !important; }
}

@media (prefers-reduced-motion:reduce) {
  #fott-faq-v2 * { scroll-behavior:auto !important; transition:none !important; }
}
