/**
 * Contacto — short hero + split form/info + 3-item FAQ accordion.
 *
 * @package LovelyGolden
 */

.lg-contacto { background:var(--lg-bg-base, #FBF6EE); }

/* ==== HERO ==== */
.lg-contacto-hero { padding:clamp(2rem, 4vw, 4rem) var(--lg-gutter, 1.75rem) clamp(2rem, 3vw, 3rem); }
.lg-contacto-hero__grid { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr; gap:clamp(1.5rem, 4vw, 4rem); align-items:center; }
@media (max-width: 768px) { .lg-contacto-hero__grid { grid-template-columns:1fr; } }
.lg-contacto-hero__copy { display:flex; flex-direction:column; gap:.75rem; }
.lg-contacto-hero__eyebrow { margin:0; font-size:.8125rem; letter-spacing:.08em; text-transform:uppercase; color:var(--lg-secondary, #8B6135); }
.lg-contacto-hero__title { margin:0; font-family:var(--lg-font-display, serif); font-weight:500; font-size:clamp(2rem, 4vw, 3rem); line-height:1.1; font-variation-settings:"SOFT" 50, "opsz" 144; }
.lg-contacto-hero__lead { margin:0; color:var(--lg-ink-secondary, #5C4D3E); font-size:1.0625rem; max-width:38rem; line-height:1.6; }
.lg-contacto-hero__figure { margin:0; aspect-ratio:3/4; border-radius:var(--lg-radius-xl, 32px); overflow:hidden; background:var(--lg-bg-alt, #F5EDDD); transform:rotate(-1deg); box-shadow:var(--lg-shadow-card, 0 2px 12px rgba(45,36,26,.06)); }
@media (max-width: 768px) { .lg-contacto-hero__figure { transform:none; aspect-ratio:4/3; } }
.lg-contacto-hero__figure img { width:100%; height:100%; object-fit:cover; display:block; }

/* ==== SPLIT LAYOUT ==== */
.lg-contacto-layout { padding:clamp(1rem, 2vw, 2rem) var(--lg-gutter, 1.75rem) clamp(3rem, 5vw, 5rem); }
.lg-contacto-layout__grid { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1.4fr 1fr; gap:clamp(1.5rem, 3vw, 3rem); align-items:start; }
@media (max-width: 768px) { .lg-contacto-layout__grid { grid-template-columns:1fr; } }

/* ==== FORM ==== */
.lg-contacto-form { background:var(--lg-bg-card, #FFFFFF); border:1px solid var(--lg-border-subtle, #E8DCC7); border-radius:var(--lg-radius-lg, 22px); padding:1.5rem; }
.lg-contacto-form > .lg-h2 { margin:0 0 1rem; font-family:var(--lg-font-display, serif); font-weight:500; font-size:1.5rem; font-variation-settings:"SOFT" 50; }
.lg-contacto-form__form { display:flex; flex-direction:column; gap:.75rem; }
.lg-contacto-form__row { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; }
@media (max-width: 480px) { .lg-contacto-form__row { grid-template-columns:1fr; } }
.lg-contacto-form__field { display:flex; flex-direction:column; gap:.25rem; font-size:.875rem; color:var(--lg-ink-secondary, #5C4D3E); }
.lg-contacto-form__field input, .lg-contacto-form__field textarea, .lg-contacto-form__field select { padding:.75rem 1rem; border:1px solid var(--lg-border-strong, #C7B392); border-radius:var(--lg-radius-md, 14px); background:var(--lg-bg-base, #FBF6EE); font-family:var(--lg-font-body, sans-serif); font-size:1rem; color:var(--lg-ink-primary, #2D241A); }
.lg-contacto-form__field textarea { resize:vertical; min-height:120px; }
.lg-contacto-form__field input:focus, .lg-contacto-form__field textarea:focus, .lg-contacto-form__field select:focus { outline:2px solid var(--lg-brand-primary, #C28A3E); outline-offset:1px; border-color:transparent; }
.lg-contacto-form__check { display:flex; align-items:flex-start; gap:.5rem; font-size:.8125rem; color:var(--lg-ink-secondary, #5C4D3E); }
.lg-contacto-form__check input { margin-top:.2rem; accent-color:var(--lg-brand-primary, #C28A3E); }
.lg-contacto-form__check a { color:var(--lg-ink-primary, #2D241A); text-decoration:underline; text-underline-offset:3px; }
.lg-contacto-form__actions { display:flex; align-items:center; gap:.75rem; flex-wrap:wrap; margin-top:.25rem; }
.lg-contacto-form__status { margin:0; font-size:.875rem; color:var(--lg-ink-secondary, #5C4D3E); min-height:1.25rem; }
.lg-contacto-form__status.is-error { color:var(--lg-danger, #A8493A); }
.lg-contacto-form__status.is-success { color:var(--lg-success, #6F8B4A); }

/* ==== INFO ==== */
.lg-contacto-info { background:var(--lg-bg-alt, #F5EDDD); border-radius:var(--lg-radius-lg, 22px); padding:1.5rem; display:flex; flex-direction:column; gap:1rem; position:sticky; top:96px; }
@media (max-width: 768px) { .lg-contacto-info { position:static; } }
.lg-contacto-info__title { margin:0; font-family:var(--lg-font-display, serif); font-weight:500; font-size:1.125rem; font-variation-settings:"SOFT" 50; }
.lg-contacto-info__list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.75rem; }
.lg-contacto-info__item { display:flex; align-items:center; gap:.75rem; }
.lg-contacto-info__icon { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%; background:var(--lg-bg-card, #FFFFFF); color:var(--lg-brand-primary, #C28A3E); flex-shrink:0; border:1px solid var(--lg-border-subtle, #E8DCC7); }
.lg-contacto-info__label { margin:0; font-size:.75rem; letter-spacing:.04em; text-transform:uppercase; color:var(--lg-ink-muted, #8B7A66); }
.lg-contacto-info__value { display:block; margin:.125rem 0 0; color:var(--lg-ink-primary, #2D241A); font-weight:500; text-decoration:none; word-break:break-all; }
.lg-contacto-info__value:hover { color:var(--lg-brand-primary, #C28A3E); }
.lg-contacto-info__note { margin:.5rem 0 0; padding:.75rem 0 0; font-size:.8125rem; color:var(--lg-ink-secondary, #5C4D3E); border-top:1px solid var(--lg-border-subtle, #E8DCC7); }

/* ==== FAQ ==== */
.lg-contacto-faq { padding:clamp(2rem, 4vw, 4rem) var(--lg-gutter, 1.75rem) clamp(3rem, 5vw, 5rem); background:var(--lg-bg-alt, #F5EDDD); }
.lg-contacto-faq__inner { max-width:780px; margin:0 auto; }
.lg-contacto-faq__head { margin-bottom:1.5rem; display:flex; flex-direction:column; gap:.5rem; }
.lg-contacto-faq__lead { margin:0; color:var(--lg-ink-secondary, #5C4D3E); }
.lg-contacto-faq__lead a { color:var(--lg-ink-primary, #2D241A); text-decoration:underline; text-underline-offset:3px; }
.lg-contacto-faq__list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:.5rem; }
.lg-contacto-faq__item { background:var(--lg-bg-card, #FFFFFF); border:1px solid var(--lg-border-subtle, #E8DCC7); border-radius:var(--lg-radius-lg, 22px); padding:1rem 1.25rem; }
.lg-contacto-faq__q { display:flex; align-items:center; justify-content:space-between; gap:1rem; cursor:pointer; list-style:none; font-family:var(--lg-font-display, serif); font-weight:500; font-size:1.0625rem; font-variation-settings:"SOFT" 50; }
.lg-contacto-faq__q::-webkit-details-marker { display:none; }
.lg-contacto-faq__chevron { transition:transform var(--lg-dur-fast, 180ms) var(--lg-ease, ease); flex-shrink:0; }
.lg-contacto-faq__item[open] .lg-contacto-faq__chevron { transform:rotate(180deg); }
.lg-contacto-faq__a { padding-top:.5rem; color:var(--lg-ink-secondary, #5C4D3E); font-size:.9375rem; line-height:1.6; }
.lg-contacto-faq__a p { margin:0; }
