/* ============================================================
   CAESAR'S ANGELS — LET'S BUILD PAGE (letsbuild.css)
   ============================================================ */

   .lb-wrap { min-height: 100dvh; display: grid; grid-template-columns: 1fr 1fr; }

   .lb-visual { position: sticky; top: 0; height: 100dvh; overflow: hidden; }
   .lb-visual img { width: 100%; height: 100%; object-fit: cover; object-position: center 20%; }
   .lb-visual__overlay {
     position: absolute; inset: 0;
     background: linear-gradient(to right, rgba(10,16,8,0) 60%, rgba(10,16,8,0.6) 100%),
                 linear-gradient(to top, rgba(10,16,8,0.55) 0%, transparent 40%);
   }
   
   .lb-content {
     background: var(--base);
     padding: calc(var(--nav-h) + clamp(2.5rem,5vw,4rem)) var(--gutter) clamp(3rem,6vw,5rem);
     display: flex; flex-direction: column; justify-content: center;
   }
   .lb-headline {
     font-family: var(--font-disp);
     font-size: clamp(1.8rem, 3.2vw, 2.8rem);
     font-weight: 400; line-height: 0.92;
     margin-bottom: 0.85rem;
   }
   .lb-tagline {
     font-family: var(--font-body);
     font-size: clamp(0.78rem, 1vw, 0.88rem);
     font-weight: 300;
     color: rgba(240,237,228,0.80);
     line-height: 1.8;
     margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
     max-width: 400px;
   }
   
   /* Select field — matches form-input underline style */
   .lb-select {
     appearance: none; -webkit-appearance: none;
     background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236B8060'/%3E%3C/svg%3E") no-repeat right 0.25rem center;
     border: none;
     border-bottom: 1px solid var(--border-2);
     padding: 0.8rem 1.5rem 0.8rem 0;
     color: var(--text-1);
     font-family: var(--font-body);
     font-size: 0.88rem;
     font-weight: 300;
     width: 100%;
     outline: none;
     cursor: pointer;
     transition: border-color 250ms;
   }
   .lb-select:focus { border-color: var(--forest-1); }
   .lb-select option { background: var(--surface); color: var(--text-1); }
   
   .lb-form { display: flex; flex-direction: column; gap: 1.75rem; max-width: 480px; }
   .lb-submit { display: inline-flex; align-items: center; gap: 0.7em; padding: 0; font-size: 0.65rem; font-weight: 400; letter-spacing: 0.24em; text-transform: uppercase; color: var(--gold); background: none; border: none; transition: color 250ms, gap 280ms; cursor: none; align-self: flex-start; }
   .lb-submit:hover { color: var(--gold-hi); gap: 1em; }
   .lb-submit__arr { transition: transform 300ms var(--ease-spr); display: inline-block; }
   .lb-submit:hover .lb-submit__arr { transform: translateX(4px); }
   
   .lb-success { display: none; padding: 2.5rem; border: 1px solid var(--border-g); font-family: var(--font-disp); font-size: 1.3rem; font-weight: 300; color: var(--label); line-height: 1.7; }
   .lb-success.visible { display: block; }
   
   .lb-contacts { margin-top: clamp(3rem,5vw,4.5rem); display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--border-1); border: 1px solid var(--border-1); max-width: 480px; }
   .lb-contact-item { background: var(--base); padding: 1rem 1.2rem; }
   .lb-contact-item__label { font-size: 0.65rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--label); margin-bottom: 0.35rem; display: block; }
   .lb-contact-item__val { font-size: 0.78rem; font-weight: 300; color: var(--text-2); transition: color 250ms; }
   a.lb-contact-item__val:hover { color: var(--text-1); }
   
   @media (max-width: 860px) {
     .lb-wrap { grid-template-columns: 1fr; }
     .lb-visual { height: 40vh; min-height: 260px; position: relative; }
     .lb-content { padding-top: 2.5rem; }
     .lb-contacts { grid-template-columns: 1fr; max-width: 100%; }
   }
   @media (max-width: 480px) {
     .lb-headline { font-size: clamp(2.2rem, 10vw, 3rem); }
   }
   
   /* Ensure form labels are clearly gold in Let's Build */
   .lb-form .form-label {
     color: var(--gold);
     font-size: 0.6rem;
     font-weight: 500;
     letter-spacing: 0.24em;
     text-transform: uppercase;
   }