:root{
  --ct-bg:#f3efe7;
  --ct-ink:#10131b;
  --ct-panel:#151923;
  --ct-line:rgba(16,19,27,.12);
  --ct-lime:#bdff48;
  --ct-violet:#7662f2;
  --ct-muted:#6e7180;
}

body{background:var(--ct-bg);color:var(--ct-ink)}

.page-header{
  min-height:610px;
  display:flex;
  align-items:center;
  padding:9.5rem 0 6rem;
  background:#0e1118;
  isolation:isolate;
}
.page-header::before{
  background:
    radial-gradient(circle at 82% 24%,rgba(118,98,242,.26),transparent 33%),
    radial-gradient(circle at 68% 75%,rgba(189,255,72,.08),transparent 24%);
}
.page-header::after{
  content:"";
  position:absolute;
  width:min(43vw,560px);height:min(43vw,560px);
  right:-8%;top:5%;border:1px solid rgba(255,255,255,.08);border-radius:50%;
  box-shadow:inset 0 0 80px rgba(118,98,242,.06);
  z-index:-1;
}
.page-header-inner{max-width:820px}
.contact-eyebrow{
  display:inline-flex;align-items:center;gap:.65rem;
  padding:.45rem .8rem;border:1px solid rgba(255,255,255,.14);
  border-radius:999px;background:rgba(255,255,255,.055);
  color:rgba(255,255,255,.76);font-size:.76rem;font-weight:700;
  letter-spacing:.03em;margin-bottom:1.4rem;backdrop-filter:blur(12px);
}
.contact-eyebrow span{width:8px;height:8px;border-radius:50%;background:var(--ct-lime);box-shadow:0 0 0 5px rgba(189,255,72,.12)}
.page-h1{
  max-width:760px;font-style:normal;
  font-size:clamp(3.3rem,7.5vw,6.7rem);line-height:.94;
  letter-spacing:-.065em;margin-bottom:1.5rem;
}
.page-h1 em{font-style:normal;color:var(--ct-lime)}
.page-sub{max-width:660px;font-size:clamp(1rem,1.45vw,1.18rem);color:rgba(255,255,255,.64);line-height:1.7}
.hero-contact-points{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.hero-contact-points span{padding:.58rem .8rem;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:rgba(255,255,255,.72);font-size:.78rem;background:rgba(255,255,255,.035)}
.hero-contact-points span::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--ct-lime);margin-right:.55rem;vertical-align:middle}
.breadcrumb{bottom:1.15rem}

.contact-section{padding:clamp(4rem,8vw,7rem) 0;background:var(--ct-bg)}
.contact-grid{grid-template-columns:minmax(280px,.82fr) minmax(0,1.35fr);gap:clamp(2rem,5vw,5rem)}
.contact-aside{position:sticky;top:120px}
.aside-section-label{color:var(--ct-violet);font-weight:800;letter-spacing:.12em}
.aside-title{font-size:clamp(2rem,3.8vw,3.7rem);line-height:.98;letter-spacing:-.055em;color:var(--ct-ink);margin-bottom:1.1rem}
.aside-sub{font-size:1rem;color:var(--ct-muted);max-width:42ch;margin-bottom:1.7rem}
.info-cards{display:grid;gap:.65rem;margin-bottom:.65rem}
.info-card{background:rgba(255,255,255,.58);border:1px solid var(--ct-line);border-radius:18px;padding:1rem 1.05rem;box-shadow:none;backdrop-filter:blur(8px)}
.info-card:hover{border-color:rgba(118,98,242,.35);box-shadow:0 10px 30px rgba(16,19,27,.06)}
.info-card-icon{width:38px;height:38px;background:#ebe7ff;border-radius:12px;font-size:.95rem}
.info-card-label{color:#817f8b;font-size:.67rem}
.info-card-value{color:var(--ct-ink);font-weight:700}
.info-card-note{color:#7b7d86}
.romina-card{margin-top:.8rem;background:var(--ct-panel);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:1.25rem}
.romina-avatar{background:var(--ct-lime);color:#111;border:0}

.contact-form-wrap{
  background:rgba(255,255,255,.76);
  border:1px solid rgba(16,19,27,.11);
  border-radius:32px;
  padding:clamp(1.5rem,4vw,3rem);
  box-shadow:0 30px 80px rgba(29,25,50,.08);
  backdrop-filter:blur(14px);
}
.form-title{font-size:clamp(1.9rem,3.2vw,3.2rem);line-height:1;letter-spacing:-.045em;color:var(--ct-ink);margin-bottom:.7rem}
.form-subtitle{font-size:.95rem;color:var(--ct-muted);margin-bottom:2rem}
.field-row{gap:1rem}
.field-group label{font-weight:700;color:#31343e;font-size:.82rem}
.field-group input,.field-group select,.field-group textarea{
  width:100%;background:#fff;border:1px solid rgba(16,19,27,.14);border-radius:14px;
  color:var(--ct-ink);padding:.9rem 1rem;min-height:48px;box-shadow:none;
}
.field-group textarea{min-height:150px;resize:vertical}
.field-group input:focus,.field-group select:focus,.field-group textarea:focus{outline:3px solid rgba(118,98,242,.13);border-color:var(--ct-violet)}
.checkbox-group{background:#f5f2eb;border:1px solid rgba(16,19,27,.1);border-radius:16px;padding:1rem}
.btn-submit{width:100%;justify-content:center;background:var(--ct-lime);color:#10131b;border-radius:999px;min-height:54px;font-weight:800;box-shadow:none}
.btn-submit:hover{background:#aef532;color:#10131b}
.form-note{color:#7b7d86;text-align:center}
.form-note a{color:#5543d6}
.required{color:#6b55ec!important}

@media(max-width:860px){
  .page-header{min-height:auto;padding:8.2rem 0 5.2rem}
  .page-h1{font-size:clamp(3rem,12vw,5.2rem)}
  .contact-grid{grid-template-columns:1fr}
  .contact-aside{position:static;order:1}
  .contact-form-wrap{order:2}
  .info-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .page-header{padding:7.6rem 0 4.5rem}
  .page-h1{font-size:clamp(2.7rem,14.5vw,4.2rem)}
  .page-sub{font-size:.96rem}
  .hero-contact-points{gap:.5rem}
  .hero-contact-points span{font-size:.72rem}
  .info-cards{grid-template-columns:1fr}
  .contact-form-wrap{border-radius:24px;padding:1.25rem}
  .field-row{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
