/* Ambriel Property Management — Coming Soon
   One page, one stylesheet. Navy · silver · gold. */

:root{
  --navy:#0B1F3A;
  --navy-deep:#071528;
  --navy-logo:#0E172C;      /* matches the logo art's own ground */
  --slate:#2F4E73;
  --silver:#C9CED6;
  --silver-dim:#A6B0C0;
  --gold:#C5A253;
  --gold-bright:#D8BC74;
  --font-display:'Cinzel',Georgia,'Times New Roman',serif;
  --font-body:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  --edge:clamp(1.25rem,4vw,3.25rem);
  --radius:4px;
}

*,*::before,*::after{box-sizing:border-box;}

html,body{margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;}

body{
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.6;
  color:#fff;
  background:var(--navy-deep);
}

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

a{color:var(--gold-bright);text-decoration:none;}
a:hover{color:#fff;}

/* ---------- stage ---------- */
.stage{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.stage__photo{
  position:absolute;
  inset:0;
  background:url("../images/florida-home.jpg") center 38% / cover no-repeat;
  transform:scale(1.03);
}

.stage__wash{
  position:absolute;
  inset:0;
  background:
    linear-gradient(105deg,rgba(7,21,40,.96) 0%,rgba(7,21,40,.9) 42%,rgba(11,31,58,.72) 68%,rgba(11,31,58,.6) 100%),
    linear-gradient(to top,rgba(7,21,40,.9),rgba(7,21,40,0) 55%);
}

/* ---------- layout ---------- */
.shell{
  position:relative;
  z-index:1;
  flex:1;
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:clamp(2.25rem,5vh,4rem) var(--edge) 1.25rem;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  align-items:center;
  gap:clamp(2rem,5vw,4.5rem);
}

/* ---------- left: the message ---------- */
.mark{
  width:clamp(230px,24vw,330px);
  margin:0 0 clamp(1.5rem,3vh,2.25rem);
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.45));
}

.eyebrow{
  margin:0 0 .85rem;
  font-size:.75rem;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--gold);
}

h1{
  margin:0;
  font-family:var(--font-display);
  font-weight:600;
  font-size:clamp(2.1rem,1.3rem+2.6vw,3.55rem);
  line-height:1.1;
  letter-spacing:.005em;
  color:#fff;
  text-wrap:pretty;
}

.rule{
  width:84px;
  height:2px;
  margin:clamp(1.25rem,2.6vh,1.75rem) 0;
  background:linear-gradient(90deg,var(--gold),rgba(197,162,83,0));
}

.lede{
  margin:0;
  max-width:46ch;
  font-size:clamp(1rem,.97rem+.22vw,1.15rem);
  color:#E8ECF2;
  text-wrap:pretty;
}

.acts{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:1rem;
  margin:clamp(1.5rem,3.2vh,2.25rem) 0 0;
}

.act{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-family:var(--font-body);
  font-weight:700;
  font-size:1rem;
  letter-spacing:.03em;
  padding:.95rem 1.7rem;
  min-height:52px;
  border-radius:var(--radius);
  border:1px solid transparent;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}

.act--gold{
  background:var(--gold);
  color:#14213A;
  box-shadow:0 14px 30px -18px rgba(0,0,0,.9);
}
.act--gold:hover{background:var(--gold-bright);color:#14213A;transform:translateY(-1px);}

.act--ghost{
  background:transparent;
  border-color:rgba(201,206,214,.5);
  color:#fff;
  font-weight:400;
}
.act--ghost:hover{border-color:var(--gold);color:var(--gold-bright);}

.serving{
  margin:clamp(1.5rem,3vh,2.25rem) 0 0;
  font-size:.86rem;
  letter-spacing:.06em;
  color:var(--silver-dim);
}

/* ---------- right: the form ---------- */
.panel{
  background:rgba(9,24,44,.82);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(201,206,214,.16);
  border-top:2px solid var(--gold);
  border-radius:var(--radius);
  padding:clamp(1.5rem,2.4vw,2.25rem);
  box-shadow:0 30px 70px -34px rgba(0,0,0,.95);
}

.panel__title{
  margin:0;
  font-family:var(--font-display);
  font-weight:600;
  font-size:1.4rem;
  color:#fff;
}

.panel__sub{
  margin:.5rem 0 1.4rem;
  font-size:.95rem;
  color:var(--silver);
}

.ask{display:grid;gap:.9rem;}

.field{display:grid;gap:.4rem;}
.field > span{
  font-size:.76rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--silver);
}
.field em{font-style:normal;color:var(--gold);}

.field input,
.field textarea{
  font-family:var(--font-body);
  font-size:1rem;
  color:#fff;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(201,206,214,.28);
  border-radius:var(--radius);
  padding:.72rem .85rem;
  width:100%;
  min-height:48px;
  transition:border-color .18s ease,background .18s ease;
}
.field textarea{resize:vertical;min-height:104px;line-height:1.5;}
.field input:focus,
.field textarea:focus{
  outline:none;
  border-color:var(--gold);
  background:rgba(255,255,255,.1);
}

.field-row{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;}

.act--submit{width:100%;margin-top:.35rem;}

.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

.note{
  margin:.35rem 0 0;
  min-height:1.2em;
  font-size:.9rem;
  color:var(--silver);
}
.note.is-ok{color:var(--gold-bright);}
.note.is-bad{color:#F0B4A6;}

/* ---------- footer ---------- */
.foot{
  position:relative;
  z-index:1;
  padding:0 var(--edge) clamp(1.25rem,3vh,2rem);
  max-width:1180px;
  margin:0 auto;
  width:100%;
}
.foot p{
  margin:0;
  padding-top:1.1rem;
  border-top:1px solid rgba(201,206,214,.14);
  font-size:.78rem;
  letter-spacing:.06em;
  color:var(--silver-dim);
}

/* ---------- mobile: one centered column ---------- */
@media (max-width:900px){
  .stage{min-height:0;}
  .stage__photo{position:fixed;}
  .stage__wash{position:fixed;background:
    linear-gradient(180deg,rgba(7,21,40,.88) 0%,rgba(7,21,40,.93) 45%,rgba(7,21,40,.97) 100%);}

  .shell{
    grid-template-columns:minmax(0,1fr);
    gap:2.25rem;
    padding:clamp(2rem,6vh,3rem) var(--edge) 1.5rem;
    text-align:center;
    justify-items:center;
  }

  .mark{margin-inline:auto;width:min(70vw,280px);}
  h1{font-size:clamp(1.95rem,1.3rem+3.4vw,2.6rem);}
  .rule{margin-inline:auto;}
  .lede{max-width:none;width:100%;text-align:center;margin-inline:auto;}
  .acts{justify-content:center;}
  .act--ghost,.act--gold{flex:1 1 auto;min-width:min(100%,280px);}
  .panel{width:100%;max-width:480px;text-align:left;}
  .panel__title,.panel__sub{text-align:center;}
  .foot p{text-align:center;}
}

@media (max-width:430px){
  .field-row{grid-template-columns:1fr;}
  .acts{flex-direction:column;align-items:stretch;}
}

@media (prefers-reduced-motion:reduce){
  *{transition:none !important;}
}
