.contact-layout{display:grid;grid-template-columns:1fr;gap:0;max-width:1200px;margin:0 auto;overflow:hidden}@media(min-width:900px){.contact-layout{grid-template-columns:2fr 1fr}}.form-wrapper{padding:var(--space-lg)}.form-wrapper h2{font-size:2rem;margin-bottom:var(--space-xs);color:var(--text-primary)}.form-subtitle{color:var(--text-secondary);margin-bottom:var(--space-lg)}.honeypot{display:none!important}.contact-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-row{display:grid;grid-template-columns:1fr;gap:var(--space-md)}@media(min-width:600px){.form-row{grid-template-columns:1fr 1fr}}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;font-size:.9rem;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{background:#ffffff08;border:1px solid var(--border-color);color:var(--text-primary);padding:12px 16px;border-radius:var(--radius-md);font-family:var(--font-body);transition:all var(--transition-fast)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);background:#00d2ff05;box-shadow:0 0 0 2px #00d2ff1a}.form-group textarea{resize:vertical}.checkbox-container{display:flex;align-items:flex-start;gap:12px;cursor:pointer;position:relative}.checkbox-container input{opacity:0;position:absolute}.checkmark{width:20px;height:20px;border:1px solid var(--border-color);border-radius:4px;background:#ffffff08;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.checkbox-container:hover .checkmark{border-color:var(--accent-primary)}.checkbox-container input:checked~.checkmark{background:var(--accent-primary);border-color:var(--accent-primary)}.checkbox-container input:checked~.checkmark:after{content:"";width:5px;height:10px;border:solid #000;border-width:0 2px 2px 0;transform:rotate(45deg);margin-bottom:2px}.consent-text{font-size:.85rem;color:var(--text-secondary);line-height:1.4}.status-message{padding:12px;border-radius:var(--radius-md);font-size:.9rem;text-align:center}.status-message.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.status-message.success{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.status-message.sending{background:#ffffff0d;color:var(--text-secondary);border:1px solid var(--border-color)}.contact-sidebar{display:flex;min-width:0;background:#00d2ff0b;border-top:1px solid var(--border-color)}.booking-card{padding:var(--space-lg);width:100%;min-height:100%;display:flex;flex-direction:column}.booking-card-icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--accent-primary);background:#00d2ff0f}.booking-card-label{margin-bottom:6px;color:var(--accent-primary);font-size:.8rem;font-weight:700;text-transform:uppercase}.booking-card h2{margin-bottom:var(--space-sm);font-size:1.75rem}.booking-card-copy{color:var(--text-secondary);font-size:.95rem;line-height:1.65;margin-bottom:var(--space-lg)}.booking-card .booking-details{margin-top:auto}@media(min-width:900px){.contact-sidebar{position:relative;margin-left:32px;border-top:0;border-left:1px solid var(--border-color)}.contact-sidebar:before{content:"";position:absolute;top:0;left:-33px;width:34px;height:34px;background:linear-gradient(135deg,transparent 49%,rgba(0,210,255,.045) 50%);border-bottom:1px solid var(--border-color)}}.booking-details{display:grid;gap:var(--space-sm);margin:0 0 var(--space-lg)}.booking-details>div{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border-color)}.booking-details dt{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.9rem}.booking-details dd{margin:0;color:var(--text-primary);font-size:.9rem;font-weight:600}.w-full{width:100%;display:flex;justify-content:center;align-items:center;gap:8px}.booking-coming-soon:disabled{cursor:not-allowed;opacity:.65}.booking-status{margin:var(--space-sm) 0 0;text-align:center;color:var(--text-secondary);font-size:.8rem}
