
body {
    font-family: 'Inter', sans-serif;
    background-color: #060911;
    color: #f3f4f6;
    overflow-x: hidden;
}

.glass-panel {
    background: rgba(15, 23, 42, 0.75);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.glass-card {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.01) 100%);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.glass-card:hover {
    border-color: rgba(0, 240, 255, 0.4);
    transform: translateY(-4px);
    box-shadow: 0 12px 30px -10px rgba(0, 240, 255, 0.15);
}

.scanline {
    background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,0) 50%, rgba(0, 240, 255, 0.1) 50%, rgba(0, 240, 255, 0.1));
    background-size: 100% 4px;
}

/* Headings wordmark fitting safeguard */
.font-headline {
    word-break: break-word;
}

/* Accent phrase styling */
[data-accent] em {
    font-style: normal;
    color: #00f0ff;
    text-shadow: 0 0 12px rgba(0, 240, 255, 0.4);
}

/* Hero rotator loop animation styling */
.rotator {
    display: inline-block;
    overflow: hidden;
    vertical-align: bottom;
}

.rotator-track {
    display: flex;
    flex-direction: column;
    animation: rotateWords 9s infinite;
}

@keyframes rotateWords {
    0%, 30% { transform: translateY(0%); }
    33%, 63% { transform: translateY(-33.33%); }
    66%, 96% { transform: translateY(-66.66%); }
    100% { transform: translateY(0%); }
}

/* Specific styling for injected enquiry form */
.enquiry form, .enquiry fieldset, .enquiry div {
    background: transparent !important;
}

.enquiry label {
    color: #cbd5e1 !important;
    -webkit-text-fill-color: #cbd5e1 !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    margin-bottom: 0.25rem !important;
    display: block !important;
}

.enquiry input, .enquiry textarea, .enquiry select {
    background-color: #0f172a !important;
    border: 1px solid #334155 !important;
    color: #f8fafc !important;
    -webkit-text-fill-color: #f8fafc !important;
    border-radius: 0.75rem !important;
    padding: 0.75rem 1rem !important;
    width: 100% !important;
    margin-bottom: 1rem !important;
    font-size: 0.875rem !important;
}

.enquiry input:focus, .enquiry textarea:focus, .enquiry select:focus {
    border-color: #00f0ff !important;
    outline: none !important;
}

.enquiry button, .enquiry [type=submit] {
    background: linear-gradient(to right, #00f0ff, #4f46e5) !important;
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 0.875rem 1.5rem !important;
    border-radius: 0.75rem !important;
    border: none !important;
    cursor: pointer !important;
    width: 100% !important;
    transition: opacity 0.2s ease !important;
}

.enquiry button:hover, .enquiry [type=submit]:hover {
    opacity: 0.9 !important;
}
