/* ===================================================================
   Enlightenmd Event Space — shared design tokens
   Palette + type aligned to enlightenmd.com (navy blue / white / grey)
=================================================================== */
:root{
  --eew-clay:#2B4C7E;        /* primary navy blue (was clay/terracotta) */
  --eew-clay-deep:#16294A;   /* deep navy hover state */
  --eew-forest:#16233D;      /* darkest navy — hero/features backgrounds */
  --eew-sage:#A7C2E0;        /* soft powder blue — accents on dark navy */
  --eew-sand:#E7ECF3;        /* light blue-grey — section backgrounds */
  --eew-cream:#FFFFFF;       /* white */
  --eew-ink:#1C2733;         /* near-navy body text */
  --eew-line:rgba(28,39,51,0.14);
  --eew-serif:'Playfair Display', serif;
  --eew-sans:'Inter', sans-serif;
}
.eew-section *{box-sizing:border-box;}
.eew-section{font-family:var(--eew-sans); color:var(--eew-ink);}
.eew-section img{max-width:100%; display:block;}
.eew-wrap{max-width:1120px; margin:0 auto; padding:0 32px;}
.eew-eyebrow{
  font-size:12px; text-transform:uppercase; letter-spacing:.16em;
  font-weight:600; margin-bottom:14px; display:flex; align-items:center; gap:10px;
}
.eew-eyebrow::before{content:""; width:28px; height:1px; background:currentColor;}
.eew-btn{
  font-family:var(--eew-sans); font-weight:600; font-size:14px; letter-spacing:.02em;
  padding:15px 28px; border-radius:999px; border:1px solid transparent; cursor:pointer;
  display:inline-block; text-decoration:none; transition:transform .15s ease, background .15s ease;
}
.eew-btn:hover{transform:translateY(-1px);}
.eew-btn-primary{background:var(--eew-clay); color:var(--eew-cream);}
.eew-btn-primary:hover{background:var(--eew-clay-deep); color:var(--eew-cream);}
.eew-btn-ghost{border-color:rgba(28,39,51,0.25); color:var(--eew-ink);}
.eew-btn-ghost:hover{border-color:var(--eew-ink);}

/* ===================================================================
   HERO  — split layout, diagonal clay panel, arched photo frame
=================================================================== */
.eew-hero{
  position:relative;
  background:linear-gradient(160deg, #1E3358 0%, var(--eew-forest) 55%, #0C1626 100%);
  color:var(--eew-cream);
  overflow:hidden;
  padding:0;
}
.eew-hero-grid{
  display:grid;
  grid-template-columns:1.05fr 0.95fr;
  align-items:stretch;
  min-height:560px;
}
.eew-hero-left{
  padding:96px 56px 96px 0;
  margin-left:auto;
  max-width:560px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.eew-hero-left .eew-wrap{padding:0; max-width:none;}
.eew-hero-eyebrow{color:var(--eew-sage);}
.eew-hero h1{
  font-family:var(--eew-serif); font-weight:500;
  font-size:clamp(38px,4.6vw,58px); line-height:1.06; letter-spacing:-0.01em;
}
.eew-hero h1 em{font-style:italic; font-weight:400; color:var(--eew-sage);}
.eew-hero-sub{margin-top:22px; font-size:17px; color:rgba(255,255,255,0.78); max-width:46ch;}
.eew-hero-ctas{margin-top:34px; display:flex; gap:16px; flex-wrap:wrap;}
.eew-hero-badges{
  margin-top:44px; display:flex; gap:28px; flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,0.18); padding-top:24px;
}
.eew-hero-badge b{font-family:var(--eew-serif); font-size:22px; font-weight:500; display:block; color:var(--eew-cream);}
.eew-hero-badge span{font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:rgba(255,255,255,0.6);}

.eew-hero-right{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:64px 64px 64px 96px;
  background:linear-gradient(155deg,#3E63A0 0%, #223E68 52%, #0C1830 100%);
  clip-path:polygon(12% 0, 100% 0, 100% 100%, 0% 100%);
}
.eew-hero-right::before{
  content:"";
  position:absolute; inset:0;
  background:radial-gradient(circle at 25% 15%, rgba(167,194,224,0.35), transparent 60%);
  pointer-events:none;
}
.eew-hero-photo-frame{
  position:relative;
  width:100%;
  max-width:520px;
  aspect-ratio:4 / 5;
  border-radius:240px 240px 16px 16px;
  overflow:hidden;
  box-shadow:0 30px 70px -20px rgba(0,0,0,0.5);
  background:var(--eew-sand);
}
.eew-hero-photo-frame img{width:100% !important; height:100% !important; object-fit:cover; display:block;}
.eew-hero-photo-frame.eew-fit-auto{display:flex; align-items:center; justify-content:center;}
.eew-hero-photo-frame.eew-fit-auto img{width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:none !important;}
.eew-hero-photo-frame.eew-fit-contain img{background:transparent;}
.eew-hero-photo-frame.eew-no-image{
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,0.12);
  color:rgba(255,255,255,0.55);
  font-family:var(--eew-serif); font-style:italic; font-size:18px;
}

@media(max-width:900px){
  .eew-hero-grid{grid-template-columns:1fr; min-height:0;}
  .eew-hero-left{padding:64px 28px 40px; max-width:none; margin:0;}
  .eew-hero-right{clip-path:none; padding:32px 28px;}
  .eew-hero-photo-frame{max-width:none; aspect-ratio:4 / 3; border-radius:24px;}
}

/* ===================================================================
   INTRO
=================================================================== */
.eew-intro{background:var(--eew-sand); padding:88px 0;}
.eew-intro .eew-wrap{display:grid; grid-template-columns:0.8fr 1.2fr; gap:56px; align-items:center;}
.eew-intro-quote{
  font-family:var(--eew-serif); font-style:italic; font-weight:400;
  font-size:clamp(22px,2.4vw,30px); line-height:1.3; color:var(--eew-forest);
  border-left:2px solid var(--eew-clay); padding-left:28px;
}
.eew-intro-body p{font-size:16px; color:#4A5568; margin-bottom:16px;}
.eew-intro-body p:last-child{margin-bottom:0;}
@media(max-width:880px){ .eew-intro .eew-wrap{grid-template-columns:1fr;} }

/* ===================================================================
   PERFECT FOR
=================================================================== */
.eew-perfect{background:var(--eew-cream); padding:88px 0;}
.eew-perfect .eew-eyebrow{color:var(--eew-clay-deep);}
.eew-perfect h2{
  font-family:var(--eew-serif); font-weight:500; font-size:clamp(28px,3.4vw,42px);
  letter-spacing:-0.01em; max-width:18ch;
}
.eew-section-head{display:grid; grid-template-columns:1.2fr 1fr; gap:48px; align-items:end; margin-bottom:56px;}
.eew-section-head p{color:#5B6472; font-size:16px; max-width:42ch;}
.eew-perfect-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
.eew-perfect-card{background:var(--eew-cream); border:1px solid var(--eew-line); padding:30px 20px 24px; text-align:center;}
.eew-perfect-card .eew-mark{
  width:54px; height:54px; margin:0 auto 18px; background:var(--eew-sand);
  border-radius:999px 999px 8px 8px; display:flex; align-items:center; justify-content:center;
  color:var(--eew-clay-deep); font-size:18px;
}
.eew-perfect-card h3{font-family:var(--eew-serif); font-size:17px; font-weight:500;}
@media(max-width:880px){ .eew-perfect-grid{grid-template-columns:repeat(2,1fr);} .eew-section-head{grid-template-columns:1fr;} }

/* ===================================================================
   FEATURES
=================================================================== */
.eew-features{background:var(--eew-forest); color:var(--eew-cream); padding:88px 0;}
.eew-features .eew-eyebrow{color:var(--eew-sage);}
.eew-features h2{
  font-family:var(--eew-serif); font-weight:500; font-size:clamp(28px,3.4vw,42px);
  color:var(--eew-cream); margin-bottom:40px; letter-spacing:-0.01em;
}
.eew-features-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:1px;
  background:rgba(255,255,255,0.14); border:1px solid rgba(255,255,255,0.14);
}
.eew-feature{background:var(--eew-forest); padding:32px 28px;}
.eew-feature b{font-family:var(--eew-serif); font-size:28px; font-weight:500; display:block; color:var(--eew-clay);}
.eew-feature span{font-size:13px; color:rgba(255,255,255,0.7); display:block; margin-top:6px;}
@media(max-width:880px){ .eew-features-grid{grid-template-columns:repeat(2,1fr);} }

/* ===================================================================
   RENTAL OPTIONS
=================================================================== */
.eew-rentals{padding:88px 0; background:var(--eew-cream);}
.eew-rentals-head{margin-bottom:0;}
.eew-rentals .eew-eyebrow{color:var(--eew-clay-deep);}
.eew-rentals h2{font-family:var(--eew-serif); font-weight:500; font-size:clamp(28px,3.4vw,42px); letter-spacing:-0.01em;}
.eew-rentals-grid{display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--eew-line); margin-top:40px;}
.eew-rental{padding:34px 22px; border-right:1px solid var(--eew-line); border-bottom:1px solid var(--eew-line);}
.eew-rental:last-child{border-right:none;}
.eew-rental .eew-tag{font-size:11px; text-transform:uppercase; letter-spacing:.1em; color:var(--eew-clay-deep); font-weight:600;}
.eew-rental h3{font-family:var(--eew-serif); font-size:21px; font-weight:500; margin-top:10px;}
.eew-rental p{font-size:14px; color:#5B6472; margin-top:10px;}
@media(max-width:880px){ .eew-rentals-grid{grid-template-columns:repeat(2,1fr);} }

/* ===================================================================
   RESIDENCY CTA
=================================================================== */
.eew-residency{background:var(--eew-clay); color:var(--eew-cream); padding:80px 0;}
.eew-residency .eew-wrap{display:grid; grid-template-columns:1.2fr 0.8fr; gap:40px; align-items:center;}
.eew-residency .eew-eyebrow{color:rgba(255,255,255,0.85);}
.eew-residency h2{
  font-family:var(--eew-serif); font-weight:500; font-size:clamp(28px,3.2vw,38px);
  color:var(--eew-cream); letter-spacing:-0.01em; max-width:20ch;
}
.eew-residency p{margin-top:16px; max-width:46ch; color:rgba(255,255,255,0.85); font-size:16px;}
.eew-residency .eew-btn-primary{background:var(--eew-forest);}
.eew-residency .eew-btn-primary:hover{background:#0E1A2E;}
.eew-residency-cta{text-align:right;}
@media(max-width:880px){ .eew-residency .eew-wrap{grid-template-columns:1fr;} .eew-residency-cta{text-align:left;} }

/* ===================================================================
   INQUIRY / FORM — text left, shortcode card right
=================================================================== */
.eew-inquiry{position:relative; background:var(--eew-sand); padding:88px 0;}
.eew-inquiry::before{content:""; position:absolute; top:0; left:0; right:0; height:4px; background:var(--eew-clay);}
.eew-inquiry-grid{display:grid; grid-template-columns:0.95fr 1.05fr; gap:56px; align-items:start;}
.eew-inquiry-left{padding-top:28px;}
.eew-inquiry .eew-eyebrow{color:var(--eew-clay-deep);}
.eew-inquiry h2{
  font-family:var(--eew-serif); font-weight:500; font-size:clamp(30px,3.6vw,46px);
  line-height:1.1; letter-spacing:-0.01em; color:var(--eew-ink); max-width:14ch;
}
.eew-inquiry-left p{margin-top:20px; font-size:16px; line-height:1.6; color:#5B6472; max-width:42ch;}

.eew-inquiry-card{
  background:var(--eew-cream); border-radius:20px; padding:44px;
  border:1px solid var(--eew-line);
  box-shadow:0 30px 60px -30px rgba(28,39,51,0.25);
}
.eew-inquiry-placeholder{
  border:1px dashed rgba(28,39,51,0.25); border-radius:12px; padding:56px 24px;
  text-align:center; font-family:var(--eew-serif); font-style:italic; font-size:16px;
  color:#5B6472; background:var(--eew-sand);
}

/* Light-touch styling so third-party form shortcodes (CF7, WPForms, Gravity, etc.)
   inherit the same look without needing custom CSS from the form plugin. */
.eew-inquiry-card label{
  font-family:var(--eew-sans); font-size:11px; font-weight:600; text-transform:uppercase;
  letter-spacing:.08em; color:var(--eew-clay-deep); display:block; margin-bottom:8px;
}
.eew-inquiry-card input[type="text"],
.eew-inquiry-card input[type="email"],
.eew-inquiry-card input[type="tel"],
.eew-inquiry-card input[type="number"],
.eew-inquiry-card input[type="date"],
.eew-inquiry-card select,
.eew-inquiry-card textarea{
  width:100%; font-family:var(--eew-sans); font-size:15px; color:var(--eew-ink);
  background:var(--eew-sand); border:1px solid var(--eew-line); border-radius:8px;
  padding:12px 14px; box-sizing:border-box;
}
.eew-inquiry-card textarea{min-height:120px; resize:vertical;}
.eew-inquiry-card input:focus,
.eew-inquiry-card select:focus,
.eew-inquiry-card textarea:focus{outline:none; border-color:var(--eew-clay);}
.eew-inquiry-card input[type="submit"],
.eew-inquiry-card button[type="submit"]{
  font-family:var(--eew-sans); font-weight:600; font-size:14px; letter-spacing:.02em;
  background:var(--eew-clay); color:var(--eew-cream); border:none; border-radius:999px;
  padding:15px 28px; cursor:pointer; transition:background .15s ease;
}
.eew-inquiry-card input[type="submit"]:hover,
.eew-inquiry-card button[type="submit"]:hover{background:var(--eew-clay-deep);}

@media(max-width:880px){
  .eew-inquiry-grid{grid-template-columns:1fr;}
  .eew-inquiry-card{padding:28px;}
}
