/* ═══════════════════════════════════════════════════════════════════════
   IRONOPS — Design System
   Aesthetic: Industrial Precision
   ═══════════════════════════════════════════════════════════════════════ */

/* ─── SELF-HOSTED FONTS ─────────────────────────────────────────────── */
/* Exo 2 — variable font, weights 400-800, latin + latin-ext (Romanian) */
@font-face {
    font-family: 'Exo 2';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('/fonts/exo2-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Exo 2';
    font-style: normal;
    font-weight: 400 800;
    font-display: swap;
    src: url('/fonts/exo2-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* DM Sans — variable font, weights 400-500, latin + latin-ext */
@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 400 500;
    font-display: swap;
    src: url('/fonts/dmsans-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 400 500;
    font-display: swap;
    src: url('/fonts/dmsans-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ─── DESIGN TOKENS ─────────────────────────────────────────────────── */
:root {
    --iron-navy-deep:  #1a1a2e;
    --iron-navy-mid:   #16213e;
    --iron-navy-light: #0f3460;
    --iron-blue:       #3273dc;
    --iron-blue-light: #4a8aea;
    --iron-amber:      #f5a623;
    --iron-amber-dark: #d4891a;
    --iron-text:       #2d3748;
    --iron-muted:      #718096;
    --iron-surface:    #f8fafc;
    --iron-card-bg:    #ffffff; /* card/box background — dark mode overrides to dark surface */
    --iron-border:     #e8edf5;

    --font-heading: 'Exo 2', sans-serif;
    --font-body:    'DM Sans', sans-serif;

    --radius-md:   8px;
    --radius-lg:  14px;
    --radius-xl:  20px;
    --radius-pill: 100px;
    --shadow-sm:  0 2px 8px rgba(0,0,0,0.07);
    --shadow-md:  0 8px 24px rgba(50,115,220,0.12);
    --shadow-lg:  0 16px 40px rgba(50,115,220,0.18);
    --shadow-amber: 0 6px 20px rgba(245,166,35,0.35);
    --transition: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ─── BASE ───────────────────────────────────────────────────────────── */
html { scroll-behavior: smooth; }

body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    font-family: var(--font-body);
    color: var(--iron-text);
    -webkit-font-smoothing: antialiased;
}

#wrapper { flex: 1; }

/* ─── TYPOGRAPHY ─────────────────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6, .title {
    font-family: var(--font-heading) !important;
    letter-spacing: -0.02em;
}

.subtitle { font-family: var(--font-body) !important; }

p { margin-top: 0.5em; }
ul, ol { padding-left: 1em; margin-top: 0.5em; list-style: inherit; }
ol { list-style: auto; }

/* ─── EYEBROW TEXT ───────────────────────────────────────────────────── */
.section-eyebrow {
    display: inline-block;
    font-family: var(--font-body);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--iron-blue);
    background: rgba(50,115,220,0.08);
    border: 1px solid rgba(50,115,220,0.18);
    border-radius: var(--radius-pill);
    padding: 0.3em 0.9em;
    margin-bottom: 1rem;
}

/* ─── NAVBAR ─────────────────────────────────────────────────────────── */
.navbar {
    box-shadow: var(--shadow-sm);
    font-family: var(--font-body);
    font-weight: 500;
}
.navbar-brand img { transition: opacity var(--transition); }
.navbar-brand img:hover { opacity: 0.85; }

.navbar-logo {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}
.navbar-theme-toggle {
    cursor: pointer;
    background: none;
    border: none;
    font: inherit;
    color: inherit;
    padding: 0.5rem 0.75rem;
}

/* Language + toggle labels — hidden on desktop, visible on mobile */
.lang-label { margin-left: 0.5rem; }
.toggle-label { margin-left: 0.5rem; }
@media (min-width: 1024px) {
    .lang-label,
    .toggle-label { display: none; }
    .navbar-menu-utils { display: contents; }
}

/* ─── MOBILE MENU ───────────────────────────────────────────────────── */
@media (max-width: 1023px) {
    .navbar-menu .navbar-item,
    .navbar-menu .navbar-link {
        min-height: 48px;
        padding: 0.75rem 1.25rem;
        font-size: 1rem;
        display: flex;
        align-items: center;
    }
    .navbar-menu-utils {
        border-top: 1px solid var(--iron-border);
        margin-top: 0.5rem;
        padding-top: 0.5rem;
    }
}

/* ─── HERO ───────────────────────────────────────────────────────────── */
.hero-ironops {
    background: linear-gradient(135deg,
        var(--iron-navy-deep)  0%,
        var(--iron-navy-mid)   55%,
        var(--iron-navy-light) 100%);
    position: relative;
    overflow: hidden;
}

/* Grid overlay */
.hero-ironops::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,0.032) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.032) 1px, transparent 1px);
    background-size: 48px 48px;
    pointer-events: none;
}

/* Glow accent top-right */
.hero-ironops::after {
    content: '';
    position: absolute;
    top: -20%; right: -10%;
    width: 55%; height: 80%;
    background: radial-gradient(ellipse, rgba(50,115,220,0.18) 0%, transparent 70%);
    pointer-events: none;
}

/* Canvas particle animation sits above decorative pseudo-elements but below content */
.hero-canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.hero-ironops .hero-body { position: relative; z-index: 2; }

/* ─── HERO ANIMATIONS ────────────────────────────────────────────────── */
@keyframes fadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.hero-ironops .hero-title {
    animation: fadeUp 0.7s ease both;
    animation-delay: 0.1s;
    line-height: 1.1;
    font-size: clamp(2rem, 5vw, 3.4rem);
}
.hero-ironops .hero-subtitle {
    animation: fadeUp 0.7s ease both;
    animation-delay: 0.25s;
    color: var(--iron-muted);
    max-width: 520px;
    font-size: 1.15rem;
    line-height: 1.7;
}
.hero-ironops .hero-buttons  { animation: fadeUp 0.7s ease both; animation-delay: 0.4s; }
.hero-ironops .hero-panel    { animation: fadeIn 0.9s ease both; animation-delay: 0.5s; }

/* Page hero: right-side image — absolute, full height, pixelated + dissolve */
.hero-page-img-wrap {
    position: absolute;
    right: 0; top: 0; bottom: 0;
    width: auto;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    pointer-events: none;
    z-index: 1;
}
.hero-page-img,
.hero-page-img-wrap canvas {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: grayscale(80%) brightness(0.65) sepia(60%) hue-rotate(180deg) saturate(2.5);
    opacity: 0.55;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,0.95) 90%);
    mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,0.95) 90%);
    animation: fadeIn 1s ease both;
    animation-delay: 0.4s;
}
/* Text col: keep text on left half when image is present */
.hero-text-half { max-width: 52%; }
@media (max-width: 768px) {
    .hero-page-img-wrap { display: none; }
    .hero-text-half { max-width: 100%; }
}

/* Superscript/suffix in stat number (e.g. the "+" in "30+") */
.stat-suffix { font-size: 1.6rem; }

/* ─── HERO STAT PANEL ────────────────────────────────────────────────── */
.hero-stat-panel {
    background: var(--iron-surface);
    border: 1px solid #c8d6e8;
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-sm);
    padding: 2.25rem 2rem;
    max-width: 320px;
    margin-left: auto;
}

.hero-stat {
    padding: 1.25rem 0;
}
.hero-stat:first-child { padding-top: 0; }
.hero-stat:last-child  { padding-bottom: 0; }
.hero-stat + .hero-stat {
    border-top: 1px solid var(--iron-border);
}

.hero-stat-number {
    font-family: var(--font-heading);
    font-size: 2.6rem;
    font-weight: 800;
    color: var(--iron-amber);
    line-height: 1;
    margin-bottom: 0.3rem;
}

.hero-stat-label {
    font-size: 0.8rem;
    color: var(--iron-muted);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 500;
}

[data-theme="dark"] .hero-stat-panel {
    background: rgba(255,255,255,0.06);
    border-color: rgba(255,255,255,0.12);
}
[data-theme="dark"] .hero-stat + .hero-stat {
    border-top-color: rgba(255,255,255,0.08);
}
[data-theme="dark"] .hero-stat-label {
    color: rgba(255,255,255,0.5);
}

/* ─── PAGE HERO (inner pages — about, abonamente, proiecte) ─────────── */
.page-hero-title { max-width: 640px; }
.page-hero-subtitle {
    color: var(--iron-muted);
    max-width: 560px;
    font-size: 1.05rem;
    line-height: 1.7;
    margin-top: 0.75rem;
}

/* ─── SECTION SURFACE BACKGROUNDS ───────────────────────────────────── */
/* Use these instead of inline style="background:#f8fafc" */
.section-surface {
    background: var(--iron-surface);
}
.section-surface-bottom {
    background: var(--iron-surface);
    border-bottom: 1px solid var(--iron-border);
}
.section-surface-bordered {
    background: var(--iron-surface);
    border-top: 1px solid var(--iron-border);
    border-bottom: 1px solid var(--iron-border);
}

/* ─── CTA SUBTITLE ───────────────────────────────────────────────────── */
.cta-subtitle {
    color: var(--iron-muted);
    max-width: 560px;
    margin: 0 auto 2rem;
}

/* ─── STORY / PROSE CONTENT ──────────────────────────────────────────── */
.story-content {
    font-size: 1.05rem;
    line-height: 1.75;
}
.story-content p:first-child {
    font-size: 1.15rem;
    color: var(--iron-text);
    border-left: 3px solid var(--iron-amber);
    padding-left: 1rem;
    margin-bottom: 1.5rem;
}

/* ─── SERVICE CARDS ──────────────────────────────────────────────────── */
.service-box {
    height: 100%;
    border-radius: var(--radius-lg);
    border: 1px solid var(--iron-border);
    padding: 1.75rem !important;
    text-align: left !important;
    position: relative;
    overflow: hidden;
    transition: box-shadow var(--transition), transform var(--transition), border-color var(--transition);
}

/* Animated bottom accent line */
.service-box::before {
    content: '';
    position: absolute;
    bottom: 0; left: 0;
    width: 100%; height: 3px;
    background: linear-gradient(90deg, var(--iron-blue), var(--iron-amber));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform var(--transition);
}

.service-box:hover {
    box-shadow: var(--shadow-lg);
    transform: translateY(-5px);
    border-color: rgba(50,115,220,0.22);
}
.service-box:hover::before { transform: scaleX(1); }

/* Icon badge — replaces Bulma .icon */
.service-icon-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(50,115,220,0.14), rgba(50,115,220,0.06));
    border: 1px solid rgba(50,115,220,0.16);
    font-size: 1.3rem;
    color: var(--iron-blue);
    margin-bottom: 1.1rem;
    transition: background var(--transition), border-color var(--transition), color var(--transition);
}
.service-box:hover .service-icon-badge {
    background: linear-gradient(135deg, rgba(50,115,220,0.22), rgba(50,115,220,0.1));
    border-color: rgba(50,115,220,0.32);
    color: var(--iron-blue-light);
}

.service-title {
    font-family: var(--font-heading) !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    margin-bottom: 0.5rem !important;
    letter-spacing: -0.01em;
}

.service-desc {
    font-size: 0.9rem;
    color: var(--iron-muted);
    line-height: 1.65;
    flex: 1;
}

.service-link {
    display: inline-block;
    margin-top: 1.1rem;
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--iron-blue);
    letter-spacing: 0.01em;
    transition: color var(--transition), gap var(--transition);
}
.service-link::after { content: ' →'; }
.service-box:hover .service-link { color: var(--iron-blue-light); }

.service-card-badge {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 0.18em 0.6em;
    border-radius: 99px;
    background: rgba(50, 115, 220, 0.1);
    color: var(--iron-blue);
    border: 1px solid rgba(50, 115, 220, 0.2);
    margin-bottom: 0.8rem;
}
[data-theme="dark"] .service-card-badge {
    background: rgba(74, 138, 234, 0.15);
    color: var(--iron-blue-light);
    border-color: rgba(74, 138, 234, 0.25);
}

/* ─── WHY CARDS ──────────────────────────────────────────────────────── */
.section-why { background: var(--iron-surface); }

.why-card {
    background: var(--iron-card-bg);
    border-radius: var(--radius-lg);
    border: 1px solid var(--iron-border);
    padding: 2rem 1.5rem 1.75rem;
    height: 100%;
    text-align: center;
    transition: box-shadow var(--transition), transform var(--transition), border-color var(--transition);
}
.why-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-4px);
    border-color: rgba(50,115,220,0.18);
}

.why-icon-wrap {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--iron-amber), var(--iron-amber-dark));
    box-shadow: var(--shadow-amber);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.25rem;
    color: white;
    font-size: 1.4rem;
    transition: transform var(--transition), box-shadow var(--transition);
}
.why-card:hover .why-icon-wrap {
    transform: scale(1.1);
    box-shadow: 0 8px 28px rgba(245,166,35,0.45);
}

.why-card .why-title {
    font-family: var(--font-heading) !important;
    font-size: 0.98rem;
    font-weight: 700;
    margin-bottom: 0.6rem;
    color: var(--iron-text);
}
.why-card .why-desc {
    font-size: 0.88rem;
    color: var(--iron-muted);
    line-height: 1.65;
    margin-top: 0;
}

/* ─── SOCIAL PROOF STRIP ──────────────────────────────────────────── */
.section-proof {
    background: var(--iron-surface);
}

.proof-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 0;
}

.proof-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(245,166,35,0.12), rgba(245,166,35,0.05));
    border: 1px solid rgba(245,166,35,0.18);
    color: var(--iron-amber);
    font-size: 1.1rem;
}

.proof-text {
    font-size: 0.95rem;
    color: var(--iron-text);
    line-height: 1.65;
    margin: 0;
}

/* ─── PRICING TEASER ──────────────────────────────────────────────── */
.pricing-teaser {
    background: var(--iron-surface);
    border-top: 1px solid var(--iron-border);
    border-bottom: 1px solid var(--iron-border);
}

.pricing-teaser-title {
    margin-bottom: 0.5rem !important;
}

.pricing-teaser-lead {
    font-size: 1.05rem;
    color: var(--iron-muted);
    margin-bottom: 0.25rem;
}

.pricing-teaser-amount {
    font-family: var(--font-heading);
    font-size: 3.5rem;
    font-weight: 800;
    color: var(--iron-blue);
    letter-spacing: -0.04em;
    line-height: 1.1;
    margin: 0.5rem 0;
}

.pricing-teaser-unit {
    font-size: 1.2rem;
    font-weight: 400;
    color: var(--iron-muted);
    letter-spacing: 0;
}

.pricing-teaser-detail {
    font-size: 0.95rem;
    color: var(--iron-muted);
    max-width: 480px;
    margin: 0 auto 1.75rem;
}

/* ─── HOMEPAGE PRICING (index.html specific) ────────────────────────── */
.pricing-box { height: 100%; }
.pricing-list {
    list-style: none;
    padding: 0;
    text-align: left;
    font-size: 0.9rem;
}
.pricing-list li { padding: 0.3rem 0; }
.pricing-unit { font-weight: 400; }
.pricing-tag {
    font-size: 0.72rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-weight: 700;
}
.pricing-number--sm { font-size: 1.6rem; }

/* ─── PRICING ────────────────────────────────────────────────────────── */
.box {
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    transition: box-shadow var(--transition);
}
.box:hover { box-shadow: var(--shadow-md); }

.pricing-featured {
    border: 2px solid var(--iron-blue) !important;
    box-shadow: var(--shadow-md) !important;
    position: relative;
}
.pricing-featured:hover { box-shadow: var(--shadow-lg) !important; }

.pricing-number {
    font-family: var(--font-heading);
    font-size: 2.4rem;
    font-weight: 800;
    color: var(--iron-blue);
    letter-spacing: -0.03em;
    line-height: 1.1;
}

/* ─── PLAN / INFRA PRICE — TEXT VARIANT ─────────────────────────────── */
/* Applied when price_text is set (e.g. "La cerere") instead of a number */
.plan-price--text {
    font-size: 1.5rem;
    padding-top: 0.3rem;
}
.infra-price--text {
    font-size: 1.4rem;
    padding-top: 0.2rem;
}

/* ─── BUTTONS ────────────────────────────────────────────────────────── */
.button {
    font-family: var(--font-body);
    font-weight: 500;
    border-radius: var(--radius-md);
    transition: transform var(--transition), box-shadow var(--transition), background var(--transition);
}
.button:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.15);
}

.button.is-warning {
    background-color: var(--iron-amber);
    border-color: var(--iron-amber);
    color: var(--iron-navy-deep);
    font-weight: 700;
}
.button.is-warning:hover {
    background-color: var(--iron-amber-dark);
    border-color: var(--iron-amber-dark);
}

/* ─── CONTACT PAGE ───────────────────────────────────────────────────── */
.contact-section { padding-top: 4rem; padding-bottom: 5rem; }

/* Status indicator */
.contact-status {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    font-family: var(--font-body);
    font-size: 0.85rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #48bb78;
    margin-bottom: 1.8rem;
}

.contact-pulse {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #48bb78;
    box-shadow: 0 0 0 0 rgba(72, 187, 120, 0.5);
    animation: contactPulse 2s ease-in-out infinite;
}

@keyframes contactPulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(72, 187, 120, 0.45); }
    50%      { box-shadow: 0 0 0 8px rgba(72, 187, 120, 0); }
}

/* Email — THE focal point */
.contact-email {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-family: var(--font-heading);
    font-size: clamp(1.5rem, 3vw, 2.4rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--iron-amber);
    text-decoration: none;
    transition: var(--transition);
    padding-bottom: 0.8rem;
    border-bottom: 2px solid rgba(245, 166, 35, 0.15);
}

.contact-email:hover {
    color: var(--iron-amber);
    text-shadow: 0 0 30px rgba(245, 166, 35, 0.35);
    border-bottom-color: var(--iron-amber);
}

.contact-email-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    min-width: 52px;
    border-radius: var(--radius-lg);
    background: rgba(245, 166, 35, 0.1);
    color: var(--iron-amber);
    font-size: 1.2rem;
    transition: var(--transition);
}

.contact-email:hover .contact-email-icon {
    background: rgba(245, 166, 35, 0.18);
    box-shadow: var(--shadow-amber);
}

/* Right column — detail rows */
.contact-details {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.contact-detail {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.1rem 0;
    border-bottom: 1px solid var(--iron-border);
}

.contact-detail:first-child { border-top: 1px solid var(--iron-border); }

.contact-detail-label {
    font-size: 0.88rem;
    color: var(--iron-muted);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.contact-detail-label i { font-size: 0.82rem; width: 16px; text-align: center; }

.contact-detail-value {
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: 0.95rem;
}

.contact-detail-highlight {
    color: var(--iron-amber);
    font-size: 1.15rem;
    font-weight: 700;
}

/* Sidebar variant — smaller email for narrow column */
.contact-email--sidebar {
    font-size: clamp(1rem, 1.8vw, 1.3rem);
    margin-bottom: 1.5rem;
}

/* ─── CONTACT FORM ────────────────────────────────────────────────────── */
.contact-form-eyebrow {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--iron-muted);
    margin-bottom: 1.25rem;
}

/* Two-column field grid */
.form-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 1.25rem;
}

/* Bulma label sizing */
.contact-form .label,
#contact-form .label {
    font-size: 0.88rem;
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.form-required { color: var(--iron-blue); margin-left: 0.1em; }

/* Submit button */
.form-submit-btn {
    margin-top: 0.5rem;
    font-weight: 600;
    letter-spacing: 0.02em;
}

/* Error feedback */
.form-feedback--error {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.88rem;
    color: #e53e3e;
    background: rgba(229, 62, 62, 0.08);
    border: 1px solid rgba(229, 62, 62, 0.25);
    border-radius: var(--radius-md);
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
}

/* Success state */
.form-success {
    text-align: center;
    padding: 3rem 1rem;
}
.form-success-icon {
    font-size: 3rem;
    color: #48bb78;
    margin-bottom: 1rem;
}
.form-success-title {
    font-family: var(--font-heading);
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--iron-text);
    margin-bottom: 0.5rem;
}
.form-success-text {
    color: var(--iron-muted);
    font-size: 0.95rem;
}

/* Inquiry banner */
.inquiry-banner {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.88rem;
    font-weight: 500;
    color: var(--iron-amber-dark);
    background: rgba(245, 166, 35, 0.08);
    border: 1px solid rgba(245, 166, 35, 0.25);
    border-radius: var(--radius-md);
    padding: 0.7rem 1rem;
    margin-bottom: 1.25rem;
}
.inquiry-banner i { color: var(--iron-amber); flex-shrink: 0; }
.inquiry-banner strong { color: var(--iron-amber-dark); }

/* Contact sidebar */
.contact-sidebar { padding-top: 0.5rem; }

/* Contact: What happens next steps */
.contact-step { padding: 1rem 0.75rem; }
.contact-step-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(50,115,220,0.12), rgba(50,115,220,0.05));
    border: 1px solid rgba(50,115,220,0.18);
    color: var(--iron-blue);
    font-size: 1.1rem;
    font-weight: 700;
    font-family: var(--font-heading);
    margin-bottom: 0.75rem;
}
.contact-step-title {
    font-weight: 700;
    font-size: 1rem;
    margin-bottom: 0.5rem;
}

/* Responsive: stack on mobile */
@media (max-width: 768px) {
    .contact-primary { margin-bottom: 2.5rem; }
    .form-grid-2 { grid-template-columns: 1fr; gap: 0; }
    .contact-sidebar { margin-top: 2.5rem; }

    .contact-email {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.8rem;
        font-size: 1.3rem;
        word-break: break-all;
    }

    /* Stats panel — horizontal strip on mobile */
    .hero-stat-panel {
        display: flex;
        gap: 1rem;
        max-width: 100%;
        padding: 1.5rem;
        margin-top: 2rem;
        margin-left: 0;
    }
    .hero-stat {
        flex: 1;
        text-align: center;
        padding: 0 !important;
    }
    .hero-stat + .hero-stat {
        border-top: none;
        border-left: 1px solid var(--iron-border);
        padding-left: 1rem !important;
    }
    .hero-stat-number {
        font-size: 1.8rem;
    }

    /* Footer — stack and center on mobile */
    footer .column {
        text-align: center !important;
        margin-bottom: 1.5rem;
    }
    .footer-contact { text-align: center; }
    .footer-icon-right { justify-content: center; }
}

/* ─── FOOTER ─────────────────────────────────────────────────────────── */
/* Footer is always dark regardless of light/dark mode */
footer.footer {
    font-family: var(--font-body);
    background: var(--iron-navy-deep);
    color: #a0aec0;
}
footer.footer a {
    color: #a0aec0;
    transition: color var(--transition);
}
footer.footer a:hover { color: #ffffff !important; }
.footer-links { list-style: none; }
.footer-contact { text-align: right; }
.footer-icon-right { justify-content: flex-end; }
.footer-phone { margin-top: 4px; }
.footer-copyright { color: #718096; }

/* ─── CALC EXAMPLE — UTILITIES ──────────────────────────────────────── */
/* Subtitle line below the calc-example-title */
.calc-example-subtitle {
    font-size: 0.9rem;
    margin-top: 0.2rem;
}
/* Light-weight note inside a calc row label */
.calc-label-note { font-weight: 400; }
/* Small note paragraph below the calc rows */
.calc-note { font-size: 0.85rem; }

/* ─── ABONAMENTE — INCLUDED CARDS ───────────────────────────────────── */
.included-card {
    background: white;
    border-radius: var(--radius-lg);
    border: 1px solid var(--iron-border);
    padding: 1.5rem;
    height: 100%;
    transition: box-shadow var(--transition), transform var(--transition);
}
.included-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-3px);
}
.included-title {
    font-family: var(--font-heading) !important;
    font-size: 0.95rem;
    font-weight: 700;
    margin-bottom: 0.4rem;
    color: var(--iron-text);
}
.included-desc {
    font-size: 0.87rem;
    color: var(--iron-muted);
    line-height: 1.6;
    margin-top: 0;
}

/* ─── ABONAMENTE — WORKSTATION PLAN CARDS ────────────────────────────── */
.plan-card {
    background: white;
    border-radius: var(--radius-lg);
    border: 1px solid var(--iron-border);
    padding: 2rem 1.75rem;
    height: 100%;
    text-align: center;
    position: relative;
    cursor: pointer;
    transition: box-shadow var(--transition), transform var(--transition), border-color var(--transition);
}
.plan-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-4px);
    border-color: rgba(50,115,220,0.2);
}
.plan-card--featured {
    border: 2px solid var(--iron-blue) !important;
    box-shadow: var(--shadow-md);
}
.plan-card--featured:hover {
    box-shadow: var(--shadow-lg) !important;
}
.plan-card--selected {
    border: 2px solid var(--iron-amber) !important;
    box-shadow: var(--shadow-md);
}
.plan-badge {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    background: var(--iron-blue);
    color: white;
    border-radius: var(--radius-pill);
    padding: 0.28em 0.85em;
    margin-bottom: 0.85rem;
}
.plan-name {
    font-family: var(--font-heading);
    font-size: 1.9rem;
    font-weight: 800;
    color: var(--iron-text);
    letter-spacing: -0.03em;
    line-height: 1;
    margin-bottom: 0.25rem;
}
.plan-price {
    font-family: var(--font-heading);
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--iron-blue);
    letter-spacing: -0.04em;
    line-height: 1.1;
    margin: 0.5rem 0 0.25rem;
}
.plan-currency {
    font-size: 0.95rem;
    font-weight: 400;
    color: var(--iron-muted);
    letter-spacing: 0;
}
.plan-desc {
    font-size: 0.85rem;
    color: var(--iron-muted);
    margin-bottom: 0;
}
.plan-divider {
    height: 1px;
    background: var(--iron-border);
    margin: 1.25rem 0;
}
/* Shared list reset — applied to all card feature lists */
.plan-features,
.infra-features,
.rate-notes {
    list-style: none !important;
    padding: 0 !important;
}

.plan-features {
    text-align: left;
    margin: 0 0 1.5rem !important;
}
.plan-features li {
    font-size: 0.88rem;
    padding: 0.3rem 0;
    color: var(--iron-text);
    display: flex;
    align-items: center;
    gap: 0.6rem;
}
.plan-features li .fa-check { color: var(--iron-blue); font-size: 0.75rem; }
.plan-features li .fa-plus  { color: var(--iron-amber-dark); font-size: 0.75rem; }
.plan-btn { margin-top: auto; }

/* ─── ABONAMENTE — INFRASTRUCTURE CARDS ─────────────────────────────── */
.infra-card {
    background: white;
    border-radius: var(--radius-lg);
    border: 1px solid var(--iron-border);
    padding: 2rem 1.75rem;
    height: 100%;
    cursor: pointer;
    transition: box-shadow var(--transition), transform var(--transition), border-color var(--transition);
}
.infra-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-4px);
    border-color: rgba(50,115,220,0.2);
}
.infra-card--featured {
    border: 2px solid var(--iron-blue) !important;
    box-shadow: var(--shadow-md);
}
.infra-card--featured:hover { box-shadow: var(--shadow-lg) !important; }
.infra-card--selected {
    border: 2px solid var(--iron-amber) !important;
    box-shadow: var(--shadow-md);
}

.infra-header {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.25rem;
}
.infra-icon-wrap {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: rgba(50,115,220,0.1);
    border: 1px solid rgba(50,115,220,0.16);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: var(--iron-blue);
    flex-shrink: 0;
}
.infra-icon-wrap--featured {
    background: var(--iron-blue);
    color: white;
    border-color: var(--iron-blue);
}
.infra-name {
    font-family: var(--font-heading) !important;
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--iron-text);
    margin: 0 !important;
}
.infra-target {
    font-size: 0.82rem;
    color: var(--iron-muted);
    margin: 0.15rem 0 0 !important;
}
.infra-price {
    font-family: var(--font-heading);
    font-size: 2rem;
    font-weight: 800;
    color: var(--iron-blue);
    letter-spacing: -0.04em;
    line-height: 1.1;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--iron-border);
}
.infra-currency {
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--iron-muted);
    letter-spacing: 0;
}
.infra-features {
    margin: 0 !important;
}
.infra-features li {
    font-size: 0.88rem;
    padding: 0.32rem 0;
    color: var(--iron-text);
    display: flex;
    align-items: center;
    gap: 0.6rem;
    border-bottom: 1px solid #f0f4f8;
}
.infra-features li:last-child { border-bottom: none; }
.infra-features li .fa-check { color: var(--iron-blue); font-size: 0.72rem; flex-shrink: 0; }

/* ─── ABONAMENTE — CALCULATOR EXAMPLE ───────────────────────────────── */
.calc-example {
    background: white;
    border-radius: var(--radius-xl);
    border: 1px solid var(--iron-border);
    padding: 2.25rem 2.5rem;
    box-shadow: var(--shadow-sm);
}
.calc-example-header {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    margin-bottom: 1.75rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--iron-border);
}
.calc-example-title {
    font-family: var(--font-heading) !important;
    font-size: 1.15rem;
    font-weight: 700;
    margin: 0 !important;
}
.calc-rows { display: flex; flex-direction: column; gap: 0.1rem; }
.calc-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 0.65rem 0;
    border-bottom: 1px dashed #e8edf5;
    font-size: 0.95rem;
}
.calc-label { color: var(--iron-text); font-weight: 500; }
.calc-amount { font-family: var(--font-heading); font-weight: 700; color: var(--iron-blue); font-size: 1.05rem; }
.calc-total {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 1rem 0 0;
    margin-top: 0.25rem;
    font-family: var(--font-heading);
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--iron-text);
}
.calc-total span:last-child {
    font-size: 1.5rem;
    color: var(--iron-blue);
}

/* ─── HOURLY RATES — NOTES ───────────────────────────────────────────── */
.rate-notes {
    margin: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 1.15rem;
}
.rate-notes li {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    font-size: 0.92rem;
    color: var(--iron-text);
}
.rate-notes li > i {
    color: var(--iron-blue);
    font-size: 0.9rem;
    margin-top: 0.25rem;
    flex-shrink: 0;
    width: 1.1rem;
    text-align: center;
}
.rate-notes li strong {
    display: block;
    font-size: 0.93rem;
    margin-bottom: 0.1rem;
}
.rate-notes li p {
    margin: 0 !important;
    font-size: 0.84rem;
    color: var(--iron-muted);
    line-height: 1.5;
}

/* ─── LOGO TEXT ──────────────────────────────────────────────────────── */
.logo-text {
    font-family: var(--font-heading);
    font-weight: 800;
    font-size: 1.3rem;
    color: var(--iron-navy-deep);
    letter-spacing: 0.03em;
}

/* ─── UTILITIES ──────────────────────────────────────────────────────── */
.is-rounded-1em { border-radius: 1em; }

/* ─── FIX: Bulma warning-outlined too pale on white ──────────────────── */
.button.is-warning.is-outlined {
    border-color: var(--iron-amber-dark);
    color: var(--iron-amber-dark);
}
.button.is-warning.is-outlined:hover {
    background-color: var(--iron-amber-dark);
    border-color: var(--iron-amber-dark);
    color: #fff;
}

/* ═══════════════════════════════════════════════════════════════════════
   DARK MODE
   ═══════════════════════════════════════════════════════════════════════ */
[data-theme="dark"] {
    --iron-navy-deep:  #0d0d1a;
    --iron-navy-mid:   #12122a;
    --iron-navy-light: #0f3460;
    --iron-blue:       #4a8aea;
    --iron-blue-light: #6ba3f5;
    --iron-amber:      #f5a623;
    --iron-amber-dark: #d4891a;
    --iron-text:       #e2e8f0;
    --iron-muted:      #a0aec0;
    --iron-surface:    #161627;
    --iron-card-bg:    #1c1c33;
    --iron-border:     #2d2d4a;

    --shadow-sm:  0 2px 8px rgba(0,0,0,0.3);
    --shadow-md:  0 8px 24px rgba(0,0,0,0.4);
    --shadow-lg:  0 16px 40px rgba(0,0,0,0.5);
    --shadow-amber: 0 6px 20px rgba(245,166,35,0.25);

    color-scheme: dark;
}

/* ─── DARK: Body & base ─────────────────────────────────────────────── */
[data-theme="dark"] body {
    background-color: #111122;
    color: var(--iron-text);
}

/* ─── DARK: Navbar ──────────────────────────────────────────────────── */
[data-theme="dark"] .navbar,
[data-theme="dark"] .navbar-menu {
    background-color: #161627;
    border-bottom: 1px solid var(--iron-border);
}
[data-theme="dark"] .navbar-item,
[data-theme="dark"] .navbar-link {
    color: var(--iron-text);
}
[data-theme="dark"] .navbar-item:hover,
[data-theme="dark"] .navbar-link:hover {
    background-color: rgba(255,255,255,0.05);
    color: #fff;
}
[data-theme="dark"] .navbar-item.has-dropdown:hover .navbar-link,
[data-theme="dark"] .navbar-item.has-dropdown.is-active .navbar-link {
    background-color: rgba(255,255,255,0.05);
    color: #fff;
}
[data-theme="dark"] .navbar-dropdown {
    background-color: #1c1c33;
    border-color: var(--iron-border);
}
[data-theme="dark"] .navbar-dropdown .navbar-item:hover {
    background-color: rgba(255,255,255,0.06);
}
[data-theme="dark"] .navbar-divider {
    background-color: var(--iron-border);
}
[data-theme="dark"] .navbar-burger span {
    color: var(--iron-text);
    background-color: var(--iron-text) !important;
}
[data-theme="dark"] .logo-text {
    color: #e2e8f0;
}

/* ─── DARK: Sections ────────────────────────────────────────────────── */
[data-theme="dark"] .section {
    background-color: #111122;
}
[data-theme="dark"] .section-why {
    background-color: #0e0e1e;
}
/* Section surface overrides the .section reset — use var(--iron-surface) which
   resolves to #161627 in dark mode, giving a subtle separation from #111122 */
[data-theme="dark"] .section-surface,
[data-theme="dark"] .section-surface-bottom,
[data-theme="dark"] .section-surface-bordered {
    background-color: var(--iron-surface);
}

/* ─── DARK: Bulma overrides ─────────────────────────────────────────── */
[data-theme="dark"] .title,
[data-theme="dark"] .label {
    color: var(--iron-text) !important;
}
[data-theme="dark"] .subtitle,
[data-theme="dark"] .has-text-grey {
    color: var(--iron-muted) !important;
}
[data-theme="dark"] .box {
    background-color: var(--iron-card-bg);
    border-color: var(--iron-border);
    color: var(--iron-text);
}
[data-theme="dark"] hr {
    background-color: var(--iron-border);
}
[data-theme="dark"] .tag.is-info {
    background-color: var(--iron-blue);
}

/* ─── DARK: Service cards ───────────────────────────────────────────── */
[data-theme="dark"] .service-box {
    background-color: var(--iron-card-bg);
    border-color: var(--iron-border);
}
[data-theme="dark"] .service-box:hover {
    border-color: rgba(74,138,234,0.3);
}
[data-theme="dark"] .service-icon-badge {
    background: linear-gradient(135deg, rgba(74,138,234,0.2), rgba(74,138,234,0.08));
    border-color: rgba(74,138,234,0.25);
}

/* ─── DARK: Why cards ───────────────────────────────────────────────── */
[data-theme="dark"] .why-card {
    background-color: var(--iron-card-bg);
    border-color: var(--iron-border);
}
[data-theme="dark"] .why-card:hover {
    border-color: rgba(74,138,234,0.25);
}

/* ─── DARK: Social Proof + Pricing Teaser ──────────────────────────── */
[data-theme="dark"] .section-proof {
    background-color: var(--iron-surface);
}
[data-theme="dark"] .proof-icon {
    background: linear-gradient(135deg, rgba(245,166,35,0.15), rgba(245,166,35,0.06));
    border-color: rgba(245,166,35,0.22);
}
[data-theme="dark"] .proof-text {
    color: var(--iron-muted);
}
[data-theme="dark"] .pricing-teaser {
    background-color: var(--iron-surface);
    border-color: var(--iron-border);
}

/* ─── DARK: Pricing ─────────────────────────────────────────────────── */
[data-theme="dark"] .pricing-featured {
    border-color: var(--iron-blue) !important;
}

/* ─── DARK: Buttons ─────────────────────────────────────────────────── */
[data-theme="dark"] .button.is-light.is-outlined {
    border-color: rgba(255,255,255,0.3);
    color: rgba(255,255,255,0.8);
}
[data-theme="dark"] .button.is-light.is-outlined:hover {
    background-color: rgba(255,255,255,0.1);
    color: #fff;
}
[data-theme="dark"] .button.is-info:not(.is-outlined) {
    background-color: var(--iron-blue);
}
[data-theme="dark"] .button.is-info.is-outlined {
    background-color: transparent;
    border-color: var(--iron-blue);
    color: var(--iron-blue);
}

/* ─── DARK: Abonamente cards ────────────────────────────────────────── */
[data-theme="dark"] .included-card,
[data-theme="dark"] .plan-card,
[data-theme="dark"] .infra-card,
[data-theme="dark"] .calc-example {
    background-color: var(--iron-card-bg);
    border-color: var(--iron-border);
}
[data-theme="dark"] .plan-card--featured,
[data-theme="dark"] .infra-card--featured {
    border-color: var(--iron-blue) !important;
}
[data-theme="dark"] .plan-card--selected,
[data-theme="dark"] .infra-card--selected {
    border-color: var(--iron-amber) !important;
}
[data-theme="dark"] .plan-divider {
    background-color: var(--iron-border);
}
[data-theme="dark"] .infra-features li {
    border-bottom-color: var(--iron-border);
}
[data-theme="dark"] .calc-row {
    border-bottom-color: var(--iron-border);
}
[data-theme="dark"] .infra-price {
    border-bottom-color: var(--iron-border);
}
[data-theme="dark"] .plan-features strong,
[data-theme="dark"] .infra-features strong,
[data-theme="dark"] .rate-notes li strong {
    color: var(--iron-text);
}
[data-theme="dark"] .calc-example-header {
    border-bottom-color: var(--iron-border);
}

/* ─── DARK: Contact step badges ─────────────────────────────────────── */
[data-theme="dark"] .contact-step-badge {
    background: linear-gradient(135deg, rgba(245,166,35,0.15), rgba(245,166,35,0.06));
    border-color: rgba(245,166,35,0.22);
    color: var(--iron-amber);
}

/* ─── DARK: Contact form inputs ─────────────────────────────────────── */
[data-theme="dark"] #contact-form .input,
[data-theme="dark"] #contact-form .textarea {
    background-color: var(--iron-card-bg);
    border-color: var(--iron-border);
    color: var(--iron-text);
}
[data-theme="dark"] #contact-form .input::placeholder,
[data-theme="dark"] #contact-form .textarea::placeholder {
    color: var(--iron-muted);
}
[data-theme="dark"] #contact-form .input:focus,
[data-theme="dark"] #contact-form .textarea:focus {
    border-color: var(--iron-blue);
    box-shadow: 0 0 0 3px rgba(74, 138, 234, 0.15);
}
[data-theme="dark"] #contact-form .label {
    color: var(--iron-text);
}

/* ─── DARK: Section eyebrow ─────────────────────────────────────────── */
[data-theme="dark"] .section-eyebrow {
    background: rgba(74,138,234,0.12);
    border-color: rgba(74,138,234,0.25);
    color: var(--iron-blue);
}

/* ─── DARK: Inline style overrides (links, misc) ────────────────────── */
[data-theme="dark"] a {
    color: var(--iron-blue);
}
[data-theme="dark"] .content a {
    color: var(--iron-blue);
}

/* ─── DARK: .content prose (Bulma hardcodes these, must override) ───── */
[data-theme="dark"] .content h1,
[data-theme="dark"] .content h2,
[data-theme="dark"] .content h3,
[data-theme="dark"] .content h4,
[data-theme="dark"] .content h5,
[data-theme="dark"] .content h6 {
    color: var(--iron-text);
}
[data-theme="dark"] .content p,
[data-theme="dark"] .content li,
[data-theme="dark"] .content td,
[data-theme="dark"] .content th {
    color: var(--iron-muted);
}
[data-theme="dark"] .content strong {
    color: var(--iron-text);
}
[data-theme="dark"] .content blockquote {
    border-left-color: var(--iron-border);
    color: var(--iron-muted);
}
[data-theme="dark"] .content code {
    background: rgba(255,255,255,0.08);
    color: #f6c90e;
}

/* ─── ELI5 / IN PLAIN TERMS ──────────────────────────────────────────── */
.section.section-eli5 { padding-top: 0; }

.eli5-box {
    background: linear-gradient(135deg, #fffbee, #fff8dc);
    border-radius: var(--radius-lg);
    border: 1px solid rgba(245, 166, 35, 0.22);
    border-left: 4px solid var(--iron-amber);
    padding: 2rem 2.5rem;
}
.eli5-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--iron-amber-dark);
    margin-bottom: 0.75rem;
}
.eli5-title {
    font-family: var(--font-heading);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--iron-text);
    margin-bottom: 0.65rem;
}
.eli5-text {
    font-size: 0.97rem;
    line-height: 1.8;
    color: #4a5568;
    margin: 0;
}
[data-theme="dark"] .eli5-box {
    background: linear-gradient(135deg, rgba(245,166,35,0.09), rgba(245,166,35,0.04));
    border-color: rgba(245,166,35,0.18);
    border-left-color: var(--iron-amber);
}
[data-theme="dark"] .eli5-eyebrow { color: var(--iron-amber); }
[data-theme="dark"] .eli5-title   { color: var(--iron-text); }
[data-theme="dark"] .eli5-text    { color: var(--iron-muted); }

/* ─── DARK: Footer (always dark — slightly deeper in dark mode) ─────── */
[data-theme="dark"] footer.footer {
    background-color: #0a0a18;
}
