.contact-page{background:#faf8f6;padding:100px 0 60px}.contact-hero{text-align:center;margin-bottom:32px;padding:0 16px}.contact-wrapper{grid-template-columns:1fr;gap:30px;padding:0 16px;display:grid}.contact-info{background:#fff;border:1px solid #f0ece8;border-radius:16px;padding:24px 20px}.contact-info h2{color:#1e1e1e;margin-bottom:8px;font-size:1.4rem}.contact-info>p{color:#666;margin-bottom:20px;font-size:.95rem}.contact-detail{border-bottom:1px solid #f0ece8;gap:14px;padding:12px 0;display:flex}.contact-detail:last-child{border-bottom:none}.contact-icon{color:#b8860b;min-width:18px;margin-top:3px;font-size:1rem}.contact-detail strong{color:#888;margin-bottom:2px;font-size:.8rem;display:block}.contact-detail p{color:#1e1e1e;font-size:.9rem}.contact-detail a{color:#b8860b;transition:color .3s}.contact-detail a:hover{color:#8b6508}.contact-map{border-radius:12px;margin-top:16px;overflow:hidden}.contact-map iframe{height:180px}.contact-form-wrapper{background:#fff;border:1px solid #f0ece8;border-radius:16px;padding:24px 20px}.contact-form-wrapper h2{color:#1e1e1e;margin-bottom:6px;font-size:1.4rem}.contact-form-wrapper>p{color:#666;margin-bottom:20px;font-size:.95rem}.contact-form .form-group{margin-bottom:16px}.contact-form label{color:#1e1e1e;margin-bottom:4px;font-size:.9rem;font-weight:600;display:block}.contact-form input,.contact-form textarea,.contact-form select{background:#faf8f6;border:2px solid #e8e4e0;border-radius:8px;width:100%;padding:10px 14px;font-family:inherit;font-size:.95rem;transition:border-color .3s}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:#b8860b;outline:none}.contact-form textarea{resize:vertical;min-height:80px}.contact-form .btn-primary{width:100%;padding:14px;font-size:1rem}.success-message{color:#155724;background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.95rem}@media (min-width:768px){.contact-page{padding:120px 0 80px}.contact-wrapper{gap:40px;padding:0}.contact-info{padding:30px 28px}.contact-info h2{font-size:1.6rem}.contact-form-wrapper{padding:30px 28px}.contact-form-wrapper h2{font-size:1.6rem}.contact-map iframe{height:220px}.contact-detail{padding:14px 0}}@media (min-width:1024px){.contact-wrapper{grid-template-columns:1fr 1.5fr;gap:50px}.contact-info,.contact-form-wrapper{padding:35px}.contact-info h2,.contact-form-wrapper h2{font-size:1.8rem}.contact-map iframe{height:250px}.contact-detail{padding:16px 0}.contact-detail p{font-size:.95rem}}@media (min-width:1400px){.contact-wrapper{gap:60px}}
