/* Scoped layout for the florist request block. */
#dlf-florist-choice {
    padding: 76px 0;
    border-top: 1px solid #e6e0de;
    background: #f7f6f4;
    color: #321b1a;
    font-family: Manrope, Arial, sans-serif;
    scroll-margin-top: 24px;
}
#dlf-florist-choice *,
#dlf-florist-choice *::before,
#dlf-florist-choice *::after { box-sizing: border-box; }
#dlf-florist-choice .dlf-florist-choice__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
    align-items: start;
    gap: clamp(28px, 5vw, 72px);
    width: min(100% - 60px, 1320px);
    margin: 0 auto;
}
#dlf-florist-choice .dlf-florist-choice__copy { padding-top: 16px; min-width: 0; }
#dlf-florist-choice .collection-kicker {
    display: block;
    margin: 0 0 14px;
    color: #ff4b5d;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.6;
    letter-spacing: .1em;
    text-transform: uppercase;
}
#dlf-florist-choice h2 {
    margin: 0 0 22px;
    font: 500 clamp(36px, 4vw, 54px)/1.08 Oswald, Arial, sans-serif;
    color: #321b1a;
    text-transform: uppercase;
}
#dlf-florist-choice .dlf-florist-choice__copy > p {
    max-width: 510px;
    margin: 0 0 25px;
    color: #7d7674;
    font-size: 15px;
    line-height: 1.8;
}
#dlf-florist-choice .dlf-florist-choice__copy ul {
    display: grid;
    gap: 14px;
    margin: 0 0 28px;
    padding: 0;
    list-style: none;
}
#dlf-florist-choice .dlf-florist-choice__copy li {
    position: relative;
    margin: 0;
    padding-left: 28px;
    color: #615655;
    font-size: 14px;
    line-height: 1.65;
}
#dlf-florist-choice .dlf-florist-choice__copy li::before {
    content: "✓";
    position: absolute;
    top: 0;
    left: 0;
    color: #ff4b5d;
    font-weight: 800;
}
#dlf-florist-choice .dlf-florist-choice__copy > a {
    color: #472b2b;
    font-size: 13px;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 4px;
}
#dlf-florist-choice .dlf-florist-choice__form {
    min-width: 0;
    padding: clamp(22px, 3vw, 36px);
    border: 1px solid #e6e0de;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 32px rgb(50 27 26 / 4%);
}
#dlf-florist-choice .dlf-choice-fields,
#dlf-florist-choice .dlf-bouquet-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 16px;
}
#dlf-florist-choice .dlf-choice-fields > label,
#dlf-florist-choice .dlf-bouquet-field {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-width: 0;
    margin: 0;
    gap: 8px;
    color: #472b2b;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
}
#dlf-florist-choice .dlf-bouquet-field--wide,
#dlf-florist-choice .dlf-bouquet-field[for="dlf-bouquet-email"] { grid-column: 1 / -1; }
#dlf-florist-choice select,
#dlf-florist-choice .dlf-bouquet-field input,
#dlf-florist-choice .dlf-bouquet-field textarea {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    height: 48px;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid #ded6d3;
    border-radius: 8px;
    outline: none;
    background: #fff;
    color: #321b1a;
    font: 400 14px/1.5 Manrope, Arial, sans-serif;
    box-shadow: none;
}
#dlf-florist-choice select { padding-right: 28px; }
#dlf-florist-choice .dlf-bouquet-field textarea { height: 120px; min-height: 120px; resize: vertical; }
#dlf-florist-choice input::placeholder,
#dlf-florist-choice textarea::placeholder { color: #9b9290; opacity: 1; }
#dlf-florist-choice select:focus-visible,
#dlf-florist-choice input:focus-visible,
#dlf-florist-choice textarea:focus-visible { border-color: #ff4b5d; outline: 3px solid #ffdfe4; outline-offset: 1px; }
#dlf-florist-choice .dlf-bouquet-form-title {
    margin: 27px 0 18px;
    color: #321b1a;
    font: 500 25px/1.2 Oswald, Arial, sans-serif;
    text-transform: uppercase;
}
#dlf-florist-choice form,
#dlf-florist-choice .feedback-body { margin: 0; padding: 0; }
#dlf-florist-choice .feedback-submit-button {
    display: block;
    width: 100%;
    min-height: 50px;
    height: auto;
    margin: 22px 0 0;
    padding: 14px 20px;
    border: 0;
    border-radius: 8px;
    background: #ff4b5d;
    color: #fff;
    font: 700 14px/1.5 Manrope, Arial, sans-serif;
    text-align: center;
    white-space: normal;
    cursor: pointer;
    box-shadow: none;
}
#dlf-florist-choice .feedback-submit-button:hover { background: #e43e50; }
#dlf-florist-choice .feedback-footer > br { display: none; }
#dlf-florist-choice .policy-info,
#dlf-florist-choice .dlf-choice-note {
    margin: 14px 0 0;
    color: #8b807d;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.65;
}
#dlf-florist-choice .policy-info a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
#dlf-florist-choice .errorMessage { color: #c32e40; font-size: 12px; font-weight: 400; }
@media (max-width: 900px) {
    #dlf-florist-choice { padding: 48px 0; }
    #dlf-florist-choice .dlf-florist-choice__grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    #dlf-florist-choice .dlf-florist-choice__copy { padding-top: 0; }
}
@media (max-width: 520px) {
    #dlf-florist-choice .dlf-florist-choice__grid { width: calc(100% - 32px); }
    #dlf-florist-choice .dlf-florist-choice__form { padding: 22px 18px; }
    #dlf-florist-choice .dlf-choice-fields,
    #dlf-florist-choice .dlf-bouquet-fields { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}
