/* ============================================================================
   Costruire SRL - modulo di Residenza Gli Orti.

   Sta dentro il richiamo finale della pagina, su fondo scuro. Campi dal filo
   sottile, etichetta sempre visibile sopra (non solo il segnaposto, che
   sparisce appena si scrive), oro solo sul fuoco e sul bottone.
   ========================================================================= */

.orti-form{
    width: 100%;
    max-width: 640px;
    margin: 38px auto 0;
    display: grid;
    gap: 20px;
    text-align: left;
}

.orti-form-riga{
    display: grid;
    gap: 20px;
}
@media (min-width: 620px){
    .orti-form-riga{ grid-template-columns: 1fr 1fr }
}

.orti-campo{
    display: grid;
    gap: 9px;
}

.orti-campo > span{
    color: var(--primary, #c9a45c);
    font-family: var(--font-body, Inter, sans-serif);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.orti-form input[type="text"],
.orti-form input[type="email"],
.orti-form input[type="tel"],
.orti-form select,
.orti-form textarea{
    width: 100%;
    padding: 15px 16px;
    border: 1px solid rgba(201, 164, 92, .30);
    border-radius: 3px;
    background: rgba(255, 255, 255, .04);
    color: #f4f0e7;
    font-family: var(--font-body, Inter, sans-serif);
    font-size: 15.5px;
    line-height: 1.5;
    transition: border-color .35s ease, background .35s ease, box-shadow .35s ease;
}

.orti-form textarea{ resize: vertical; min-height: 118px }

.orti-form select{
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #c9a45c 50%),
                      linear-gradient(135deg, #c9a45c 50%, transparent 50%);
    background-position: calc(100% - 22px) 55%, calc(100% - 16px) 55%;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    padding-right: 46px;
}
.orti-form select option{ background: #1d1d1b; color: #f4f0e7 }

.orti-form input::placeholder,
.orti-form textarea::placeholder{ color: rgba(244, 240, 231, .38) }

.orti-form input:focus,
.orti-form select:focus,
.orti-form textarea:focus{
    outline: none;
    border-color: var(--primary, #c9a45c);
    background: rgba(255, 255, 255, .07);
    box-shadow: 0 0 0 3px rgba(201, 164, 92, .18);
}

.orti-privacy{
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-top: 2px;
    color: rgba(244, 240, 231, .72);
    font-family: var(--font-body, Inter, sans-serif);
    font-size: 13.5px;
    line-height: 1.6;
}
.orti-privacy input{
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: var(--primary, #c9a45c);
}
.orti-privacy a{ color: var(--primary, #c9a45c) }

.orti-form-azioni{
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
    margin-top: 8px;
}

.orti-form .orti-final-cta-primary{
    border: 0;
    cursor: pointer;
    font-family: var(--font-body, Inter, sans-serif);
}

.orti-form-nota{
    margin: 4px 0 0;
    color: rgba(244, 240, 231, .52);
    font-family: var(--font-body, Inter, sans-serif);
    font-size: 12.5px;
}

@media (pointer: coarse){
    .orti-form input,
    .orti-form select,
    .orti-form textarea{ min-height: 46px }
    .orti-form .orti-final-cta-primary,
    .orti-form .orti-final-cta-secondary{ min-height: 46px }
}

/* ==========================================================================
   Le metrature nelle schede delle tipologie.

   Oro, nel carattere dei titoli, sotto il nome della tipologia: e il
   numero che chi cerca casa cerca per primo, e prima non c era.
   La scheda diventa scura passandoci sopra, quindi il colore deve
   reggere su entrambi i fondi: l oro e l unico che lo fa.
   ======================================================================== */

/* Due classi, non una: .orti-property-card p (una classe + un tag) batte
   .orti-property-mq (una classe sola) e la metratura usciva a 15 px invece
   di 23. Si pareggia con la specificita, non con !important. */
.orti-property-card .orti-property-mq{
    margin: 2px 0 10px;
    /* NON oro: la scheda a riposo e bianca, e l oro su bianco da 2,35 a 1 di
       contrasto - sotto la soglia anche per un testo grande. Misurato.
       Testo scuro a riposo (16,9 a 1), oro solo quando la scheda diventa scura
       passandoci sopra (7,19 a 1). L oro resta l accento, non porta il peso. */
    color: var(--dark, #1d1d1b);
    transition: color .35s ease;
    font-family: var(--font-heading, Manrope, sans-serif);
    font-size: 1.45rem;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1;
}

.orti-property-card:hover .orti-property-mq,
.orti-property-card:focus-within .orti-property-mq{
    color: var(--primary, #c9a45c);
}

/* la nota: deve leggersi, non gridare */
.orti-property-nota{
    margin: 26px 0 0;
    padding-top: 18px;
    border-top: 1px solid rgba(201, 164, 92, .28);
    color: var(--text-soft, #625f59);
    font-family: var(--font-body, Inter, sans-serif);
    font-size: 14.5px;
    line-height: 1.7;
    max-width: 62ch;
}
