/* ==========================================================================
   AMME — Site styles
   ========================================================================== */


@font-face{
  font-family: "TT Drugs";
  src: url("../fonts/TTDrugs-Regular.woff2") format("woff2"),
       url("../fonts/TTDrugs-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face{
  font-family: "TT Drugs";
  src: url("../fonts/TTDrugs-Medium.woff2") format("woff2"),
       url("../fonts/TTDrugs-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face{
  font-family: "TT Drugs";
  src: url("../fonts/TTDrugs-Bold.woff2") format("woff2"),
       url("../fonts/TTDrugs-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root{
  color-scheme: dark;
  --bg0: #000000;
  --bg1: #010513;
  --panel: rgba(12, 22, 48, 0.60);
  --panel2: rgba(12, 22, 48, 0.84);
  --border: rgba(79, 237, 231, 0.18);
  --text: #eaf2ff;
  --muted: rgba(234, 242, 255, 0.72);
  --muted2: rgba(234, 242, 255, 0.56);
  --accent: #39efe6;
  --accent2: #f6d36b;
  --danger: #ff5a7a;

  --shadow: 0 18px 50px rgba(0,0,0,.55);

  --radius: 16px;
  --radius-sm: 12px;

  --maxw: 1120px;
  --pad: clamp(18px, 4vw, 34px);

  --focus: 0 0 0 3px rgba(57, 239, 230, 0.35);
}

*{ box-sizing: border-box; }

html{
  scroll-behavior: smooth;
}

body{
  margin:0;
  font-family: "TT Drugs","TTDrugs","Space Grotesk",system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
  background:
    radial-gradient(1100px 520px at 20% 10%, rgba(57, 239, 230, 0.10), transparent 60%),
    radial-gradient(900px 480px at 80% 20%, rgba(246, 211, 107, 0.08), transparent 55%),
    radial-gradient(900px 560px at 55% 90%, rgba(57, 239, 230, 0.07), transparent 60%),
    linear-gradient(180deg, var(--bg1), var(--bg0) 55%, #000000);
  color: var(--text);
  line-height: 1.6;
  overflow-x: hidden;
}

img{ max-width:100%; height:auto; }

a{ color: inherit; text-decoration: none; }
a:hover{ text-decoration: underline; }

p{ margin: 0 0 1rem; color: var(--muted); }

h1,h2,h3{
  margin:0 0 .75rem;
  line-height: 1.15;
  letter-spacing: -0.02em;
}
h1{ font-size: clamp(2rem, 4vw, 3.25rem); }
h2{ font-size: clamp(1.6rem, 2.7vw, 2.2rem); }
h3{ font-size: 1.15rem; }

ul{ padding-left: 1.1rem; }
li{ color: var(--muted); }

code,kbd{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono","Courier New", monospace;
  font-size: .95em;
}

.container{
  width: min(var(--maxw), calc(100% - var(--pad)*2));
  margin: 0 auto;
}

.skip-link{
  position:absolute;
  top: 0;
  left: 0;
  transform: translateY(-120%);
  background: rgba(10, 22, 40, 0.95);
  color: var(--text);
  padding: .75rem 1rem;
  border-radius: 0 0 12px 0;
  z-index: 1000;
}
.skip-link:focus{
  transform: translateY(0);
  outline: none;
  box-shadow: var(--focus);
}

/* --------------------------------------------------------------------------
   Header + Navigation
   -------------------------------------------------------------------------- */

.site-header{
  position: sticky;
  top:0;
  z-index: 50;
  background: transparent;
  transition: background .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.site-header.is-scrolled{
  background: rgba(7, 13, 28, 0.72);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(79, 237, 231, 0.12);
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
}

.header-inner{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 1rem;
  padding: .75rem 0;
}

.brand{
  display:flex;
  align-items:center;
  gap: .7rem;
  min-width: 160px;
}

.brand-mark{
  width: 62px;
  height: 62px;
  border-radius: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  display:grid;
  place-items:center;
}

.brand-mark img{
  width: 62px;
  height: 62px;
  display:block;
}

.brand .brand-text{
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .95rem;
  opacity: .95;
}

.site-nav{
  display:flex;
  align-items:center;
}

.nav-list{
  list-style:none;
  display:flex;
  align-items:center;
  gap: .25rem;
  margin:0;
  padding:0;
}

.nav-list a,
.nav-list button{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding: .65rem .9rem;
  border-radius: 12px;
  border: 1px solid transparent;
  background: transparent;
  color: rgba(234, 242, 255, 0.88);
  font: inherit;
  cursor: pointer;
  text-decoration: none;
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}

.nav-list a:hover,
.nav-list button:hover{
  background: rgba(57,239,230,0.08);
  border-color: rgba(57,239,230,0.20);
  text-decoration: none;
}

.nav-list a.active,
.nav-list button.active{
  background: rgba(57,239,230,0.12);
  border-color: rgba(57,239,230,0.28);
}

.nav-toggle{
  display:none;
  border: 1px solid rgba(57,239,230,0.22);
  background: rgba(9,18,38,0.55);
  color: var(--text);
  border-radius: 14px;
  padding: .6rem .75rem;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(0,0,0,.35);
}

.nav-toggle:focus{ outline:none; box-shadow: var(--focus); }

.nav-toggle .bars{
  display:grid;
  gap: 5px;
}
.nav-toggle .bar{
  width: 22px;
  height: 2px;
  background: rgba(234,242,255,.9);
  border-radius: 999px;
}

.has-dropdown{
  position: relative;
}

.dropdown{
  position:absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 220px;
  background: rgba(10, 18, 38, 0.92);
  border: 1px solid rgba(57,239,230,0.18);
  border-radius: 14px;
  box-shadow: var(--shadow);
  padding: .35rem;
  display:none;
}

.dropdown a{
  width: 100%;
  justify-content: flex-start;
  padding: .65rem .8rem;
  border-radius: 12px;
}

.dropdown a:hover{
  background: rgba(57,239,230,0.10);
}

.has-dropdown:hover .dropdown,
.has-dropdown:focus-within .dropdown{
  display:block;
}

/* Mobile nav (drawer) */
.nav-backdrop{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.55);
  z-index: 40;
}

@media (max-width: 920px){
  .nav-toggle{ display:inline-flex; align-items:center; gap:.6rem; }
  .site-nav{
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: min(92vw, 360px);
    background: rgba(7, 13, 28, 0.96);
    border-left: 1px solid rgba(57,239,230,0.14);
    box-shadow: -20px 0 60px rgba(0,0,0,.55);
    transform: translateX(105%);
    transition: transform .22s ease;
    z-index: 45;
    padding: 72px 14px 18px;
    overflow-y:auto;
  }
  body.nav-open .site-nav{ transform: translateX(0); visibility: visible; pointer-events: auto; }
  .nav-list{
    flex-direction: column;
    align-items: stretch;
    gap: .25rem;
  }
  .nav-list a,
  .nav-list button{
    width: 100%;
    justify-content: space-between;
  }
  .dropdown{
    position: static;
    min-width: 0;
    display: none;
    box-shadow: none;
    background: rgba(9, 18, 38, 0.70);
    margin: 0 .25rem .5rem;
  }
  .has-dropdown:hover .dropdown,
  .has-dropdown:focus-within .dropdown{ display:none; } /* disable hover opening on mobile */
  .has-dropdown.open .dropdown{ display:block; }
}

/* --------------------------------------------------------------------------
   UI Elements
   -------------------------------------------------------------------------- */

.badge{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding: .35rem .65rem;
  border-radius: 999px;
  border: 1px solid rgba(57,239,230,0.20);
  background: rgba(57,239,230,0.07);
  color: rgba(234,242,255,.9);
  font-size: .85rem;
}

.button-row{ display:flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.25rem; }

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.6rem;
  padding: .75rem 1rem;
  border-radius: 14px;
  border: 1px solid rgba(57,239,230,0.28);
  background: rgba(57,239,230,0.12);
  color: rgba(234,242,255,.98);
  text-decoration: none;
  font-weight: 600;
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
}

.btn:hover{
  transform: translateY(-1px);
  background: rgba(57,239,230,0.18);
  text-decoration:none;
  border-color: rgba(57,239,230,0.42);
}

.btn.secondary{
  background: rgba(246, 211, 107, 0.10);
  border-color: rgba(246, 211, 107, 0.28);
}
.btn.secondary:hover{
  background: rgba(246, 211, 107, 0.16);
  border-color: rgba(246, 211, 107, 0.44);
}

.btn.ghost{
  background: transparent;
  border-color: rgba(234,242,255,0.18);
}
.btn.ghost:hover{
  background: rgba(234,242,255,0.06);
  border-color: rgba(234,242,255,0.26);
}

.card{
  background: var(--panel2);
  border: 1px solid rgba(57,239,230,0.14);
  border-radius: var(--radius);
  padding: 1.1rem 1.1rem;
  box-shadow: 0 18px 50px rgba(0,0,0,.40);
}

.card h3{ margin-bottom: .4rem; }

.grid{
  display:grid;
  gap: 1rem;
}

.grid.cols-3{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid.cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 960px){
  .grid.cols-3{ grid-template-columns: 1fr; }
  .grid.cols-2{ grid-template-columns: 1fr; }
}

.section{
  padding: clamp(48px, 8vw, 92px) 0;
}

.section.tight{
  padding: clamp(34px, 6vw, 64px) 0;
}

.section-head{
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}

.section-head p{
  max-width: 62ch;
  margin:0;
}

.section-head.center{
  justify-content: center;
  text-align: center;
}
.section-head.center > div{
  margin: 0 auto;
}
.section-head.center p{
  margin: 0 auto;
}

hr.sep{
  border:0;
  height:1px;
  background: linear-gradient(90deg, transparent, rgba(57,239,230,0.22), transparent);
  margin: 0;
}

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */

.hero{
  padding: clamp(34px, 6vw, 70px) 0 0;
}

.hero-inner{
  display:grid;
  grid-template-columns: 1.35fr .85fr;
  gap: clamp(18px, 3vw, 34px);
  align-items: center;
}

@media (max-width: 900px){
  .hero-inner{ grid-template-columns: 1fr; }
}

.hero .lead{
  font-size: 1.1rem;
  color: rgba(234,242,255,.78);
  max-width: 72ch;
}

.hero-art{
  position: relative;
  border-radius: 22px;
  border: 1px solid rgba(57,239,230,0.16);
  background:
    radial-gradient(500px 320px at 50% 20%, rgba(57,239,230,0.18), transparent 55%),
    radial-gradient(520px 320px at 60% 90%, rgba(246,211,107,0.10), transparent 60%),
    rgba(9,18,38,0.55);
  padding: 18px;
  box-shadow: var(--shadow);
  overflow:hidden;
}

.hero-art:before{
  content:"";
  position:absolute;
  inset:-60px;
  background:
    radial-gradient(circle at 20% 10%, rgba(57,239,230,0.14), transparent 40%),
    radial-gradient(circle at 80% 30%, rgba(246,211,107,0.09), transparent 42%),
    radial-gradient(circle at 60% 80%, rgba(57,239,230,0.10), transparent 46%);
  filter: blur(10px);
  opacity: .85;
}

.hero-art img{
  position: relative;
  z-index: 1;
  border-radius: 18px;
}

.kicker{
  display:flex;
  align-items:center;
  gap:.75rem;
  flex-wrap: wrap;
  margin-bottom: .8rem;
}

/* --------------------------------------------------------------------------
   Page header (for subpages)
   -------------------------------------------------------------------------- */
.page-hero{
  padding: 42px 0 22px;
}
.page-hero h1{
  margin-bottom: .5rem;
}
.breadcrumbs{
  font-size: .9rem;
  color: var(--muted2);
}
.breadcrumbs a{ color: rgba(234,242,255,.86); }
.breadcrumbs a:hover{ text-decoration: underline; }

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.site-footer{
  padding: 34px 0 40px;
  border-top: 1px solid rgba(57,239,230,0.12);
  background:
    radial-gradient(900px 320px at 50% 0%, rgba(57,239,230,0.10), transparent 55%),
    rgba(2, 4, 10, 0.86);
}

.footer-grid{
  display:grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  gap: 1rem;
}

@media (max-width: 960px){
  .footer-grid{ grid-template-columns: 1fr; }
}

.footer-title{
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: .9rem;
  margin-bottom: .6rem;
  color: rgba(234,242,255,.9);
}

.footer-links{
  list-style:none;
  padding:0;
  margin:0;
}
.footer-links a{
  display:block;
  padding: .4rem 0;
  color: rgba(234,242,255,.78);
}
.footer-links a:hover{ color: rgba(234,242,255,.95); text-decoration: none; }

.small{
  font-size: .92rem;
  color: rgba(234,242,255,.68);
}
.mini{
  font-size: .85rem;
  color: rgba(234,242,255,.56);
}


.center-text{ text-align: center; }
.center-text p{ margin-left: auto; margin-right: auto; }
/* --------------------------------------------------------------------------
   Utilities
   -------------------------------------------------------------------------- */

.sr-only{
  position:absolute!important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}

.note{
  border-left: 3px solid rgba(246,211,107,0.65);
  padding: .9rem 1rem;
  background: rgba(246,211,107,0.08);
  border-radius: 14px;
  color: rgba(234,242,255,.82);
}

.table{
  width:100%;
  border-collapse: collapse;
  overflow:hidden;
  border-radius: 14px;
  border: 1px solid rgba(57,239,230,0.14);
}
.table th,.table td{
  text-align:left;
  padding: .8rem .85rem;
  border-bottom: 1px solid rgba(57,239,230,0.10);
  vertical-align: top;
}
.table th{ color: rgba(234,242,255,.92); font-weight: 650; background: rgba(57,239,230,0.05); }
.table td{ color: rgba(234,242,255,.72); }

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior: auto; }
  *{ transition: none!important; animation: none!important; }
}


/* ==========================================================================
   AMME — v2 refinements (visual + interaction)
   ========================================================================== */

/* --- Slightly darker overall tone --- */
:root{
  --bg0: #000000;
  --bg1: #010513;
}

/* --- Best-effort: discourage copying (note: not a security control) --- */
body{
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
input, textarea, select{
  -webkit-user-select: text;
  user-select: text;
}

/* --- Header: always use a classy hamburger menu (all links live inside it) --- */
.nav-toggle{
  display:inline-flex;
  align-items:center;
  gap:.6rem;
}

.site-nav{
  position: fixed;
  top: 0;
  right: 0;
  height: 100vh;
  width: min(92vw, 400px);
  background: rgba(6, 12, 26, 0.97);
  border-left: 1px solid rgba(57,239,230,0.14);
  box-shadow: -20px 0 60px rgba(0,0,0,.55);
  transform: translateX(105%);
  transition: transform .22s ease;
  z-index: 45;
  padding: 84px 14px 18px;
  overflow-y:auto;
  display:block;  visibility: hidden;
  pointer-events: none;
}

.nav-open .site-nav{ transform: translateX(0); visibility: visible; pointer-events: auto; }

.nav-list{
  flex-direction: column;
  align-items: stretch;
  gap: .25rem;
}
.nav-list a,
.nav-list button{
  width: 100%;
  justify-content: space-between;
}

/* Remove nested dropdowns (everything is a single list in the hamburger menu) */
.has-dropdown,
.dropdown{ display:none !important; }

/* --- Scroll “unroll” cards (hover/click to open) --- */
.scroll-card{
  position: relative;
  overflow: visible;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,0.28);
  box-shadow: 0 18px 50px rgba(0,0,0,.40);
  background:
    linear-gradient(180deg, #e2c995 0%, #caa069 55%, #dfc790 100%),
    repeating-linear-gradient(90deg, rgba(0,0,0,0.03) 0px, rgba(0,0,0,0.03) 1px, transparent 1px, transparent 8px);

  color: #17120b;
  max-height: 128px;
  transition: max-height .55s ease, transform .18s ease, box-shadow .18s ease;
}

.scroll-card::before,
.scroll-card::after{
  content:"";
  position:absolute;
  left:-10%;
  right:-10%;
  height: 22px;
  background:
    radial-gradient(60px 14px at 50% 50%, rgba(0,0,0,0.18), transparent 70%),
    linear-gradient(180deg, rgba(0,0,0,0.22), rgba(0,0,0,0.10));
  opacity: .55;
  pointer-events:none;
}

.scroll-card::before{
  top:-11px;
  border-radius: 999px;
}

.scroll-card::after{
  bottom:-11px;
  border-radius: 999px;
  transform: rotate(180deg);
}

.scroll-card summary{
  list-style: none;
  padding: 20px 20px 16px;
  cursor: pointer;
  font-weight: 800;
  letter-spacing: .02em;
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 1rem;
  background: rgba(0,0,0,0.06);
  border-bottom: 1px solid rgba(0,0,0,0.10);
}

.scroll-card summary::-webkit-details-marker{ display:none; }

.scroll-card .scroll-body{
  padding: 0 20px 20px;
  color: rgba(17,13,8,0.88);
}

.scroll-card .scroll-body p{
  margin: .55rem 0;
  color: rgba(17,13,8,0.88);
}

.scroll-card[open]{
  max-height: 1400px;
  transform: translateY(-2px);
  box-shadow: 0 24px 70px rgba(0,0,0,.45);
}

.scroll-card .scroll-chevron{
  opacity: .7;
  transition: transform .25s ease;
}
.scroll-card[open] .scroll-chevron{ transform: rotate(180deg); }

.scroll-card a{
  color: #063338;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.scroll-card a:hover{ text-decoration-thickness: 3px; }

/* --- Hero logo media (static image, gentle 4D tilt) --- */
.hero-art{
  display:grid;
  place-items:center;
}

.hero-media{
  position: relative;
  --tiltX: 0deg;
  --tiltY: 0deg;
  transform: perspective(900px) rotateX(var(--tiltX)) rotateY(var(--tiltY));
  will-change: transform;
  width: 100%;
  max-width: 420px;
  aspect-ratio: 1 / 1;
  display:grid;
  place-items:center;
  isolation: isolate;
}

.hero-logo-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit: contain;
  object-position: center;
  border-radius: 18px;
  border: 1px solid rgba(234,242,255,0.08);
  filter: drop-shadow(0 20px 55px rgba(0,0,0,.55));
}


/* --- Thesis preview reader --- */
.doc-viewer{
  border-radius: 14px;
  overflow: auto;
  border: 1px solid rgba(57,239,230,0.14);
  background: rgba(9,18,38,0.55);
  height: 78vh;
  padding: 16px 10px;
}

.doc-page{
  width: min(920px, 100%);
  margin: 0 auto 16px;
  background: rgba(255,255,255,0.03);
  border-radius: 10px;
  overflow:hidden;
  box-shadow: 0 18px 40px rgba(0,0,0,.38);
}

.doc-page img{
  width: 100%;
  height: auto;
  display:block;
}

.lock-divider{
  width: min(920px, 100%);
  margin: 8px auto 18px;
  border-radius: 12px;
  border: 1px dashed rgba(246, 211, 107, 0.45);
  background: rgba(246, 211, 107, 0.08);
  padding: 12px 14px;
  color: rgba(234,242,255,0.90);
}

.pricing-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
}

@media (max-width: 760px){
  .pricing-grid{ grid-template-columns: 1fr; }
}
.pricing-card{
  background: var(--panel2);
  border: 1px solid rgba(57,239,230,0.14);
  border-radius: 16px;
  padding: 1rem 1rem;
  box-shadow: 0 18px 50px rgba(0,0,0,.38);
}
.pricing-card h3{ margin-top:0; margin-bottom:.25rem; }
.pricing-card .price{
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: .02em;
  margin: .25rem 0 .75rem;
}



/* --- Pricing buttons: aligned + centered --- */
.pricing-grid{ align-items: stretch; }
.pricing-card{
  display:flex;
  flex-direction: column;
  gap: .35rem;
}
.pricing-card .mini{ color: rgba(234,242,255,.72); }
.pricing-actions{
  margin-top: auto;
  padding-top: .6rem;
  display:flex;
  flex-direction: column;
  align-items: center;
  gap: .65rem;
}
.pricing-actions .btn{
  width: 100%;
  max-width: 240px;
}


/* --- Thesis purchase header (tiny photo) --- */
.purchase-header{
  display:flex;
  align-items:center;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: .55rem;
}
.mini-avatar{
  width: 64px;
  height: 64px;
  border-radius: 16px;
  border: 1px solid rgba(57,239,230,0.18);
  box-shadow: 0 14px 34px rgba(0,0,0,.45);
  object-fit: cover;
}


/* --- Forms (review/contact) --- */
.form{
  margin-top: .25rem;
}
.form label{
  display:block;
}
.form input,
.form textarea,
.form select{
  width: 100%;
  margin-top: .45rem;
  padding: .85rem .9rem;
  border-radius: 14px;
  border: 1px solid rgba(57,239,230,0.18);
  background: rgba(4, 10, 22, 0.65);
  color: rgba(234,242,255,.96);
  font: inherit;
  box-shadow: inset 0 0 0 1px rgba(0,0,0,0.18);
}
.form textarea{
  resize: vertical;
  min-height: 170px;
}
.form input::placeholder,
.form textarea::placeholder{
  color: rgba(234,242,255,0.52);
}
.form input:focus,
.form textarea:focus,
.form select:focus{
  outline: none;
  box-shadow: var(--focus);
  border-color: rgba(57,239,230,0.35);
}
.form .button-row{ justify-content: center; }


/* --- Footer social links --- */
.social-links{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-wrap:wrap;
  gap: .6rem .9rem;
}
.social-links a{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.35rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(234,242,255,0.14);
  background: rgba(234,242,255,0.05);
  color: rgba(234,242,255,0.82);
  text-decoration:none;
}
.social-links a:hover{
  background: rgba(57,239,230,0.10);
  border-color: rgba(57,239,230,0.22);
}

@media (prefers-reduced-motion: reduce){
  .hero-media{ transform: none !important; }
}


/* --- Social icon buttons (footer) --- */

.social-icons{
  display:flex;
  flex-wrap:wrap;
  gap: 12px;
  align-items:center;
  margin-top: .25rem;
}

.social-icon{
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display:grid;
  place-items:center;
  border: 1px solid rgba(57,239,230,0.22);
  background: rgba(57,239,230,0.08);
  box-shadow: 0 14px 34px rgba(0,0,0,.38);
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
  text-decoration:none;
}

.social-icon svg{
  width: 18px;
  height: 18px;
  fill: rgba(234,242,255,0.90);
}

.social-icon:hover{
  transform: translateY(-1px);
  background: rgba(57,239,230,0.14);
  border-color: rgba(57,239,230,0.36);
  text-decoration:none;
}

.social-icon:focus{
  outline:none;
  box-shadow: var(--focus);
}


/* --- Reviews list --- */
.reviews-list{
  margin-top: 1rem;
  display: grid;
  gap: 12px;
}
.review-item{
  padding: 14px 14px;
  border-radius: 14px;
  border: 1px solid rgba(57,239,230,0.14);
  background: rgba(9,18,38,0.55);
  box-shadow: 0 18px 40px rgba(0,0,0,.30);
}
.review-top{
  display:flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.review-name{
  font-weight: 700;
}
.review-rating{
  letter-spacing: 1px;
  opacity: .95;
}
.review-meta{
  font-size: 0.86rem;
  opacity: .75;
}
.review-item p{
  margin-top: .5rem;
}

.hp{display:none !important;}
