/* 美广健康家全站基础样式 */
html { scroll-behavior: smooth; }
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; color: #26312d; background: #fff; font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif; }
img { max-width: 100%; height: auto; }
a { text-decoration: none; }
button, input, select, textarea { font: inherit; }
ul, ol { margin: 0; padding: 0; list-style: none; }
.site-nav, .site-nav li { list-style: none; margin: 0; padding: 0; }
.site-nav > li { display: block; }
.site-nav .is-current { color: #b45309; }
.site-nav .is-current::after { content: ''; display: block; height: 2px; margin-top: 4px; border-radius: 999px; background: #d97706; }
.site-shell { width: 100%; max-width: 1280px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
.section-space { padding-top: 80px; padding-bottom: 80px; }
.site-section { padding-top: 72px; padding-bottom: 72px; }
.site-section--soft { background: #f7f8f6; }
.site-section--dark { background: #18231f; color: #fff; }
.hero-media { transform: scale(1.04); animation: hero-breathe 12s ease-in-out infinite alternate; }
.hero-copy { animation: hero-copy-in .9s cubic-bezier(.22,1,.36,1) both; }
.reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s ease, transform .8s cubic-bezier(.22,1,.36,1); }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal-delay-1 { transition-delay: .1s; }
.reveal-delay-2 { transition-delay: .2s; }
.reveal-delay-3 { transition-delay: .3s; }
.premium-card { transition: transform .5s cubic-bezier(.22,1,.36,1), box-shadow .5s ease; }
.premium-card:hover { transform: translateY(-8px); box-shadow: 0 24px 60px rgba(24,35,31,.14); }
@keyframes hero-breathe { from { transform: scale(1.04); } to { transform: scale(1.1); } }
@keyframes hero-copy-in { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; } .reveal { opacity: 1; transform: none; } }
.eyou-empty { padding: 48px 20px; color: #9ca3af; text-align: center; }
.villa-service { min-height: 330px; transition: transform .25s ease, box-shadow .25s ease; }
.villa-service:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(45, 55, 45, .12); }

/* Header polish */
.site-nav > a { position: relative; white-space: nowrap; }
.site-nav > a:not(.text-amber-600)::after { content: ''; position: absolute; left: 0; right: 0; bottom: -8px; height: 2px; transform: scaleX(0); transform-origin: center; background: #d97706; transition: transform .2s ease; }
.site-nav > a:hover::after, .site-nav > a.text-amber-600::after { transform: scaleX(1); }

.line-clamp-2 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.line-clamp-3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.prose img { height: auto; max-width: 100%; }
.prose table { display: block; max-width: 100%; overflow-x: auto; }
.eyou-form-attr input:not([type="submit"]), .eyou-form-attr input[type="text"], .eyou-form-attr input[type="tel"], .eyou-form-attr input[type="email"], .eyou-form-attr input[type="number"], .eyou-form-attr select, .eyou-form-attr textarea { box-sizing: border-box; display: block; width: 100%; min-height: 44px; border: 1px solid #e5e7eb; border-radius: .75rem; background: #fff; padding: .75rem 1rem; outline: none; }
.eyou-form-attr input:focus, .eyou-form-attr select:focus, .eyou-form-attr textarea:focus { border-color: #d97706; box-shadow: 0 0 0 3px rgba(217,119,6,.12); }
.eyou-form-attr { margin: 0; }
.eyou-form-attr label { line-height: 1.5; }
.eyou-form-attr textarea { min-height: 120px; resize: vertical; }
.eyou-form-attr input[type="radio"], .eyou-form-attr input[type="checkbox"] { width: auto; min-height: auto; }
.eyou-form-attr .form-control { display: block !important; width: 100% !important; max-width: none !important; min-height: 48px !important; border: 1px solid #dfe4df !important; border-radius: 12px !important; background: #fff !important; padding: 13px 16px !important; color: #26312d !important; box-shadow: none !important; }
.eyou-form-attr textarea.form-control { min-height: 112px !important; resize: vertical; }
.eyou-form-attr .form-control:focus { border-color: #b68b45 !important; outline: none !important; box-shadow: 0 0 0 4px rgba(182,139,69,.12) !important; }
.eyou_form_attr .form-submit { display: block !important; width: 100% !important; min-height: 52px !important; border: 0 !important; border-radius: 999px !important; background: #1f332b !important; color: #fff !important; cursor: pointer !important; font-weight: 600 !important; letter-spacing: .08em; transition: background .2s ease, transform .2s ease; }
.eyou_form_attr .form-submit:hover { background: #b68b45 !important; transform: translateY(-1px); }
.premium-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 28px; }
.premium-form__field { min-width: 0; color: #46534d; font-size: 14px; line-height: 1.6; }
.premium-form__field:nth-child(n+3) { grid-column: 1 / -1; }
.premium-form__field.full { grid-column: 1 / -1; }
.premium-form__field input, .premium-form__field textarea, .premium-form__field select { display: block; width: 100%; max-width: none; margin-top: 8px; min-height: 48px; border: 1px solid #dfe4df; border-radius: 12px; background: #fff; padding: 13px 16px; color: #26312d; outline: none; }
.premium-form__field .eyou_form_attr { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; width: 100%; margin-top: 8px; }
.premium-form__field .eyou_form_text, .premium-form__field .eyou_form_textarea, .premium-form__field .eyou_form_phone { display: block !important; flex: 1 1 100% !important; width: 100% !important; max-width: 100% !important; min-height: 48px !important; margin: 0 !important; border: 1px solid #dfe4df !important; border-radius: 12px !important; background: #fff !important; padding: 13px 16px !important; color: #26312d !important; }
.premium-form__field #real_validate_input { flex: 1 1 180px !important; width: auto !important; }
.premium-form__field .eyou_form_verify_img { width: auto !important; height: 42px !important; margin: 0 !important; border-radius: 8px; }
.premium-form__field .eyou_form_verify_a { color: #9a7439; font-size: 13px; white-space: nowrap; }
.premium-form__field .eyou_form_phone_btn { width: auto !important; min-height: 48px !important; border: 0 !important; border-radius: 10px !important; background: #1f332b !important; color: #fff !important; padding: 0 16px !important; cursor: pointer; }
.premium-form__field textarea { min-height: 112px; resize: vertical; }
.premium-form__field input:focus, .premium-form__field textarea:focus, .premium-form__field select:focus { border-color: #b68b45; box-shadow: 0 0 0 4px rgba(182,139,69,.12); }
.premium-form__field img { max-width: 140px; height: auto; margin-top: 8px; }
.premium-form .eyou_form_attr { grid-column: 1 / -1; }
.contact-content p { margin: 0 0 14px; }
.contact-content img { max-width: 100%; height: auto; }
@media (max-width: 640px) { .premium-form { grid-template-columns: 1fr; } .premium-form__field:nth-child(n+3), .premium-form .eyou_form_attr { grid-column: auto; } }
