body{padding-top:65px;}
.dc-contact-hero{padding:80px 24px 60px;background:var(--gray);text-align:center;}
.dc-contact-hero h1{font-size:clamp(32px,5vw,52px);font-weight:800;color:var(--black);margin-bottom:14px;line-height:1.15;}
.dc-contact-hero p{font-size:16px;color:var(--dark-gray);max-width:500px;margin:0 auto;line-height:1.75;}
.dc-contact-body{padding:60px 24px 80px;}
.dc-contact-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.6fr;gap:60px;align-items:start;}
.contact-info{display:flex;flex-direction:column;gap:24px;}
.contact-card{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius-lg);padding:24px;display:flex;gap:16px;align-items:flex-start;transition:all .3s;}
.contact-card:hover{border-color:var(--pink);box-shadow:0 8px 24px rgba(248,187,208,.2);}
.contact-card-icon{width:48px;height:48px;background:var(--soft-pink);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;transition:all .3s;}
.contact-card:hover .contact-card-icon{background:var(--pink);transform:rotate(-6deg);}
.contact-card h3{font-size:14px;font-weight:700;color:var(--black);margin-bottom:4px;}
.contact-card p{font-size:13px;color:var(--dark-gray);line-height:1.55;margin:0;}
.contact-card a{color:#c2697d;text-decoration:none;font-weight:600;font-size:13px;}
.contact-social-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
.contact-social-btn{display:inline-flex;align-items:center;gap:6px;background:var(--gray);color:var(--black);padding:7px 14px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;text-decoration:none;transition:all .2s;}
.contact-social-btn:hover{background:var(--pink);}
.contact-form-wrap{background:#fff;border:1.5px solid var(--border);border-radius:var(--radius-xl);padding:40px;}
.contact-form-wrap h2{font-size:22px;font-weight:800;color:var(--black);margin-bottom:6px;}
.contact-form-wrap .sub{font-size:13px;color:var(--mid-gray);margin-bottom:28px;}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.cf-field{display:flex;flex-direction:column;gap:5px;margin-bottom:16px;}
.cf-field label{font-size:12px;font-weight:700;color:var(--dark-gray);text-transform:uppercase;letter-spacing:.05em;}
.cf-input,.cf-textarea,.cf-select{width:100%;padding:12px 16px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:14px;color:var(--black);background:#fff;transition:border-color .2s;}
.cf-input:focus,.cf-textarea:focus,.cf-select:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 3px rgba(248,187,208,.2);}
.cf-textarea{resize:vertical;min-height:120px;line-height:1.6;}
.cf-select-wrap{position:relative;}
.cf-checkbox-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px;}
.cf-checkbox{width:16px;height:16px;accent-color:var(--black);cursor:pointer;flex-shrink:0;margin-top:2px;}
.cf-checkbox-row label{font-size:12px;color:var(--dark-gray);cursor:pointer;line-height:1.5;}
.cf-checkbox-row a{color:#c2697d;text-decoration:none;}
.btn-send{width:100%;padding:15px;background:var(--black);color:#fff;border:none;border-radius:var(--radius-md);font-size:15px;font-weight:700;cursor:pointer;transition:all .25s;display:flex;align-items:center;justify-content:center;gap:8px;}
.btn-send:hover{background:#222;transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.15);}
.contact-success{text-align:center;padding:40px 24px;}
.contact-faq{padding:60px 24px;background:var(--gray);}
.contact-faq-inner{max-width:760px;margin:0 auto;}
.contact-faq h2{font-size:28px;font-weight:800;color:var(--black);margin-bottom:8px;text-align:center;}
.contact-faq .sub{text-align:center;font-size:14px;color:var(--mid-gray);margin-bottom:32px;}
.cfaq-item{border:1.5px solid var(--border);border-radius:var(--radius-md);background:#fff;margin-bottom:10px;overflow:hidden;}
.cfaq-item.open{border-color:var(--pink);}
.cfaq-q{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:14px;font-weight:600;color:var(--black);gap:12px;}
.cfaq-icon{width:24px;height:24px;background:var(--gray);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .3s;flex-shrink:0;}
.cfaq-item.open .cfaq-icon{background:var(--pink);transform:rotate(45deg);}
.cfaq-item.open .cfaq-q{background:var(--soft-pink);}
.cfaq-a{max-height:0;overflow:hidden;transition:max-height .3s;}
.cfaq-a-inner{padding:0 20px 16px;font-size:13px;color:var(--dark-gray);line-height:1.7;}
.cfaq-item.open .cfaq-a{max-height:200px;}
@media(max-width:860px){.dc-contact-inner{grid-template-columns:1fr;}.cf-row{grid-template-columns:1fr;}}
@media(max-width:480px){.contact-form-wrap{padding:24px 20px;}}