/* SIHO functional product page standard — approved visual language.
   Keeps each page's factual structure while normalizing title scale, spacing,
   media treatment and action hierarchy across desktop, tablet and mobile. */

.functional-standard-page{
  background:#fff;
}

.functional-standard-page .crumb{
  margin-bottom:0;
}

.functional-standard-page .line{
  padding:0;
}

.functional-standard-page .line > .wrap{
  width:min(1180px,calc(100% - 48px));
}

.functional-standard-page .line > .wrap > section{
  margin-top:0!important;
  padding-top:clamp(44px,5vw,66px);
  padding-bottom:clamp(44px,5vw,66px);
}

.functional-standard-page .line > .wrap > section:first-child{
  padding-top:clamp(34px,4.4vw,58px);
  padding-bottom:clamp(44px,5vw,66px);
}

.functional-standard-page .line > .wrap > section + section{
  border-top:1px solid rgba(14,87,92,.11);
}

.functional-standard-page main h1{
  max-width:18ch!important;
  margin:.22em 0 .42em!important;
  font-size:clamp(2.35rem,3.7vw,3.5rem)!important;
  line-height:1.06!important;
  letter-spacing:-.04em!important;
}

.functional-standard-page main h2{
  max-width:24ch;
  font-size:clamp(1.85rem,2.65vw,2.55rem)!important;
}

.functional-standard-page main h3{
  line-height:1.2;
}

.functional-standard-page .lede{
  max-width:64ch;
  color:#52696e;
  font-size:clamp(1.03rem,1.35vw,1.18rem);
  line-height:1.72;
}

.functional-standard-page main a[role="button"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:13px 22px;
  border:1px solid #ffbd72;
  border-radius:13px;
  color:#172d31!important;
  background:linear-gradient(180deg,#ffc16a 0%,#f5a342 100%)!important;
  box-shadow:0 5px 0 #b9601c,0 13px 24px rgba(185,96,28,.22)!important;
  font-weight:850;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}

.functional-standard-page main a[role="button"]:hover{
  transform:translateY(-2px);
  filter:brightness(1.03);
}

.functional-standard-page figure[class$="-visual"],
.functional-standard-page figure.brochure{
  border:1px solid rgba(10,78,83,.13);
  border-radius:26px;
  overflow:hidden;
  background:#eef8f5;
  box-shadow:0 22px 54px rgba(7,35,42,.14);
}

.functional-standard-page figure[class$="-visual"] img,
.functional-standard-page figure.brochure img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.functional-standard-page .question-strip article,
.functional-standard-page .process-card,
.functional-standard-page .proof-card,
.functional-standard-page .boundary-card,
.functional-standard-page .grade-card,
.functional-standard-page .faq-grid article,
.functional-standard-page .decision-flow article{
  border-color:#cfe0dd;
}

.functional-standard-page .cta-panel{
  margin:0 0 68px!important;
  border:0!important;
  background:
    radial-gradient(circle at 86% 12%,rgba(117,217,207,.18),transparent 34%),
    linear-gradient(135deg,#08292f 0%,#0a3b3b 100%)!important;
  box-shadow:0 22px 54px rgba(7,35,42,.18);
}

.functional-standard-page .cta-panel h2,
.functional-standard-page .cta-panel p{
  color:#f5fbfc;
}

.functional-standard-page .cta-panel .meta{
  color:#84ddd4;
}

.functional-standard-page .cc-bar{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:9999;
  display:none;
  padding:18px clamp(20px,4vw,64px);
  border-top:1px solid rgba(213,241,245,.16);
  color:#eff8fa;
  background:#071f2a;
  font:14px/1.55 inherit;
}

.functional-standard-page .cc-bar[data-show]{display:block;}
.functional-standard-page .cc-in{max-width:1260px;margin:0 auto;display:flex;gap:22px;align-items:center;flex-wrap:wrap;}
.functional-standard-page .cc-tx{flex:1 1 380px;margin:0;color:#c9dee2;}
.functional-standard-page .cc-btns{display:flex;gap:10px;flex-wrap:wrap;}
.functional-standard-page .cc-b{border:0;cursor:pointer;font:700 13px/1 inherit;padding:14px 24px;border-radius:11px;}
.functional-standard-page .cc-y{background:linear-gradient(135deg,#a1e8ee,#78d3de);color:#06202a;}
.functional-standard-page .cc-n{background:transparent;color:#eff8fa;box-shadow:inset 0 0 0 1px rgba(213,241,245,.34);}

@media(max-width:860px){
  .functional-standard-page .line > .wrap{
    width:min(100% - 36px,760px);
  }

  .functional-standard-page main h1{
    max-width:20ch!important;
    font-size:clamp(2.05rem,6.8vw,2.7rem)!important;
  }
}

@media(max-width:600px){
  .functional-standard-page .line > .wrap{
    width:calc(100% - 28px);
  }

  .functional-standard-page .line > .wrap > section,
  .functional-standard-page .line > .wrap > section:first-child{
    padding-top:36px;
    padding-bottom:36px;
  }

  .functional-standard-page main h1{
    max-width:18ch!important;
    font-size:clamp(1.95rem,9vw,2.28rem)!important;
    line-height:1.08!important;
  }

  .functional-standard-page main h2{
    font-size:clamp(1.55rem,7vw,1.9rem)!important;
  }

  .functional-standard-page main a[role="button"]{
    width:100%;
    min-height:52px;
    padding:13px 16px;
  }

  .functional-standard-page .cta-panel{
    margin-bottom:44px!important;
    padding:28px 22px!important;
  }

  .functional-standard-page .cc-btns{width:100%;}
  .functional-standard-page .cc-b{flex:1;min-height:44px;}
}
