/* =========================
   ROOT / VARIABLES
   ========================= */

:root {
  --bg: #050506;
  --text: #f2f2f2;
  --muted: rgba(242,242,242,0.6);
  --hair: rgba(242,242,242,0.18);
}

/* =========================
   RESET
   ========================= */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* =========================
   BASE
   ========================= */

html, body {
  width: 100%;
  height: 100%;
}

body {
  background: var(--bg);
  color: var(--text);
  font-family: "Libre Caslon Display", Georgia, serif;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Force links to look like text */
a,
a:visited,
a:hover,
a:active {
  color: var(--text);
  text-decoration: none;
}

/* =========================
   WRAP
   ========================= */

.wrap {
  max-width: 980px;
  margin: 0 auto;
  padding: 96px 24px 120px;
}

/* =========================
   HERO
   ========================= */

.hero h1 {
  font-size: clamp(58px, 8vw, 110px);
  font-weight: 400;
  letter-spacing: 0.16em;
  margin-bottom: 26px;
}

/*
.tag {
 font-size: 15px;                 
 letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 48px;             
 }*/

.tag {
  font-size: 18px;
  letter-spacing: 0.32em;
  text-transform: uppercase;

  /* KEY CHANGE */
  /* color: rgba(242, 242, 242, 0.75);*/
  color: rgba(255, 255, 255, 1);
  /* subtle lift from background */
  text-shadow: 0 0 1px rgba(0,0,0,0.6);

  margin-bottom: 44px;
}

/*
.tag .amp {
  display: inline-block;
  margin: 0 0.75em;                
  letter-spacing: 0;
  opacity: 0.7;
}
*/
.tag .amp {
  display: inline-block;
  margin: 0 0.55em;        /* slightly less spacing */
  letter-spacing: 0;
  opacity: 0.85;           /* stronger than surrounding letters */
}

/* =========================
   IMAGE
   ========================= */

.image-block {
  margin: 0 auto 44px;             /* restored breathing room */
  display: flex;
  justify-content: center;
}

.image-frame {
  position: relative;
  width: min(560px, 92vw);

  /* HARD EDGE REMOVAL */
  -webkit-mask-image: radial-gradient(
    ellipse at center,
    rgba(0,0,0,1) 42%,
    rgba(0,0,0,.98) 52%,
    rgba(0,0,0,.85) 62%,
    rgba(0,0,0,.45) 74%,
    rgba(0,0,0,0) 90%
  );
  mask-image: radial-gradient(
    ellipse at center,
    rgba(0,0,0,1) 42%,
    rgba(0,0,0,.98) 52%,
    rgba(0,0,0,.85) 62%,
    rgba(0,0,0,.45) 74%,
    rgba(0,0,0,0) 90%
  );
}

.image-frame img {
  width: 100%;
  height: auto;
  display: block;
  opacity: 0.96;
}

/* Edge-melt overlay */
.image-frame::after {
  content: "";
  position: absolute;
  inset: -18px;
  pointer-events: none;

  background:
    linear-gradient(to right,
      var(--bg) 0%,
      rgba(5,5,6,0) 24%,
      rgba(5,5,6,0) 76%,
      var(--bg) 100%
    ),
    linear-gradient(to bottom,
      var(--bg) 0%,
      rgba(5,5,6,0) 22%,
      rgba(5,5,6,0) 78%,
      var(--bg) 100%
    ),
    radial-gradient(
      ellipse at center,
      rgba(5,5,6,0) 38%,
      rgba(5,5,6,.65) 68%,
      var(--bg) 94%
    );

  filter: blur(18px);
  opacity: 1;
}

/* =========================
   DIVIDER
   ========================= */

.rule {
  width: 180px;
  height: 1px;
  background: var(--hair);
  margin: 48px auto 56px;          /* looser again */
}

/* =========================
   CONTACT
   ========================= */

.section {
  margin-top: 0;
}
/*
.kicker {
  font-size: 14px;                 
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: 18px;
}
*/
.kicker {
  font-size: 14px;
  letter-spacing: 0.28em;
  text-transform: uppercase;

  /* KEY CHANGE */
  color: rgba(242, 242, 242, 0.7);

  text-shadow: 0 0 1px rgba(0,0,0,0.6);

  margin-bottom: 18px;
}

.email {
  font-size: 14px;
  letter-spacing: 0.28em;
 

  /* KEY CHANGE 
  color: rgba(242, 242, 242, 0.7);*/

  text-shadow: 0 0 1px rgba(0,0,0,0.6);

  /*margin-bottom: 18px;*/
}

.list {
  list-style: none;
  margin-bottom: 18px;
}

.list a {
  font-size: 20px;                 /* readable, confident */
}

.small {
  font-size: 15px;
  color: var(--muted);
  margin-top: 6px;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 600px) {
  .hero h1 {
    letter-spacing: 0.13em;
  }

  .wrap {
    padding-top: 72px;
  }
}

/* =========================
   SOCIAL ICON
   ========================= */

.social {
  margin: 24px 0 14px;
}

.social img {
  width: 26px;          /* tweak between 22–28px to taste */
  height: 26px;
  opacity: 0.7;
  transition: opacity 0.2s ease;
  display: inline-block;
}

.social img:hover {
  opacity: 1;
}
