.page-hero{position:relative;height:45vh;min-height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero .hero-overlay{position:absolute;inset:0;background:linear-gradient(rgba(10,22,40,.6),rgba(10,22,40,.8))}
.page-hero-content{position:relative;z-index:2;text-align:center;color:#fff}
.page-hero-content h1{text-transform:uppercase;animation:fadeInUp .8s ease forwards}
.breadcrumb{font-family:var(--font-heading);font-size:.85rem;color:rgba(255,255,255,.7);margin-top:12px;animation:fadeInUp .8s ease .2s forwards;opacity:0}
.breadcrumb a{color:var(--color-accent);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.section-header p{color:var(--color-text-light);max-width:560px;margin:0 auto}
.contact-section{padding:96px 0;background:var(--color-bg)}
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:56px}
.contact-form{background:#fff}
.form-group{margin-bottom:20px}
.form-group label{display:block;font-family:var(--font-heading);font-weight:600;font-size:.85rem;color:var(--color-primary);margin-bottom:6px;text-transform:uppercase;letter-spacing:1px}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:1px solid var(--color-border);border-radius:4px;font-family:var(--font-body);font-size:.95rem;color:var(--color-text);transition:border-color .3s ease,box-shadow .3s ease;background:#fff}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(201,168,76,.1)}
.form-group textarea{min-height:120px;resize:vertical}
.form-submit{background:var(--color-accent);color:var(--color-primary);border:none;padding:14px 40px;font-family:var(--font-heading);font-weight:700;font-size:1rem;cursor:pointer;border-radius:4px;text-transform:uppercase;letter-spacing:1px;transition:transform .3s ease,box-shadow .3s ease;width:100%}
.form-submit:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(201,168,76,.3)}
.form-msg{display:none;background:rgba(201,168,76,.1);border:1px solid var(--color-accent);color:var(--color-primary);padding:16px;border-radius:4px;margin-top:16px;font-family:var(--font-heading);font-weight:600;text-align:center}
.contact-info{display:flex;flex-direction:column;gap:28px}
.contact-info-item{display:flex;gap:16px;align-items:flex-start;padding:20px;border:1px solid var(--color-border);border-radius:4px;transition:border-color .3s ease,box-shadow .3s ease}
.contact-info-item:hover{border-color:var(--color-accent);box-shadow:0 4px 16px rgba(10,22,40,.05)}
.contact-info-icon{width:48px;height:48px;background:rgba(201,168,76,.1);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-info-icon .material-icons,.contact-info-icon .fab{font-size:22px;color:var(--color-accent)}
.contact-info-text h3{font-size:.95rem;color:var(--color-primary);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}
.contact-info-text p,.contact-info-text a{color:var(--color-text-light);font-size:.9rem;text-decoration:none}
.contact-info-text a:hover{color:var(--color-accent)}
@media(max-width:899px){.contact-grid{grid-template-columns:1fr}}
.map-section{padding:0 0 96px;background:var(--color-bg)}
.map-section iframe{border-radius:4px}
.faq-section{padding:96px 0;background:#f8f9fa}
.faq-list{max-width:800px;margin:0 auto}
.faq-item{border:1px solid var(--color-border);border-radius:4px;margin-bottom:12px;overflow:hidden;background:#fff}
.faq-btn{width:100%;text-align:left;background:none;border:none;padding:20px 24px;font-family:var(--font-heading);font-weight:600;font-size:1rem;color:var(--color-primary);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .3s ease}
.faq-btn:hover{background:rgba(201,168,76,.05)}
.faq-btn .material-icons{transition:transform .3s ease;color:var(--color-accent);font-size:24px}
.faq-btn[aria-expanded="true"] .material-icons{transform:rotate(180deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease;padding:0 24px}
.faq-answer p{padding-bottom:20px;color:var(--color-text-light);font-size:.93rem}
