/* ═══════════════════════════════════════════════════════════════
   SEARCH — fullscreen centred overlay (invictu5)
   ═══════════════════════════════════════════════════════════════ */

/* Suppress Blocksy's inline dropdown */
.i5-nav-area [data-id="search"] form,
.i5-nav-area [data-id="search"] .ct-search-form,
.ct-header [data-id="search"] > form { display: none !important; }

/* Fullscreen overlay */
.ct-search-overlay,
.ct-search-modal,
[class*="search-overlay"],
[class*="search-modal"] {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    background: rgba(5,8,16,.94) !important;
    backdrop-filter: blur(22px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(22px) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 40px 24px !important;
}

.ct-search-overlay .ct-search-form,
.ct-search-overlay form,
.ct-search-modal  form {
    width: 100% !important;
    max-width: 680px !important;
    position: relative !important;
    display: flex !important;
    gap: 12px !important;
}

.ct-search-overlay input[type="search"],
.ct-search-modal  input[type="search"],
.ct-search-overlay input[type="text"],
.ct-search-modal  input[type="text"] {
    flex: 1 !important;
    background: var(--i5-card) !important;
    border: 2px solid rgba(0,245,255,.3) !important;
    border-radius: var(--i5-r-full) !important;
    color: var(--i5-txt) !important;
    font-family: var(--i5-f-mono) !important;
    font-size: 1.15rem !important;
    padding: 16px 24px !important;
    outline: none !important;
    box-shadow: var(--i5-neo-in) !important;
    width: auto !important;
}
.ct-search-overlay input:focus,
.ct-search-modal  input:focus {
    border-color: var(--i5-cyan) !important;
    box-shadow: var(--i5-neo-in), 0 0 0 3px rgba(0,245,255,.12) !important;
}

.ct-search-overlay button[type="submit"],
.ct-search-modal  button[type="submit"] {
    background: linear-gradient(135deg,var(--i5-cyan),var(--i5-cyan-dim)) !important;
    color: var(--i5-inv) !important;
    border: none !important;
    border-radius: var(--i5-r-full) !important;
    padding: 16px 28px !important;
    font-family: var(--i5-f-head) !important;
    font-weight: 700 !important;
    font-size: .9rem !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    box-shadow: var(--i5-glow-sm) !important;
}
.ct-search-overlay button[type="submit"]:hover { box-shadow: var(--i5-glow) !important; }

.ct-search-overlay [data-toggle="close"],
.ct-search-overlay .ct-drawer-close {
    position: absolute !important;
    top: 24px !important; right: 24px !important;
    color: var(--i5-muted) !important;
    font-size: 1.5rem !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
    transition: color .2s !important;
}


/* ═══════════════════════════════════════════════════════════════
   ANIMATED HERO SECTION
   ═══════════════════════════════════════════════════════════════ */
#i5-hero {
    min-height: calc(100vh - var(--i5-hdr,92px));
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 32px 80px;
    position: relative;
    z-index: 1;
}

@media (max-width: 900px) {
    #i5-hero { grid-template-columns:1fr; padding:40px 20px 60px; min-height:auto; gap:32px; }
    .i5-hero-terminal { order:2; }
    .i5-hero-identity { order:1; }
}

.i5-hero-terminal {
    background: rgba(13,17,23,.88);
    border: 1px solid rgba(0,245,255,.15);
    border-radius: var(--i5-r-lg);
    overflow: hidden;
    box-shadow: var(--i5-neo), 0 0 40px rgba(0,245,255,.06);
    animation: heroTermIn .8s cubic-bezier(.4,0,.2,1) .3s both;
}
@keyframes heroTermIn {
    from { opacity:0; transform:translateX(-24px); }
    to   { opacity:1; transform:translateX(0); }
}

.i5-terminal-bar {
    display:flex; align-items:center; gap:6px;
    padding:10px 16px;
    background:var(--i5-surface);
    border-bottom:1px solid rgba(0,245,255,.09);
}
.i5-terminal-dot { width:11px; height:11px; border-radius:50%; display:inline-block; }
.i5-terminal-title { margin-left:8px; font-family:var(--i5-f-mono); font-size:.72rem; color:var(--i5-muted); }

.i5-terminal-body {
    padding:16px 18px;
    font-family:var(--i5-f-mono);
    font-size:.78rem;
    line-height:1.7;
    min-height:280px;
    max-height:340px;
    overflow:hidden;
    color:#a8b5cc;
}

.i5-t-line  { margin-bottom:2px; word-break:break-all; }
.i5-t-prompt-line { margin-top:12px; }
.i5-t-prompt { color:#39ff14; }
.i5-t-sep    { color:#6b7a99; }
.i5-t-path   { color:#00f5ff; }
.i5-t-dollar { color:#a8b5cc; margin:0 4px; }
.i5-t-cmd    { color:#e0e6f0; }
.i5-t-out    { padding-left:4px; }

.i5-hero-identity { animation: heroIdIn .8s cubic-bezier(.4,0,.2,1) .15s both; }
@keyframes heroIdIn {
    from { opacity:0; transform:translateX(24px); }
    to   { opacity:1; transform:translateX(0); }
}

.i5-hero-tag {
    font-family:var(--i5-f-mono); font-size:.72rem; letter-spacing:.14em;
    color:var(--i5-cyan); background:rgba(0,245,255,.07);
    border:1px solid rgba(0,245,255,.18); border-radius:var(--i5-r-full);
    display:inline-block; padding:5px 16px; margin-bottom:20px; text-shadow:var(--i5-glow-sm);
}

.i5-hero-name {
    font-family:var(--i5-f-head) !important;
    font-size:clamp(2.6rem,5vw,4rem) !important;
    font-weight:700 !important; line-height:1.1 !important;
    color:var(--i5-txt) !important; margin:0 0 6px !important;
}
.i5-hero-surname {
    background:linear-gradient(135deg,var(--i5-cyan) 0%,var(--i5-green) 100%);
    -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}

.i5-hero-role { font-family:var(--i5-f-head); font-size:1.15rem; font-weight:500; color:var(--i5-txt2); margin:14px 0 20px; min-height:1.8em; }
.i5-role-prefix { color:var(--i5-muted); }
.i5-typewriter  { color:var(--i5-cyan); font-weight:600; }
.i5-hero-cursor { color:var(--i5-cyan); animation:cursorBlink 1s step-end infinite; }
@keyframes cursorBlink { 0%,100%{opacity:1} 50%{opacity:0} }

.i5-hero-desc { font-size:.95rem !important; color:var(--i5-txt2) !important; line-height:1.7 !important; max-width:480px; margin:0 0 28px !important; }

.i5-hero-cta { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:28px; }

.i5-hero-btn-primary {
    background:linear-gradient(135deg,var(--i5-cyan),var(--i5-cyan-dim)) !important;
    color:var(--i5-inv) !important; -webkit-text-fill-color:var(--i5-inv) !important;
    font-family:var(--i5-f-head) !important; font-weight:700 !important; font-size:.9rem !important;
    letter-spacing:.1em !important; text-transform:uppercase !important;
    padding:13px 30px !important; border-radius:var(--i5-r-full) !important; border:none !important;
    text-decoration:none !important; box-shadow:var(--i5-glow-sm) !important; transition:all .3s !important;
}
.i5-hero-btn-primary:hover { transform:translateY(-3px) !important; box-shadow:var(--i5-glow) !important; color:var(--i5-inv) !important; -webkit-text-fill-color:var(--i5-inv) !important; }

.i5-hero-btn-outline {
    background:transparent !important; color:var(--i5-cyan) !important; -webkit-text-fill-color:var(--i5-cyan) !important;
    font-family:var(--i5-f-head) !important; font-weight:700 !important; font-size:.9rem !important;
    letter-spacing:.1em !important; text-transform:uppercase !important;
    padding:12px 28px !important; border-radius:var(--i5-r-full) !important;
    border:2px solid rgba(0,245,255,.4) !important; text-decoration:none !important; transition:all .3s !important;
}
.i5-hero-btn-outline:hover { background:rgba(0,245,255,.1) !important; border-color:var(--i5-cyan) !important; color:var(--i5-cyan) !important; -webkit-text-fill-color:var(--i5-cyan) !important; transform:translateY(-2px) !important; box-shadow:var(--i5-glow-sm) !important; }

.i5-hero-badges { display:flex; flex-wrap:wrap; gap:10px; }
.i5-hero-badges span { font-family:var(--i5-f-mono); font-size:.7rem; color:var(--i5-muted); background:var(--i5-card); border:1px solid rgba(0,245,255,.1); border-radius:var(--i5-r-full); padding:5px 14px; white-space:nowrap; }

html[data-theme="light"] .i5-hero-terminal { background:rgba(228,234,244,.9) !important; border-color:rgba(0,123,153,.2) !important; }
html[data-theme="light"] .i5-terminal-bar  { background:#dce4f0 !important; }
html[data-theme="light"] .i5-hero-name     { color:#0d1829 !important; }
html[data-theme="light"] .i5-hero-badges span { background:#e4eaf4; color:#3a4f6a; }
