.ame-services-menu {
    position: relative;
    border-top: 1px solid white;
    border-bottom: 2px solid white;
    box-shadow: 0 2px 0 black, 0 4px 10px rgba(0,0,0,0.08);
}

.ame-services-menu::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;            /* sits right under the 1px white border */
    border-bottom: 1px solid black;
}

.ame-header-border{
  position: relative;
  overflow: visible;
}

.ame-header-border::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;

  height: 7px;
  bottom: -7px;

  background: linear-gradient(
    to bottom,
    #000 0 2px,          /* thin top black */
    #9f3a35 2px 5px,     /* red middle */
    #000 5px 100%        /* thin bottom black */
  );

  pointer-events: none;
  z-index: 2;
}


/* =========================
   AME Special Inspections Page
   Bootstrap 5 mockup styles
   (No CSS variables)
   Primary:   #9f3a35
   Secondary: #058692
   Accent:    #63c5ce
   ========================= */

.ame-si-page { 
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color: #0f172a;
}

.ame-si-section { padding: 3.5rem 0; }
.ame-si-section--tight { padding: 2.25rem 0; }

.ame-si-eyebrow {
  letter-spacing: .08em;
  text-transform: uppercase;
  font-weight: 700;
  font-size: .8rem;
  color: #058692;
}

.ame-si-title {
  font-weight: 800;
  font-size: clamp(1.8rem, 2.6vw, 2.6rem);
  line-height: 1.15;
  margin-bottom: .75rem;
}

.ame-si-lead {
  font-size: 1.08rem;
  color: #64748b;
  margin-bottom: 1.25rem;
}

.ame-si-card {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 1rem;
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
}

.ame-si-card--soft { background: #ffffff; }

.ame-si-card-header {
  padding: 1rem 1.25rem;
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  font-weight: 700;
}

.ame-si-icon-dot {
  width: 44px; height: 44px;
  border-radius: 12px;
  background: rgba(159, 58, 53, 0.12);
  display:flex; align-items:center; justify-content:center;
  color: #9f3a35;
  font-weight: 800;
}

.ame-si-btn-primary {
  background: #9f3a35;
  border-color: #9f3a35;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(159, 58, 53, 0.25);
}
.ame-si-btn-primary:hover {
  background: #8a322e; /* slightly darker */
  border-color: #8a322e;
  color: #ffffff;
}

.ame-si-btn-outline {
  border-color: #9f3a35;
  color: #9f3a35;
  background: transparent;
}
.ame-si-btn-outline:hover {
  background: #9f3a35;
  border-color: #9f3a35;
  color: #ffffff;
}

.ame-si-badge {
  background: #9f3a35;
  color: #ffffff;
  font-weight: 700;
  font-size: .78rem;
  padding: .55rem 1.25rem;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  line-height: 1;

  /* Extremely subtle ~4–5° slant – clean and modern */
  clip-path: polygon(4% 0%, 100% 0%, 96% 100%, 0% 100%);
  
  transform: translateY(-1px);
}

/* Hero media placeholder */
.ame-si-hero-media {
  aspect-ratio: 16/9;
  border-radius: 1rem;
  background:
    radial-gradient(1200px 600px at 10% -10%, rgba(99,197,206,.35), transparent),
    radial-gradient(1200px 600px at 110% 30%, rgba(5,134,146,.15), transparent),
    #ffffff;
  border: 1px dashed rgba(15, 23, 42, 0.08);
  display:flex; align-items:center; justify-content:center;
  color: #64748b;
  font-weight: 700;
}

/* At-a-glance cards */
.ame-si-glance-card { height: 100%; padding: 1.25rem; }

/* Two-column bullet list aesthetics */
.ame-si-list li { margin-bottom: .5rem; color: #0f172a; }
.ame-si-list li small { color: #64748b; }

/* Lifecycle timeline */
.ame-si-timeline {
  position: relative;
  padding-top: .5rem;
}
.ame-si-timeline::before {
  content:"";
  position:absolute; left: 1rem; right: 1rem; top: 1.35rem;
  height: 2px;
  background: linear-gradient(90deg, rgba(159,58,53,.6), rgba(5,134,146,.6));
  opacity: .35;
}
.ame-si-timeline-step {
  position: relative;
  padding-top: 2.5rem;
}
.ame-si-timeline-node {
  position:absolute; top: .6rem; left: 50%;
  transform: translateX(-50%);
  width: 2.1rem; height: 2.1rem;
  border-radius: 50%;
  background: #ffffff;
  border: 2px solid #9f3a35;
  box-shadow: 0 0 0 6px rgba(159,58,53,.08);
}

/* FAQ accordion tweak */
.ame-si-accordion .accordion-button:not(.collapsed){
  background: rgba(159,58,53,.08);
  color: #0f172a;
}
.ame-si-accordion .accordion-button:focus{
  box-shadow: 0 0 0 .2rem rgba(159,58,53,.25);
}

/* Sticky sidebar */
.ame-si-sticky {
  position: sticky; top: 1rem;
}
.ame-si-mini-note {
  font-size: .9rem; color: #64748b;
}

/* CTA band */
.ame-si-cta-band{
  background:
    radial-gradient(800px 350px at 5% 0%, rgba(159,58,53,.12), transparent),
    radial-gradient(800px 350px at 95% 100%, rgba(5,134,146,.10), transparent),
    #ffffff;
  border-top: 1px solid rgba(15, 23, 42, 0.08);
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}


.info-box05:hover .title, .info-box05:hover p, .info-box05:hover a {
    color: #ffffff !important;
    border-color: currentColor !important;
}
.info-box05 .list-08 li{
    color: #333333;
    transition: color ease-in 300ms;
}
.info-box05:hover .list-08 li{
    color: #ffffff !important;
}
.info-box05 .list-08 li::before{
    transition: background-color ease-in 300ms;
}
.info-box05 .list-08 li::after{
    transition: box-shadow ease-in 300ms, opacity ease-in 300ms;
}
.info-box05:hover .list-08 li::before{
    background-color: #ffffff !important;
}
.info-box05:hover .list-08 li::after{
    box-shadow: 0 0 0 4px rgba(255,255,255,0.8) !important;
    opacity: 0.35;
}






/* SERVICE ICON BOXES */
 .ame-services-grid .icon-box03{
    display:flex;
    align-items:flex-start;
    gap:14px;
    text-align:left;
    padding:18px 18px;
    height:100%;
    background: transparent;
    border: 1.5px solid rgba(255,255,255,0.45);
    border-radius:16px;
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
    position:relative;
    overflow:hidden;
    cursor:pointer;
    text-decoration:none;
    color:#ffffff;
}
.ame-services-grid .icon-box03:hover{
    transform: translateY(-4px);
    border-color: rgba(255,255,255,0.7);
    box-shadow: 0 0 0 1px rgba(99,197,206,0.25), 0 10px 26px rgba(15,23,42,0.18);
}
.ame-services-grid .icon-box03:focus-visible{
    outline:none;
    border-color: rgba(99,197,206,0.9);
    box-shadow: 0 0 0 .22rem rgba(99,197,206,0.25), 0 10px 26px rgba(15,23,42,0.18);
}
.ame-services-grid .icon-box03 .icon{
    flex:0 0 auto;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    padding-top:2px;
    background:transparent;
    border-radius:0;
}
.ame-services-grid .icon-box03 .icon img{
    width:58px;
    height:auto;
    display:block;
    transition: transform .35s ease, filter .35s ease;
}
.ame-services-grid .icon-box03:hover .icon img{
    transform: translateY(-2px) scale(1.04);
    filter: saturate(1.05);
}
.ame-services-grid .icon-box03 .title{
    margin:0 0 6px 0;
    font-size:1.12rem;
    font-weight:800;
    line-height:1.25;
    color:#ffffff;
    text-shadow: 0 1px 2px rgba(0,0,0,0.18);
}
.ame-services-grid .icon-box03 .info{
    margin:0;
    font-size:.95rem;
    line-height:1.55;
    color: rgba(255,255,255,0.9);
    text-shadow: 0 1px 2px rgba(0,0,0,0.16);
}
@media (max-width: 991px){
    .ame-services-grid .icon-box03{
        padding:16px 16px;
        gap:12px;
    }
    .ame-services-grid .icon-box03 .icon img{
        width:52px;
    }
}
.ame-services-grid a.icon-box03, .ame-services-grid a.icon-box03:hover, .ame-services-grid a.icon-box03:focus, .ame-services-grid a.icon-box03:active, .ame-services-grid a.icon-box03:visited{
    text-decoration: none !important;
}
.ame-services-grid a.icon-box03 .title, .ame-services-grid a.icon-box03 .info{
    text-decoration: none !important;
}











/* =========================================================
   DIAGONAL HEADER CTAs — SKEWED SHAPE, CLEAN CONTENT
   ========================================================= */

.qs-diagonal-cta-wrap{
  --angle: 18deg;
  --red: #9f3a35;
  --cap: 44px;
  --bleed: 30px;
  --cta-offset: -15px;

  position: absolute;
  top: 0;
  right: var(--cta-offset);
  height: 100%;
  overflow: hidden;
  z-index: 50;
}

/* CTA ROW */
.qs-diagonal-cta{
  height: 100%;
  display: flex;
  align-items: stretch;
  margin-right: calc(-1 * var(--bleed));
  padding-left: var(--bleed);
}

/* CTA BUTTON — NO SKEW HERE */
.qs-diagonal-cta .qs-cta-btn{
  position: relative;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 22px;
  color: #fff !important;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: .3px;
  text-align:center;
  border: none;
  outline: none;
  background: transparent; /* background handled by ::before */
  z-index: 1;
}

/* SKEWED BACKGROUND ONLY */
.qs-diagonal-cta .qs-cta-btn::before{
  content: "";
  position: absolute;
  inset: 0;
  background: var(--red);
  transform: skewX(calc(-1 * var(--angle)));
  transform-origin: left center;
  z-index: -1;
  border-right:1.5px solid white;
}

/* Square right edge on last button */
.qs-diagonal-cta .qs-cta-btn:last-child{
  padding-right: calc(28px + var(--cap));
}

.qs-diagonal-cta .qs-cta-btn:last-child::after{
  content: "";
  position: absolute;
  top: 0;
  right: calc(-1 * var(--cap));
  width: var(--cap);
  height: 100%;
  background: var(--red);
  transform: skewX(calc(-1 * var(--angle)));
  transform-origin: left center;
  z-index: -1;
}

/* ICON — PERFECTLY UPRIGHT */
.qs-cta-icon{
  font-size: 18px;
  line-height: 1;
  margin-bottom: 6px;
}

/* TEXT — PERFECTLY UPRIGHT */
.qs-cta-text{
  font-size: 13px;
  line-height: 1.1;
  white-space: nowrap;
  text-align: center;
}

/* Hover */
.qs-diagonal-cta .qs-cta-btn:hover::before{
  filter: brightness(1.08);
}

/* =========================================================
   HEADER LAYOUT (NO OVERLAP)
   ========================================================= */

#headerrow-893713 .header-center.header-container-box{
  display: flex !important;
  align-items: stretch;
}

#column-59460{
  flex: 0 0 auto;
}

#column-290583{
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  justify-content: center;
}

@media (min-width: 993px){
  #column-17172{
    position: relative;
    flex: 0 0 360px;
    min-width: 360px;
  }

  #column-17172,
  #column-17172 .header-content-wrap{
    height: 100%;
    display: flex;
    align-items: stretch;
    justify-content: flex-end;
  }
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1399px){
  .qs-diagonal-cta .qs-cta-btn{
    padding: 0 15px;
  }
  .qs-cta-text{
    font-size: 13px;
  }
}

@media (max-width: 1199px){
  .qs-cta-text{
    display: none;
  }
  #column-17172{
    flex-basis: 240px;
    min-width: 240px;
  }
}

@media (max-width: 992px){
  #column-17172{
    flex: 0 0 auto;
    min-width: 0;
  }
  .qs-diagonal-cta-wrap{
    position: relative;
    right: 0;
    height: auto;
  }
}








  /* Status pills (used by JS) */
  .ame-badge-status{
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:0.15rem 0.55rem;
    font-size:0.7rem;
    font-weight:700;
    border:1px solid transparent;
    white-space:nowrap;
  }
  .ame-badge-status-dot{
    width:6px; height:6px; border-radius:999px; margin-right:0.35rem;
    background:rgba(255,255,255,0.9); display:inline-block;
  }
  .ame-badge-draft{ color:#111827; background:#e5e7eb; }
  .ame-badge-approved{ color:#f0fdf4; background:#16a34a; }
  .ame-badge-rejected{ color:#fef2f2; background:#b91c1c; }
  .ame-badge-submitted{ background:#0d6efd !important; color:#fff !important; border-color:#0b5ed7 !important; }

