
/* ==========================================================
   TAHAI Web Services — tahai-web-services base + modern overrides
   Goal: geo at top, stairs at bottom, JTforME-adjacent palette
   ========================================================== */

:root{
  --brand-ink: var(--tws-ink);
  --brand-paper: var(--tws-paper);
  --brand-accent: var(--tws-teal2);
  --brand-accent-2: var(--tws-teal);
  --brand-warm: var(--tws-orange);
--tws-ink:#0b1220;          /* navy */
  --tws-teal:#2aa9b6;
  --tws-teal2:#6bd3d1;
  --tws-orange:#f28c28;
  --tws-paper:#f7f8fb;

}

body{
  /* Bottom stairs background */
  background:
    radial-gradient(900px 480px at 10% 0%, rgba(42,169,182,.14), transparent 60%),
    radial-gradient(900px 480px at 100% 0%, rgba(242,140,40,.12), transparent 60%),
    linear-gradient(#ffffff, var(--tws-paper));
  color: var(--tws-ink);
}

/* Sticky header polish */
.header{
  backdrop-filter: blur(10px);
  background: rgba(255,255,255,.82) !important;
  border-bottom: 1px solid rgba(11,18,32,.10);
}

/* Make logo a bit crisper */
.logo img{ height: 44px; width:auto; }

/* --- Hero: geo background at top with white mid strip --- */
.tws-hero{
  position: relative;
  overflow: hidden;
  padding: 120px 0 66px;
}
.tws-hero::before{
  content:"";
  position:absolute;
  inset:-40px;
  background-image:
    linear-gradient(90deg, rgba(11,18,32,.58) 0%, rgba(11,18,32,.38) 44%, rgba(11,18,32,.10) 100%),
    url("../img/1920x1080/01.jpg");
  background-size: cover;
  background-position: left top;
  transform: scale(1.02);
  filter: saturate(.95) contrast(1.12) brightness(1.18);
}
.tws-hero::after{
  /* white strip like the old tahai-web-services aesthetic */
  content:"";
  position:absolute;
  left:-10%; right:-10%;
  top:78%;
  height: 110px;
  transform: translateY(-50%) rotate(-1.1deg);
  background: rgba(255,255,255,.58);
  border-top: 1px solid rgba(255,255,255,.75);
  border-bottom: 1px solid rgba(255,255,255,.75);
  box-shadow: 0 22px 60px rgba(0,0,0,.30);
  pointer-events:none;
}
.tws-hero .tws-inner{
  position: relative;
  z-index: 2;
}
.tws-hero .tws-kicker{
  letter-spacing: .22em;
  text-transform: uppercase;
  font-size: 12px;
  color: rgba(255,255,255,.80);
  margin: 0 0 12px;
}
.tws-hero h1{
  color:#fff;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.tws-hero .tws-lead{
  color: rgba(255,255,255,.85);
  max-width: 62ch;
  font-size: 16px;
}
.tws-hero .tws-actions a{
  display:inline-block;
  margin-right: 10px;
  margin-top: 12px;
}
.tws-cta{
  background: linear-gradient(180deg, rgba(42,169,182,.98), rgba(11,18,32,.98));
  color: #ffffff !important;
  font-weight: 900;
  border-radius: 12px;
  padding: 12px 16px;
  box-shadow: 0 16px 34px rgba(11,18,32,.22);
  border: 1px solid rgba(255,255,255,.10);
}
.tws-ghost{
  background: rgba(11,18,32,.28);
  border: 1px solid rgba(255,255,255,.22);
  color: rgba(255,255,255,.94) !important;
  font-weight: 800;
  border-radius: 12px;
  padding: 12px 16px;
}

/* --- Bottom stairs section --- */
.tws-stairs{
  position: relative;
  padding: 90px 0;
  overflow:hidden;
}
.tws-stairs::before{
  content:"";
  position:absolute;
  inset:-20px;
  background-image:
    linear-gradient(180deg, rgba(247,248,251,0) 0%, rgba(247,248,251,.92) 40%, rgba(247,248,251,1) 100%),
    url("../img/1920x1080/02.jpg");
  background-size: cover;
  background-position: bottom center;
  filter: saturate(.95) contrast(1.02);
  transform: scale(1.02);
}
.tws-stairs .tws-inner{ position: relative; z-index: 2; }

/* Reduce any leftover contact form styling (we don't use forms) */
input, textarea, form{ display:none !important; }


/* --- Rebrand artwork integration --- */
.tws-rebrand{ position:relative; padding: 22px 0 10px; }
.tws-rebrand .tws-inner{ position:relative; z-index:2; }
.tws-rebrand-card{
  position: relative;
  overflow: hidden;
  display:flex;
  gap:18px;
  align-items:center;
  flex-wrap:wrap;
  background: rgba(11,18,32,.92);
  border-radius: 18px;
  padding: 14px;
  box-shadow: 0 22px 60px rgba(0,0,0,.28);
}
.tws-rebrand-card img{
  width: 320px; max-width: 100%;
  height: auto; border-radius: 12px;
  box-shadow: 0 18px 42px rgba(0,0,0,.35);
}
.tws-rebrand-copy{ color: rgba(255,255,255,.88); max-width: 46ch; }
.tws-rebrand-copy h2{
  margin: 0 0 6px;
  color:#fff;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.tws-rebrand-copy p{ margin:0; color: rgba(255,255,255,.78); }

/* Footer mark */
.tws-rebrand-mark::after{
  content:"";
  display:inline-block;
  width: 120px;
  height: 44px;
  margin-left: 14px;
  background-image: url("../img/tws-rebrand.png");
  background-size: cover;
  background-position: left top;
  border-radius: 10px;
  box-shadow: 0 14px 28px rgba(0,0,0,.22);
  opacity: .9;
}
@media (max-width: 768px){
  .tws-rebrand-card{ padding: 12px; }
  .tws-rebrand-card img{ width: 100%; }
  .tws-rebrand-mark::after{ display:none; }
}

/* Improve contrast where the white strip crosses hero copy */
.tws-hero h1,
.tws-hero .tws-lead,
.tws-hero .tws-kicker{
  text-shadow: 0 10px 26px rgba(0,0,0,.55);
}

/* Footer alignment override */
.footer .row, footer .row{ display:flex; flex-wrap:wrap; align-items:flex-start; }
.footer [class*="col-"], footer [class*="col-"]{ margin-bottom: 12px; }
.footer ul, footer ul{ padding-left: 0; list-style: none; }
.footer li, footer li{ margin: 6px 0; }

/* Palette v2 — tuned to rebrand (cool teal/blue on grayscale) */
:root{
  --tws-accent:#59cbd6;
  --tws-accent2:#2aa9b6;
  --tws-deep:#0b1220;
  --tws-surface:rgba(255,255,255,.86);
}
.navbar-nav>li>a, .nav>li>a, ul.nav li a{
  letter-spacing:.08em;
}
.navbar-nav>li.active>a, .nav>li.active>a, ul.nav li.active a{
  color: var(--tws-accent) !important;
}

/* Buttons */
.tws-cta{
  background: linear-gradient(180deg, rgba(89,203,214,.98), rgba(42,169,182,.98)) !important;
  color:#062029 !important;
  border:1px solid rgba(255,255,255,.14) !important;
}
.tws-ghost{
  background: rgba(11,18,32,.34) !important;
}


/* === Blue‑gray palette applied === */
:root{
  --bg-primary:#0b1220;
  --bg-secondary:#121a2a;
  --accent-main:#59cbd6;
  --accent-soft:#2aa9b6;
  --text-primary:rgba(255,255,255,.92);
  --text-secondary:rgba(255,255,255,.72);
  --text-muted:rgba(255,255,255,.55);
}

/* Base backgrounds */
body{
  background: var(--bg-primary);
  color: var(--text-primary);
}

section, .section{
  background: transparent;
}

.section.alt, .card, .panel{
  background: var(--bg-secondary);
}

/* Text hierarchy */
p{ color: var(--text-secondary); }
small, .muted{ color: var(--text-muted); }

/* Links & accents */
a{ color: var(--accent-main); }
a:hover{ color: var(--accent-soft); }

/* Footer */
footer{
  background: linear-gradient(180deg, #0b1220, #070c16);
  color: var(--text-secondary);
}


/* === Polish pass: hero spacing + typography weights + trust strip === */

/* Typography: slightly tighter tracking and weights */
h1, h2, h3{
  letter-spacing: -0.015em;
}
.tws-hero h1{
  font-weight: 850;
  line-height: 1.08;
}
.tws-hero .tws-lead{
  font-weight: 520;
  line-height: 1.55;
}
p{ font-weight: 420; }

/* Hero spacing tightened */
.tws-hero{
  padding: 92px 0 70px; /* was roomier */
}
.tws-hero .tws-kicker{
  margin: 0 0 10px;
}
.tws-hero h1{
  margin: 0 0 10px;
}
.tws-hero .tws-lead{
  margin: 0 0 14px;
}

/* Trust strip */
.tws-trust{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 999px;
  background: rgba(11,18,32,.46);
  border: 1px solid rgba(89,203,214,.20);
  color: var(--text-secondary);
  width: fit-content;
}
.tws-trust-dot{
  width: 8px; height: 8px;
  border-radius: 999px;
  background: var(--accent-main);
  box-shadow: 0 0 0 4px rgba(89,203,214,.12);
}
.tws-trust-muted{ color: var(--text-muted); }
.tws-trust-link{ color: var(--accent-main); text-decoration: none; font-weight: 650; }
.tws-trust-link:hover{ color: var(--accent-soft); text-decoration: underline; }
.tws-trust-sep{ color: rgba(255,255,255,.28); }


/* === Hero readability fix === */

/* Darken overlay behind hero content */
.tws-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    180deg,
    rgba(11,18,32,.65),
    rgba(11,18,32,.55) 45%,
    rgba(11,18,32,.45)
  );
  z-index:1;
}
.tws-hero > *{
  position:relative;
  z-index:2;
}

/* Stronger text contrast */
.tws-hero h1{
  color:#ffffff;
  text-shadow: 0 4px 16px rgba(0,0,0,.85);
}
.tws-hero .tws-lead,
.tws-hero .tws-kicker{
  color: rgba(255,255,255,.92);
  text-shadow: 0 3px 12px rgba(0,0,0,.75);
}

/* Buttons: darker bases for contrast on light band */
.tws-cta{
  background: linear-gradient(180deg, #2aa9b6, #1f7f8a) !important;
  color:#041a1f !important;
}
.tws-ghost{
  background: rgba(11,18,32,.72) !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.35) !important;
}

/* Trust strip readability */
.tws-trust{
  background: rgba(11,18,32,.72);
  border-color: rgba(89,203,214,.35);
}

/* tws-strip-polish */
.tws-hero::after{
  background: linear-gradient(180deg, rgba(255,255,255,.70), rgba(235,245,255,.62)) !important;
  box-shadow: 0 18px 70px rgba(0,0,0,.28);
  border-top: 1px solid rgba(255,255,255,.55);
  border-bottom: 1px solid rgba(11,18,32,.10);
}

/* tws-hero-text-contrast */
.tws-hero h1{
  color:#fff;
  text-shadow: 0 4px 16px rgba(0,0,0,.85);
}
.tws-hero .tws-lead,
.tws-hero .tws-kicker{
  color: rgba(255,255,255,.92);
  text-shadow: 0 3px 12px rgba(0,0,0,.70);
}

/* tws-nav-contrast (WCAG AA on light header) */
.header .navbar-nav>li>a,
.header .nav>li>a,
.header ul.nav li a{
  color: rgba(11,18,32,.88) !important;
}
.header .navbar-nav>li.active>a,
.header .nav>li.active>a,
.header ul.nav li.active a{
  color: rgba(11,18,32,.95) !important;
  border-bottom: 2px solid var(--accent-main);
  padding-bottom: 10px;
}
.header .navbar-nav>li>a:hover,
.header .nav>li>a:hover,
.header ul.nav li a:hover{
  color: rgba(11,18,32,1) !important;
}


/* === Hero kicker cutoff fix === */
.tws-hero{
  padding-top: 118px !important; /* ensures kicker clears header */
}
.tws-hero .tws-kicker{
  display:block;
  margin-top: 6px !important;
  padding-top: 6px;
  line-height: 1.2;
}
@media (max-width: 768px){
  .tws-hero{ padding-top: 110px !important; }
  .tws-hero .tws-kicker{ margin-top: 8px !important; }
}


/* === Signature Geometry Echo (premium) === */
.tws-hero .hero-card,
.tws-hero .tws-hero-card{
  position: relative;
  background: linear-gradient(
    180deg,
    rgba(11,18,32,0.92),
    rgba(11,18,32,0.88)
  );
  clip-path: polygon(
    0 0,
    100% 0,
    97% 100%,
    0 100%
  ); /* ~3deg diagonal echo */
  border: 1px solid rgba(255,255,255,0.06);
}

.tws-hero .hero-card::after,
.tws-hero .tws-hero-card::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(
      135deg,
      rgba(89,203,214,0.08),
      rgba(89,203,214,0.00) 60%
    );
  opacity: 0.92;
}

@media (max-width: 768px){
  .tws-hero .hero-card,
  .tws-hero .tws-hero-card{
    clip-path: none;
    border-radius: 10px;
  }
}


/* === Masked geometry echo (signature) === */
.tws-rebrand-card{
  position: relative;
  overflow: hidden;
  background: rgba(11,18,32,.92);
  border-radius: 18px;
  /* subtle diagonal cut (top-right) */


}

/* echo the geo seams inside the card */
.tws-rebrand-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius: 18px;
  background:
    /* subtle diagonal sheen */
    linear-gradient(135deg, rgba(58,224,255,.06) 0%, rgba(58,224,255,.00) 42%),
    /* faint diagonal pattern */
    repeating-linear-gradient(135deg, rgba(255,255,255,.055) 0px, rgba(255,255,255,.055) 1px, rgba(255,255,255,0) 1px, rgba(255,255,255,0) 18px);
  opacity:.55;
  z-index:0;
  pointer-events:none;
}

/* keep content above the echo */
.tws-rebrand-card > *{
  position: relative;
  z-index: 1;
}

/* edge highlight that follows the cut */
.tws-rebrand-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius: 18px;
  border: 1px solid rgba(58,224,255,.22);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.18);
  z-index:2;
  pointer-events:none;
  transform: translateZ(0);
  backface-visibility: hidden;
}


/* === Final polish bundle (motion + type + founder + steps) === */

/* Micro-motion reveal */
.tws-reveal{
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .55s ease, transform .55s ease;
  will-change: opacity, transform;
}
.tws-reveal.tws-in{
  opacity: 1;
  transform: translateY(0);
}
.tws-reveal-2{ transition-delay: .08s; }
.tws-reveal-3{ transition-delay: .16s; }
.tws-reveal-4{ transition-delay: .24s; }

/* Typography refinement */
.tws-hero h1{ font-weight: 580; letter-spacing: -0.015em; }
.tws-hero .tws-lead{ font-weight: 450; }

/* Founder signal */
.tws-founder-signal{
  margin: 12px 0 26px;
  color: var(--text-secondary);
  font-weight: 600;
  letter-spacing: .02em;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.tws-founder-signal .tws-dot{
  color: rgba(255,255,255,.28);
}

/* How I work */
.tws-how{
  padding: 70px 0;
  background: linear-gradient(180deg, rgba(18,26,42,.35), rgba(11,18,32,0));
}
.tws-how h2{ margin-bottom: 18px; }
.tws-steps{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
}
.tws-step{
  background: rgba(18,26,42,.55);
  border: 1px solid rgba(89,203,214,.16);
  border-radius: 18px;
  padding: 18px 16px;
}
.tws-step-num{
  width: 34px; height: 34px;
  border-radius: 12px;
  display:flex; align-items:center; justify-content:center;
  background: rgba(89,203,214,.18);
  border: 1px solid rgba(89,203,214,.22);
  color: var(--text-primary);
  font-weight: 800;
  margin-bottom: 10px;
}
.tws-step h3{ margin: 0 0 6px; font-size: 18px; }
.tws-step p{ margin:0; color: var(--text-secondary); }
@media (max-width: 992px){
  .tws-steps{ grid-template-columns: 1fr; }
}

/* Footer tagline */
.tws-footer-tagline{
  margin: 0 0 14px;
  color: var(--text-secondary);
  font-weight: 650;
  letter-spacing: .01em;
}


/* === Fix masked card top-right cutoff === */
.tws-rebrand-card{
  padding-right: 26px; /* breathing room for clipped edge */
  overflow: visible; /* allow edge highlight to render */
}

/* inset diagonal cut slightly to avoid container clipping */
.tws-rebrand-card{


}

/* ensure parent containers don't clip children */
.tws-hero,
.tws-hero .container{
  overflow: visible;
}

/* tws-rebrand-layering */
.tws-rebrand-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius: 18px;
  background:
    /* subtle diagonal sheen */
    linear-gradient(135deg, rgba(58,224,255,.06) 0%, rgba(58,224,255,.00) 42%),
    /* faint diagonal pattern */
    repeating-linear-gradient(135deg, rgba(255,255,255,.055) 0px, rgba(255,255,255,.055) 1px, rgba(255,255,255,0) 1px, rgba(255,255,255,0) 18px);
  opacity:.55;
  z-index:0;
  pointer-events:none;
}
.tws-rebrand-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius: 18px;
  border: 1px solid rgba(58,224,255,.22);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.18);
  z-index:2;
  pointer-events:none;
  transform: translateZ(0);
  backface-visibility: hidden;
}
.tws-rebrand-card > *{ position: relative; z-index: 1; }


/* === Nav spacing refinement === */
.header .navbar-nav>li>a,
.header .nav>li>a,
.header ul.nav li a{
  padding-left: 18px;
  padding-right: 18px;
  letter-spacing: .08em;
}
@media (max-width: 992px){
  .header .navbar-nav>li>a,
  .header .nav>li>a,
  .header ul.nav li a{
    padding-left: 14px;
    padding-right: 14px;
    letter-spacing: .06em;
  }
}

/* tws-nav-spacing */
.header .navbar-nav>li{
  margin-left: 18px;
}
.header .navbar-nav>li:first-child{
  margin-left: 0;
}
.header .navbar-nav>li>a{
  padding-left: 0 !important;
  padding-right: 0 !important;
  letter-spacing: .08em;
}
@media (max-width: 768px){
  .header .navbar-nav>li{
    margin-left: 0;
  }
  .header .navbar-nav>li>a{
    letter-spacing: .06em;
  }
}

/* tws-nav-spacing-extended */
.header ul.nav>li{
  margin-left: 18px;
}
.header ul.nav>li:first-child{ margin-left: 0; }
.header ul.nav>li>a{
  padding-left: 0 !important;
  padding-right: 0 !important;
  letter-spacing: .08em;
}

/* tws-header-height */
.header .navbar, .header .navbar-default{
  min-height: 62px;
}
.header .navbar-nav>li>a, .header ul.nav>li>a{
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

/* tws-bullets */
.tws-bullets{
  padding-left: 18px;
  margin: 10px 0 0;
}
.tws-bullets li{
  margin: 6px 0;
  color: var(--text-secondary);
}

/* tws-rebrand-antialias */
.tws-rebrand-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius: 18px;
  border: 1px solid rgba(58,224,255,.22);
  box-shadow: inset 0 0 0 1px rgba(0,0,0,.18);
  z-index:2;
  pointer-events:none;
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* tws-rebrand-spacing */
.tws-rebrand{
  padding-top: 34px;
  padding-bottom: 54px;
}
@media (max-width: 992px){
  .tws-rebrand{
    padding-top: 28px;
    padding-bottom: 44px;
  }
}


/* Initiative document headings */
.tws-doc-h{
  margin-top: 28px;
  margin-bottom: 12px;
  letter-spacing: -0.01em;
}
h1.tws-doc-h{ font-size: 42px; font-weight: 750; }
h2.tws-doc-h{ font-size: 28px; font-weight: 720; margin-top: 34px; }
h3.tws-doc-h{ font-size: 20px; font-weight: 700; margin-top: 18px; opacity: .95; }
@media (max-width: 768px){
  h1.tws-doc-h{ font-size: 34px; }
  h2.tws-doc-h{ font-size: 24px; }
}



/* Footer (campaign) */
.tws-footer-links{padding-top:40px;}
.tws-footer-note{opacity:.85; font-size:13px; margin-top:10px; line-height:1.4;}
.tws-footer-trust{
  margin-top:18px;
  opacity:.75;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.tws-footer-copyright{
  margin-top:6px;
  opacity:.8;
  font-size:13px;
}

@media (max-width: 576px){
  .tws-footer-links > [class*="col-"]{
    text-align:center;
    margin-bottom:18px;
  }
  .tws-footer-list{display:inline-block;}
}


/* --- JTforME additions: campaign “what this is”, press, references --- */
.tws-hero .tws-what{
  margin-top: 10px;
  color: rgba(255,255,255,.84);
  max-width: 76ch;
  font-size: 15px;
}
.tws-hero .tws-what-italic{ margin-top: 6px; color: rgba(255,255,255,.78); }
.tws-pill{
  display:inline-block;
  margin-left: 10px;
  margin-top: 12px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
  color: rgba(255,255,255,.92);
  font-weight: 700;
}
.tws-pill a{ color: var(--tws-teal2); text-decoration:none; }
.tws-pill a:hover{ text-decoration: underline; }

.tws-minihead{
  font-size: 16px;
  font-weight: 800;
  margin: 0 0 10px;
}
.tws-bullets{
  padding-left: 18px;
  color: rgba(11,18,32,.88);
}
.tws-bullets li{ margin-bottom: 10px; }

.tws-callout{
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(42,169,182,.12), rgba(242,140,40,.08));
  border: 1px solid rgba(11,18,32,.10);
  padding: 18px 20px;
}
.tws-callout .tws-callout-links{ margin-top: 8px; }
.tws-callout .tws-callout-links a{ font-weight: 800; }
.tws-callout .tws-callout-note{ margin-top: 10px; font-weight: 800; }
.tws-muted{ color: rgba(11,18,32,.68); }

/* --- Initiative accordions (verbatim text, dropdown sections) --- */
.tws-accordion{ max-width: 1040px; }
.tws-acc{
  margin: 0 0 12px;
  border-radius: 16px;
  border: 1px solid rgba(11,18,32,.10);
  background: rgba(255,255,255,.92);
  box-shadow: 0 14px 36px rgba(11,18,32,.06);
  overflow: hidden;
}
.tws-acc summary{
  padding: 14px 16px;
  font-weight: 900;
  cursor: pointer;
  list-style: none;
  color: rgba(11,18,32,.92);
}

.tws-acc-teaser{
  display:block;
  margin-top: 6px;
  font-weight: 600;
  font-size: 13px;
  color: rgba(11,18,32,.62);
  letter-spacing: 0.01em;
}
.tws-acc summary::-webkit-details-marker{ display:none; }
.tws-acc summary:after{
  content: "+";
  float: right;
  font-weight: 900;
  color: rgba(11,18,32,.60);
}
.tws-acc[open] summary:after{ content: "–"; }
.tws-acc-body{
  padding: 14px 16px 18px;
  border-top: 1px solid rgba(11,18,32,.08);
}
.tws-pre{
  margin: 0;
  white-space: pre-wrap;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.58;
  color: rgba(11,18,32,.92);
  background: transparent;
  border: 0;
}

/* --- Stairs band near footer (signature brand imagery) --- */
.tws-stairs{
  position: relative;
  padding: 84px 0;
  background-image:
    linear-gradient(90deg, rgba(11,18,32,.92) 0%, rgba(11,18,32,.62) 52%, rgba(11,18,32,.22) 100%),
    url("../img/1920x1080/02.jpg");
  background-size: cover;
  background-position: center bottom;
  border-top: 1px solid rgba(255,255,255,.10);
}
.tws-stairs-card{
  position: relative;
  z-index: 2;
  max-width: 820px;
  background: rgba(11,18,32,.78);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  padding: 22px 24px;
  backdrop-filter: blur(6px);
  box-shadow: 0 26px 70px rgba(0,0,0,.28);
}
.tws-stairs-title{
  margin-top: 0;
  color: #ffffff;
  font-weight: 900;
}
.tws-stairs-text{
  color: rgba(255,255,255,.92);
  max-width: 72ch;
}
.tws-stairs-text a{
  color: var(--tws-teal2);
  font-weight: 900;
  text-decoration: none;
}
.tws-stairs-text a:hover{ text-decoration: underline; }
.tws-stairs-actions a{
  display: inline-block;
  margin-right: 10px;
  margin-top: 10px;
}
@media (max-width: 600px){
  .tws-stairs{ padding: 66px 0; }
  .tws-stairs-actions a{ width: 100%; text-align:center; margin-right: 0; }
}


/* Parker nod — photo + quiet monogram */
.tws-parker{
  position: relative;
  padding: 34px 0 12px;
  background: transparent;
}
.tws-parker .container{ position: relative; }

.tws-parker-photo{
  max-width: 240px;
  width: 100%;
  height: auto;
  border-radius: 16px;
  box-shadow: 0 16px 44px rgba(0,0,0,.38);
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(15,26,46,.20);
}


.tws-parker-copy{
  padding: 8px 0 0;
}

.tws-parker-title{
  margin: 0 0 10px;
  color: rgba(255,255,255,.92);
  font-weight: 900;
  letter-spacing: .2px;
  font-size: 22px;
}

.tws-parker-text{
  margin: 0;
  color: rgba(232,238,247,.82);
  max-width: 62ch;
  font-size: 16px;
  line-height: 1.55;
}

.tws-parker-mark{
  position: absolute;
  right: 18px;
  bottom: 14px;
  width: 180px;
  height: auto;
  opacity: .04;
  filter: saturate(.95) contrast(1.05);
  pointer-events: none;
}

.tws-footer-mark{
  width: 22px;
  height: 22px;
  opacity: .58;
  margin-right: 10px;
  vertical-align: -4px;
  filter: saturate(.95) contrast(1.05);
}

/* keep parker section from crowding on small screens */
@media (max-width: 991px){
  .tws-parker{ padding: 24px 0 8px; }
  .tws-parker-mark{ width: 140px; right: 12px; bottom: 10px; }
}
