.pg-contact .hero{background:var(--dark);color:var(--white);text-align:center;justify-content:center;align-items:center;height:30vh;min-height:200px;padding:40px 24px;display:flex}.pg-contact .hero-title{font-family:var(--font-display);margin-bottom:12px;font-size:clamp(36px,5vw,56px);line-height:1}.pg-contact .hero-subtitle{color:#ffffffb3;max-width:480px;margin:0 auto;font-size:16px;line-height:1.6}.pg-contact .contact-section{background:var(--cream);padding:80px 24px}.pg-contact .contact-inner{max-width:720px;margin:0 auto}.pg-contact .contact-form-wrapper{background:var(--white);border:1px solid #0000000f;border-radius:16px;padding:40px;box-shadow:0 4px 20px #0000000f}.pg-contact .form-title{font-family:var(--font-heading);color:var(--text);margin-bottom:24px;font-size:24px;font-weight:700}.pg-contact .form-group{margin-bottom:20px}.pg-contact .form-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.pg-contact .form-group input,.pg-contact .form-group select,.pg-contact .form-group textarea{width:100%;font-family:var(--font-body);color:var(--text);background:var(--white);border:1px solid #0000001f;border-radius:8px;padding:14px 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}.pg-contact .form-group input:focus,.pg-contact .form-group select:focus,.pg-contact .form-group textarea:focus{border-color:var(--copper);outline:none;box-shadow:0 0 0 3px #c06b131a}.pg-contact .form-group textarea{resize:vertical}.pg-contact .form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%237c6853' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}.pg-contact .name-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.pg-contact .form-submit{background:var(--copper);color:var(--white);font-family:var(--font-heading);letter-spacing:1px;text-transform:uppercase;cursor:pointer;border:none;border-radius:8px;width:100%;padding:16px;font-size:15px;font-weight:700;transition:background .2s}.pg-contact .form-submit:hover{background:var(--copper-dark)}.pg-contact .form-success{background:var(--sage-bg);border:1px solid var(--sage);color:var(--text);border-radius:8px;margin-top:16px;padding:16px 20px;font-size:14px;line-height:1.5;display:none}.pg-contact .form-success.visible{display:block}.pg-contact .form-success a{color:var(--copper);text-decoration:underline}.pg-contact .contact-info-card{background:var(--white);border:1px solid #0000000f;border-radius:16px;padding:32px;box-shadow:0 4px 20px #0000000f}.pg-contact .info-section-title{font-family:var(--font-heading);color:var(--text);margin-bottom:20px;font-size:20px;font-weight:700}.pg-contact .info-location{margin-bottom:20px}.pg-contact .info-location-name{font-family:var(--font-heading);color:var(--text);margin-bottom:4px;font-size:16px;font-weight:700}.pg-contact .info-location-address{color:var(--text-light);margin-bottom:2px;font-size:14px;line-height:1.5}.pg-contact .info-location-hours{color:var(--copper);font-size:13px;font-weight:600}.pg-contact .info-divider{border:none;border-top:1px solid #00000014;margin:24px 0}.pg-contact .info-social-links{gap:12px;margin-bottom:24px;display:flex}.pg-contact .info-social-links a{background:var(--sage-bg);width:40px;height:40px;color:var(--text-light);border-radius:8px;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.pg-contact .info-social-links a:hover{background:var(--copper);color:var(--white)}.pg-contact .info-email-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-light);margin-bottom:4px;font-size:13px;font-weight:600}.pg-contact .info-email{color:var(--copper);font-size:16px;font-weight:600}.pg-contact .info-email:hover{text-decoration:underline}.pg-contact .visit-banner{background:var(--sage-bg);text-align:center;padding:80px 24px}.pg-contact .visit-banner-inner{max-width:1100px;margin:0 auto}.pg-contact .visit-banner-title{font-family:var(--font-display);color:var(--text);margin-bottom:40px;font-size:clamp(30px,4vw,44px);line-height:1}.pg-contact .visit-cards{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.pg-contact .visit-card{background:var(--white);text-align:center;border:1px solid #0000000f;border-radius:12px;padding:28px 24px;transition:transform .3s,box-shadow .3s;display:block;box-shadow:0 2px 12px #0000000a}.pg-contact .visit-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.pg-contact .visit-card-name{font-family:var(--font-heading);color:var(--text);margin-bottom:6px;font-size:20px;font-weight:700}.pg-contact .visit-card-address{color:var(--text-light);font-size:14px;line-height:1.5}.pg-contact .visit-card-hours{color:var(--copper);margin-top:8px;font-size:13px;font-weight:600;line-height:1.5}@media (max-width:1180px){.pg-contact .contact-inner{grid-template-columns:1fr}.pg-contact .visit-cards{grid-template-columns:1fr 1fr}}@media (max-width:640px){.pg-contact .hero{justify-content:flex-start;height:auto;min-height:200px;padding:96px 20px 32px}.pg-contact .hero-title{font-size:clamp(30px,5vw,56px)}.pg-contact .hero p{display:block}.pg-contact .contact-section{padding:60px 20px}.pg-contact .contact-form-wrapper{padding:28px 20px}.pg-contact .contact-info-card{padding:24px 20px}.pg-contact .name-grid{grid-template-columns:1fr}.pg-contact .visit-banner{padding:60px 20px}.pg-contact .visit-cards{grid-template-columns:1fr}}.pg-contact .fw-map{z-index:0;border-radius:16px;width:100%;height:420px;margin-top:32px;position:relative;overflow:hidden;box-shadow:0 8px 30px #0000001a}.pg-contact .fw-pin{background:0 0;border:none}.pg-contact .fw-pin-dot{background:var(--copper,#c06b13);border:3px solid #fff;border-radius:50% 50% 50% 0;width:22px;height:22px;display:block;transform:rotate(-45deg);box-shadow:0 2px 6px #00000059}.pg-contact .leaflet-popup-content{font-family:var(--font-body,sans-serif);font-size:13px;line-height:1.5}.pg-contact .leaflet-popup-content strong{font-family:var(--font-display,"Georgia",serif);color:var(--copper,#c06b13);font-size:15px}.pg-contact .leaflet-popup-content a{color:var(--copper,#c06b13);font-weight:700}@media (max-width:640px){.pg-contact .fw-map{height:320px}}
