/* theme_header_014.css
   Theme Header Extension
   Version 014

   Left-to-right structure:
   1. optional left icon
   2. title block
   3. optional right icon
   4. URL block

   The URL block uses the same two-line structure as the title block.
*/

:root{
    --theme-header-height:72px;
    --theme-header-side-padding:20px;
    --theme-header-gap:18px;

    --theme-header-icon-height:82px;
    --theme-header-icon-drop:10px;
    --theme-header-left-slot:140px;
}

#PageHeader{
    background:var(--color-page-bg);
}

#Header.theme-header{
    height:var(--theme-header-height);
    padding:0;
    background:transparent;
    overflow:visible;
}

.theme-header-inner{
    width:100%;
    max-width:1000px;
    height:100%;
    margin:0 auto;
    padding:0 var(--theme-header-side-padding);
    box-sizing:border-box;
    overflow:visible;

    display:grid;
    grid-template-columns:var(--theme-header-left-slot) minmax(0,1fr) auto auto;
    column-gap:var(--theme-header-gap);
    align-items:center;
}

/* ---------- Icons ---------- */

.theme-header-elephant-left,
.theme-header-elephant-right{
    height:var(--theme-header-icon-height);
    width:auto;
    align-self:end;
    margin-bottom:calc(-1 * var(--theme-header-icon-drop));
    pointer-events:none;
}

.theme-header-elephant-left{
    justify-self:center;
}

.theme-header-elephant-right{
    justify-self:start;
}

/* ---------- Title block and URL block ---------- */

.theme-header-text,
.theme-header-urlblock{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
}

.theme-header-urlblock{
    justify-self:end;
    text-align:right;
    white-space:nowrap;
}

.theme-header-title,
.theme-header-url-title{
    font-size:1.6rem;
    line-height:1.2;
}

.theme-header-title{
    font-style:italic;
    font-weight:bold;
    color:#111;
}

.theme-header-url-title{
    color:transparent;
}

.theme-header-subtitle,
.theme-header-url-subtitle{
    margin-top:4px;
    font-size:.95rem;
    line-height:1.15;
}

.theme-header-subtitle{
    color:#444;
}

.theme-header-url-subtitle{
    color:#111;
}

/* ---------- Responsive ---------- */

@media (max-width:700px){

    :root{
        --theme-header-height:60px;
        --theme-header-side-padding:12px;
        --theme-header-gap:12px;
        --theme-header-icon-height:68px;
        --theme-header-icon-drop:10px;
        --theme-header-left-slot:110px;
    }

    .theme-header-title,
    .theme-header-url-title{
        font-size:1.25rem;
    }

    .theme-header-subtitle{
        display:none;
    }

    .theme-header-url-title{
        display:none;
    }

    .theme-header-url-subtitle{
        margin-top:0;
        font-size:.72rem;
    }
}

@media (max-width:480px){

    :root{
        --theme-header-gap:10px;
        --theme-header-icon-height:56px;
        --theme-header-icon-drop:8px;
        --theme-header-left-slot:90px;
    }

    .theme-header-urlblock{
        display:none;
    }

    .theme-header-elephant-left,
    .theme-header-elephant-right{
        opacity:.85;
    }
}
