/* =========================================================
   MARGINAL — FAQ PAGE
   File: assets/css/style-faq.css
   ========================================================= */

.page-banner{
  width:100%;
  height:320px;
  min-height:320px;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  color:#fff;
  background:center/cover no-repeat;
}

.page-banner-faq{
  background-image:url("../images/banners/faq.jpg");
  background-position:center 50%;
}

.page-banner::before{
  position:absolute;
  inset:0;
  content:"";
  background:linear-gradient(
    90deg,
    rgba(6,36,52,.54) 0%,
    rgba(6,36,52,.28) 38%,
    rgba(6,36,52,.07) 64%,
    rgba(6,36,52,0) 100%
  );
}

.page-banner-inner{position:relative;z-index:1;padding:34px 0 30px}

.page-banner h1{
  max-width:820px;
  margin:0;
  font-family:"Barlow Condensed",Arial,sans-serif;
  font-size:clamp(3rem,5.2vw,5rem);
  font-weight:800;
  line-height:.88;
  letter-spacing:-.025em;
  text-transform:uppercase;
  text-shadow:0 3px 18px rgba(4,25,38,.28);
}

.page-title-line,.page-title-accent{display:block}
.page-title-line{color:#fff}
.page-title-accent{margin-top:6px;color:#44bdf7}

.page-banner-rule{
  display:block;
  width:76px;
  height:3px;
  margin-top:18px;
  background:#44bdf7;
}

.page-banner-text{
  max-width:650px;
  margin:18px 0 0;
  color:rgba(255,255,255,.96);
  font-size:1rem;
  line-height:1.55;
  text-shadow:0 2px 12px rgba(4,25,38,.28);
}

.faq-page{padding-top:82px}
.faq-head{align-items:flex-end}

.faq-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:38px;
}

.faq-summary-card{
  min-height:150px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 28px rgba(23,63,87,.06);
}

.faq-summary-card span{
  display:block;
  margin-bottom:14px;
  color:var(--ocean);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}

.faq-summary-card strong{
  display:block;
  color:var(--navy);
  font-family:"Barlow Condensed",Arial,sans-serif;
  font-size:1.7rem;
  line-height:1;
}

.faq-layout{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:30px;
  align-items:start;
  margin-top:40px;
}

.faq-nav{
  position:sticky;
  top:22px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 28px rgba(23,63,87,.06);
}

.faq-nav h3{font-size:2rem}

.faq-nav a{
  display:block;
  margin-top:8px;
  padding:10px 12px;
  border-radius:10px;
  color:var(--muted);
  font-size:.84rem;
}

.faq-nav a:hover{color:#fff;background:var(--ocean)}

.faq-content{display:grid;gap:28px}

.faq-group{
  scroll-margin-top:24px;
}

.faq-group-heading{
  margin-bottom:14px;
}

.faq-group-heading p{
  margin-top:6px;
  color:var(--muted);
}

.faq-list{
  display:grid;
  gap:12px;
}

.faq-item{
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 24px rgba(23,63,87,.05);
  overflow:hidden;
}

.faq-item summary{
  list-style:none;
  cursor:pointer;
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  padding:20px 22px;
  color:var(--navy);
  font-weight:800;
}

.faq-item summary::-webkit-details-marker{display:none}

.faq-toggle{
  color:var(--ocean);
  font-size:1.35rem;
  transition:transform .2s ease;
}

.faq-item[open] .faq-toggle{transform:rotate(45deg)}

.faq-answer{
  padding:0 22px 22px;
  color:var(--muted);
  line-height:1.65;
}

.faq-answer p+p,
.faq-answer ul+p,
.faq-answer p+ul{margin-top:10px}

.faq-answer ul{
  margin:10px 0 0 18px;
  display:grid;
  gap:7px;
}

.faq-answer strong{color:var(--navy)}

.faq-contact{
  margin-top:34px;
  padding:34px;
  border-radius:24px;
  color:#fff;
  background:linear-gradient(135deg,var(--navy),#0b6688);
  box-shadow:var(--shadow);
}

.faq-contact h3{color:#fff;font-size:3rem}

.faq-contact p{
  max-width:760px;
  margin:14px 0 0;
  color:rgba(255,255,255,.82);
}

.faq-contact .btn{
  margin-top:22px;
  background:var(--sun);
  color:var(--navy);
}

.faq-update-note{
  margin-top:24px;
  padding:20px 24px;
  border-left:5px solid var(--ocean);
  border-radius:14px;
  background:#eefaff;
  color:#526371;
}

@media(max-width:980px){
  .faq-summary-grid{grid-template-columns:1fr 1fr}
  .faq-layout{grid-template-columns:1fr}
  .faq-nav{position:static}
}

@media(max-width:700px){
  .page-banner{height:300px;min-height:300px;background-position:62% center}
  .page-banner::before{background:rgba(7,37,54,.60)}
  .page-banner-inner{padding:28px 0}
  .page-banner h1{font-size:clamp(2.7rem,12vw,4.2rem)}
  .page-banner-text{max-width:100%;font-size:.9rem}
  .faq-summary-grid{grid-template-columns:1fr}
  .faq-item summary{padding:18px}
  .faq-answer{padding:0 18px 20px}
  .faq-contact{padding:24px}
}
