/*
  SomethingFishy.net Enterprise Homepage v4
  Replaces fragile image hotspots with real accessible clickable tiles.
*/

:root{
  --page-bg:#061f3d;
  --navy:#062247;
  --deep:#031a35;
  --blue:#0877b9;
  --aqua:#22c3d8;
  --gold:#ffc94a;
  --gold2:#f4a51c;
  --orange:#ef7f35;
  --green:#62c66f;
  --pink:#ff8fb2;
  --purple:#8d68ff;
  --teal:#38c8c8;
  --yellow:#ffe07a;
  --white:#ffffff;
  --cream:#fff7dc;
  --line:rgba(255,255,255,.24);
  --shadow:0 24px 70px rgba(0,25,55,.35);
  --soft-shadow:0 14px 36px rgba(0,25,55,.22);
}

*{box-sizing:border-box}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--navy);
  background:var(--page-bg);
}

a{
  color:inherit;
}

.skip-link{
  position:absolute;
  left:-999px;
  top:auto;
}

.skip-link:focus{
  left:14px;
  top:14px;
  z-index:1000;
  padding:12px 16px;
  background:var(--gold);
  color:var(--navy);
  border-radius:999px;
  font-weight:900;
}

/* Shared Header */

.site-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(6,34,71,.12);
  box-shadow:0 8px 24px rgba(0,30,60,.08);
}

.site-header-inner{
  width:min(1540px,96vw);
  margin:0 auto;
  min-height:92px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:22px;
  align-items:center;
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
}

.brand img{
  width:66px;
  height:66px;
  object-fit:contain;
  border-radius:16px;
  background:#fff;
}

.brand-copy strong{
  display:block;
  font-size:clamp(30px,4vw,56px);
  line-height:.88;
  letter-spacing:-1.8px;
  color:var(--navy);
}

.brand-copy small{
  display:block;
  margin-top:5px;
  color:#9b1b1e;
  font-size:13px;
  font-weight:900;
  letter-spacing:2px;
  text-transform:uppercase;
}

.main-nav{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  font-weight:900;
}

.main-nav a{
  text-decoration:none;
  padding:10px 14px;
  border-radius:999px;
  background:#f3fbff;
  border:1px solid rgba(6,34,71,.14);
  transition:transform .18s ease, background .18s ease;
}

.main-nav a:hover,
.main-nav a:focus-visible{
  background:var(--gold);
  transform:translateY(-2px);
}

.main-nav .active{
  background:var(--navy);
  color:white;
}

.main-nav .gold-pill{
  background:linear-gradient(135deg,var(--gold),var(--gold2));
}

/* Hero */

.hero-enterprise{
  position:relative;
  min-height:calc(100vh - 92px);
  overflow:hidden;
  padding:clamp(22px,3vw,46px);
  display:grid;
  grid-template-columns:1fr;
  align-items:end;
  gap:clamp(18px,2vw,28px);
  background:linear-gradient(180deg,#063b73,#061f3d);
}

.hero-bg{
  position:absolute;
  inset:0;
  background:
    url('../images/homepage/somethingfishy-homepage-master-hero.png?v=20260615d') center/cover no-repeat,
    linear-gradient(135deg,#1099d6,#061f3d);
  transform:scale(1.01);
}

.hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.56),transparent 32%),
    linear-gradient(180deg,rgba(3,22,45,.08),rgba(3,22,45,.22) 48%,rgba(3,22,45,.70));
}

.hero-content{
  position:relative;
  z-index:2;
  width:min(980px,92vw);
  margin:0 auto;
  text-align:center;
  color:white;
  padding:clamp(18px,3vw,34px);
  border-radius:30px;
  background:rgba(6,34,71,.58);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:var(--shadow);
  backdrop-filter:blur(6px);
}

.hero-badge-row{
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:15px;
}

.registry-badge,
.launch-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 14px;
  border-radius:999px;
  text-decoration:none;
  font-weight:1000;
}

.registry-badge{
  background:linear-gradient(135deg,#fff7d0,var(--gold));
  color:var(--navy);
}

.launch-badge{
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.24);
  color:white;
}

.seal-dot{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--navy);
  color:var(--gold);
  font-size:13px;
}

.hero-content h1{
  margin:0;
  font-size:clamp(42px,7vw,92px);
  line-height:.9;
  letter-spacing:-2.5px;
  text-transform:uppercase;
  text-shadow:0 5px 22px rgba(0,0,0,.35);
}

.hero-lead{
  max-width:820px;
  margin:18px auto 0;
  font-size:clamp(17px,2vw,23px);
  font-weight:900;
  line-height:1.35;
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}

.hero-actions{
  margin-top:24px;
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}

.hero-btn{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:13px 22px;
  border-radius:999px;
  text-decoration:none;
  font-weight:1000;
  box-shadow:var(--soft-shadow);
  transition:transform .18s ease, box-shadow .18s ease;
}

.hero-btn:hover,
.hero-btn:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 18px 44px rgba(0,20,55,.35);
}

.hero-btn.gold{
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  color:var(--navy);
}

.hero-btn.navy{
  background:var(--navy);
  color:white;
}

.hero-btn.glass{
  color:white;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.30);
}

/* Real Clickable Tiles */

.tile-deck{
  position:relative;
  z-index:3;
  width:min(1480px,96vw);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:14px;
}

.nav-tile{
  min-height:126px;
  padding:16px 12px;
  border-radius:30px 30px 42px 42px;
  text-align:center;
  text-decoration:none;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:5px;
  color:var(--navy);
  border:3px solid rgba(255,255,255,.86);
  box-shadow:0 18px 42px rgba(0,20,55,.28), inset 0 4px 0 rgba(255,255,255,.45);
  position:relative;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.nav-tile::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:inherit;
  background:repeating-radial-gradient(ellipse at 50% 12%,rgba(255,255,255,.48) 0 5px,rgba(0,0,0,.055) 6px 12px);
  opacity:.75;
}

.nav-tile > *{
  position:relative;
  z-index:1;
}

.nav-tile:hover,
.nav-tile:focus-visible{
  transform:translateY(-6px) scale(1.02);
  box-shadow:0 25px 60px rgba(0,20,55,.36);
  filter:saturate(1.05);
}

.tile-icon{
  font-size:30px;
  line-height:1;
}

.nav-tile strong{
  display:block;
  font-size:clamp(16px,1.4vw,22px);
  line-height:1.05;
  font-weight:1000;
}

.nav-tile small{
  display:block;
  max-width:210px;
  font-size:12px;
  line-height:1.25;
  font-weight:900;
}

.nav-tile.blue{background:linear-gradient(135deg,#e9fbff,#58d5ed 54%,#0981bf);color:white}
.nav-tile.orange{background:linear-gradient(135deg,#fff1de,#ffb15d 54%,#e76527)}
.nav-tile.gold{background:linear-gradient(135deg,#fff8d7,#ffd85b 54%,#f0a91e)}
.nav-tile.green{background:linear-gradient(135deg,#efffee,#99e48a 54%,#38a85f)}
.nav-tile.purple{background:linear-gradient(135deg,#f3edff,#b995ff 54%,#7d52e8);color:white}
.nav-tile.aqua{background:linear-gradient(135deg,#e9ffff,#78edf0 54%,#099aa7)}
.nav-tile.pink{background:linear-gradient(135deg,#fff0f7,#ffabc8 54%,#e8679c)}
.nav-tile.teal{background:linear-gradient(135deg,#e7ffff,#6ee3dc 54%,#0c9b9e)}
.nav-tile.yellow{background:linear-gradient(135deg,#fff9da,#ffe278 54%,#f0b337)}

/* Business CTA */

.business-panel{
  position:relative;
  z-index:4;
  width:min(480px,92vw);
  margin:0 0 0 auto;
  display:grid;
  grid-template-columns:88px 1fr;
  align-items:center;
  gap:12px;
  padding:14px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(228,250,255,.95));
  border:3px solid var(--gold);
  color:var(--navy);
  text-decoration:none;
  box-shadow:var(--shadow);
}

.business-panel img{
  width:88px;
  height:88px;
  object-fit:contain;
}

.business-panel em{
  display:block;
  font-style:normal;
  color:#9b1b1e;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:1px;
  font-size:13px;
}

.business-panel strong{
  display:block;
  font-size:22px;
  font-weight:1000;
  margin:2px 0;
}

.business-panel small{
  display:block;
  font-size:13px;
  font-weight:900;
  line-height:1.22;
}

/* Trust Strip */

.trust-strip{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  background:linear-gradient(135deg,#031a35,#062247);
  color:white;
  border-top:1px solid rgba(255,255,255,.15);
  border-bottom:1px solid rgba(255,255,255,.15);
}

.trust-strip a{
  text-decoration:none;
  min-height:92px;
  display:grid;
  align-content:center;
  justify-items:center;
  text-align:center;
  padding:14px;
  border-right:1px solid rgba(255,255,255,.14);
}

.trust-strip strong{
  display:block;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:1px;
}

.trust-strip span{
  font-weight:800;
  font-size:14px;
}

/* Conversion */

.conversion-section{
  padding:44px 18px;
  background:linear-gradient(180deg,#eafaff,#fff8e5);
}

.conversion-card{
  width:min(1180px,96vw);
  margin:auto;
  display:grid;
  grid-template-columns:1.2fr 1fr auto;
  gap:24px;
  align-items:center;
  padding:28px;
  border-radius:30px;
  background:white;
  border:3px solid var(--gold);
  box-shadow:var(--shadow);
}

.eyebrow{
  color:#9b1b1e;
  font-weight:1000;
  letter-spacing:1.5px;
  text-transform:uppercase;
}

.conversion-card h2{
  margin:7px 0 8px;
  font-size:clamp(28px,3vw,46px);
  line-height:1.02;
}

.conversion-card p{
  margin:0;
  font-size:17px;
  font-weight:800;
}

.stats-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}

.stats-row div{
  text-align:center;
  padding:15px;
  border-radius:18px;
  background:#eef9ff;
}

.stats-row strong{
  display:block;
  font-size:28px;
  font-weight:1000;
}

.stats-row span{
  display:block;
  font-size:12px;
  font-weight:900;
}

/* Footer */

.site-footer{
  color:white;
  background:var(--deep);
  padding:28px 18px;
}

.footer-inner{
  width:min(1380px,96vw);
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}

.site-footer strong{
  font-size:28px;
}

.site-footer p{
  margin:4px 0 0;
  font-weight:800;
}

.site-footer nav{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.site-footer a{
  color:white;
  font-weight:900;
  text-decoration:none;
}

/* Debug */

body.debug-tiles .nav-tile,
body.debug-tiles .business-panel,
body.debug-tiles .hero-btn,
body.debug-tiles .trust-strip a{
  outline:4px solid rgba(255,201,74,.95);
}

/* Responsive */

@media(max-width:1280px){
  .site-header-inner{
    grid-template-columns:1fr;
    padding:10px 0;
  }

  .brand{
    justify-content:center;
    text-align:center;
  }

  .main-nav{
    justify-content:center;
  }

  .tile-deck{
    grid-template-columns:repeat(4,1fr);
  }

  .conversion-card{
    grid-template-columns:1fr;
    text-align:center;
  }
}

@media(max-width:860px){
  .hero-enterprise{
    min-height:auto;
  }

  .hero-content{
    margin-top:12px;
  }

  .tile-deck{
    grid-template-columns:repeat(2,1fr);
  }

  .trust-strip{
    grid-template-columns:1fr;
  }

  .trust-strip a{
    min-height:68px;
  }

  .business-panel{
    margin:0 auto;
  }

  .stats-row{
    grid-template-columns:1fr;
  }
}

@media(max-width:560px){
  .brand{
    display:grid;
    justify-items:center;
  }

  .brand-copy strong{
    font-size:34px;
  }

  .main-nav{
    font-size:14px;
  }

  .main-nav a{
    padding:9px 11px;
  }

  .hero-enterprise{
    padding:16px;
  }

  .hero-content{
    padding:20px 16px;
    border-radius:22px;
  }

  .tile-deck{
    grid-template-columns:1fr;
  }

  .nav-tile{
    min-height:104px;
  }

  .business-panel{
    grid-template-columns:70px 1fr;
  }

  .business-panel img{
    width:70px;
    height:70px;
  }
}
