.contact-hero{background:var(--color-bg-dark);color:var(--color-text-on-dark);padding:calc(120px + var(--space-xl)) 0 var(--space-2xl);position:relative;overflow:hidden}.contact-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h40v40H0z' fill='none'/%3E%3Cpath d='M0 40V0h1v40H0zM40 40V0h1v40h-1z' stroke='%23C9A84C' stroke-width='0.3' opacity='0.12'/%3E%3Cpath d='M0 0h40v1H0zM0 40h40v1H0z' stroke='%23C9A84C' stroke-width='0.3' opacity='0.12'/%3E%3C/svg%3E");background-size:40px 40px;pointer-events:none}.contact-hero__inner{position:relative;z-index:1;max-width:680px}.contact-hero__eyebrow{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent-gold);margin-bottom:var(--space-md)}.contact-hero__eyebrow:before,.contact-hero__eyebrow:after{content:"";display:block;width:24px;height:1px;background:var(--color-accent-gold);opacity:.6}.contact-hero__title{font-size:var(--text-h2);font-weight:700;letter-spacing:-.02em;line-height:1.2;margin-bottom:var(--space-md)}.contact-hero__sub{font-size:var(--text-body-lg);font-weight:300;color:var(--color-text-muted-dark);line-height:1.6}.contact-body{background:var(--color-bg-light);padding:var(--space-2xl) 0}.contact-layout{display:grid;grid-template-columns:1fr 380px;gap:var(--space-2xl);align-items:start}.contact-form-wrap{background:var(--color-bg-light-alt);border:1px solid var(--color-card-border);border-radius:var(--radius-lg);padding:clamp(var(--space-lg),4vw,var(--space-2xl))}.contact-form__title{font-size:var(--text-h3);font-weight:600;letter-spacing:-.01em;color:var(--color-text-primary);margin-bottom:var(--space-xs)}.contact-form__sub{font-size:var(--text-sm);color:var(--color-text-secondary);margin-bottom:var(--space-xl);line-height:1.6}.contact-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.form-field{display:flex;flex-direction:column;gap:var(--space-2xs)}.form-label{font-size:var(--text-sm);font-weight:500;color:var(--color-text-primary-alt);letter-spacing:.01em}.form-label span{color:var(--color-accent-gold);margin-left:2px}.form-input,.form-textarea{background:var(--color-bg-light);border:1px solid var(--color-card-border);border-radius:var(--radius-sm);padding:14px var(--space-md);font-family:var(--font-primary);font-size:var(--text-body);color:var(--color-text-primary);transition:border-color var(--duration-fast) var(--ease-smooth),box-shadow var(--duration-fast) var(--ease-smooth);width:100%}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-placeholder)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent-gold);box-shadow:0 0 0 3px var(--color-accent-gold-subtle)}.form-textarea{resize:vertical;min-height:140px;line-height:1.6}.form-input--invalid,.form-textarea--invalid{border-color:#dc354599;box-shadow:0 0 0 3px #dc354514}.form-error{display:block;font-size:var(--text-xs);color:#c0392b;min-height:1.2em;line-height:1.4}.contact-form__submit{width:100%;margin-top:var(--space-xs);padding:18px 40px;font-size:var(--text-body)}.contact-form--success{display:none}.contact-form-success{display:none;text-align:center;padding:var(--space-2xl) var(--space-lg)}.contact-form-success.is-visible{display:block}.contact-form-success__icon{width:56px;height:56px;background:var(--color-accent-gold-subtle);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-md);color:var(--color-accent-gold)}.contact-form-success__title{font-size:var(--text-h3);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-sm)}.contact-form-success__text{font-size:var(--text-body);color:var(--color-text-secondary);line-height:1.6}.contact-info{display:flex;flex-direction:column;gap:var(--space-md);position:sticky;top:calc(80px + var(--space-lg))}.contact-info-card{background:var(--color-bg-dark);border-radius:var(--radius-md);padding:var(--space-lg);color:var(--color-text-on-dark)}.contact-info-card__label{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-muted-dark);margin-bottom:var(--space-md)}.contact-info-item{display:flex;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-md)}.contact-info-item:last-child{margin-bottom:0}.contact-info-item__icon{width:40px;height:40px;background:var(--color-card-bg-dark);border:1px solid var(--color-card-border-dark);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-accent-gold)}.contact-info-item__label{font-size:var(--text-xs);color:var(--color-text-muted-dark);margin-bottom:2px}.contact-info-item__value{font-size:var(--text-sm);font-weight:500;color:var(--color-text-on-dark);transition:color var(--duration-fast) var(--ease-smooth)}a.contact-info-item__value:hover{color:var(--color-accent-gold)}.contact-cta-card{background:var(--color-accent-gold);border-radius:var(--radius-md);padding:var(--space-lg);text-align:center}.contact-cta-card__title{font-size:var(--text-body-lg);font-weight:700;color:#fff;margin-bottom:var(--space-xs);line-height:1.3}.contact-cta-card__sub{font-size:var(--text-sm);color:#fffc;margin-bottom:var(--space-lg);line-height:1.5}.contact-cta-card .btn-cta-inverse{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--color-accent-gold);font-weight:700;font-size:var(--text-sm);padding:12px 28px;border-radius:var(--radius-pill);border:none;cursor:pointer;transition:all .3s var(--ease-primary);text-decoration:none;white-space:nowrap}.contact-cta-card .btn-cta-inverse:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0003}@media(max-width:960px){.contact-layout{grid-template-columns:1fr;gap:var(--space-xl)}.contact-info{position:static;flex-direction:row;flex-wrap:wrap}.contact-info-card,.contact-cta-card{flex:1 1 280px}}@media(max-width:768px){.contact-hero{padding-top:calc(80px + var(--space-xl));padding-bottom:var(--space-xl)}.form-row{grid-template-columns:1fr}.contact-info{flex-direction:column}}
