:root {
    --carDadRed: #a80019ff;
    --carDadBlue: #343b62ff;
}

header {
    background-color: color-mix(
        in srgb,
        var(--carDadBlue) 10%,
        white
    );
}
footer {
    background-color: color-mix(
        in srgb,
        var(--carDadBlue) 10%,
        white
    );
}

.headroom {
    margin-top: 1em;
}

blockquote {
    margin-left: 2em;
    font-style: italic;
}

.testator {
    font-weight: bold;
    font-style: normal;
}

.float-brian {
    float: right;
    width: 228px;
    height: 318px;
    margin-left: 1rem;
    margin-bottom: 1rem;
    shape-outside: url( "../images/the-car-dad1.png" );
    shape-margin: 1rem;
    object-fit: contain;
    display: block;
}

.float-saige {
    float: right;
    width: 200px;
    height: 200px;
    margin-left: 1rem;
    margin-bottom: 1rem;
    shape-outside: url( "../images/Saige-thumbnail.png" );
    shape-margin: 1rem;
    object-fit: contain;
    display: block;
}

body, html {
    /* font-family: 'Lora', serif; */
    font-family: "Ubuntu Sans VF", system-ui, sans-serif;
    color: var(--carDadBlue);
    font-weight: 400;
    font-size: 14pt;

    /* display: flex;
    flex-direction: column; */
    min-height: 100vh;
}

main {
    display: flex;
    flex-direction: column;
}

h1,h2,h3,h4,h5 {
    font-weight: 600;
    color: var(--carDadRed);
}

/* This is to suppress the body's scrollbar while modal is open */
html.modal-open, body.modal-open {
    overflow: hidden;
}
/* Chrome-based browers don't suppress the body's scrollbar while modal is open without this: */
.modal-fullscreen .modal-body {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}
/* iOS Safari browsers sometimes need help to know when to smooth-scroll animation, per ChatGPT */
.modal-body {
  -webkit-overflow-scrolling: touch;
}


main {
    flex: 1;
}
.bold {
    font-weight: 600;
}
.small {
    font-size: 0.75em;
}
.italic {
    font-style: italic;
}
.underline {
    text-decoration: underline;
}
.hint {
    font-size: 0.75rem;
    color: gray;
}
.nobr {
    white-space: nowrap;
}

.capitalize-first {
    display: inline-block;
}
.capitalize-first::first-letter {
    text-transform: uppercase;
}

/* Supports position of minimize button */
.collapse-section {
    position: relative;
    clear: both;
}
/* Only page section titles should match this. THIS SEEMS TO BE SLOW */
/* Apply the .collapse-section-title class to the headline if you don't like the jump */
.collapse-section :is(h1,h2,h3,h4,h5):has( ~ .collapse ) {
    padding-top: 2rem;
}
.collapse-section-title {
    padding-top: 1rem;
}


/* Fade bottom part of <img> to transparent */
.fade-bottom {
    position: relative;
    -webkit-mask-image: linear-gradient(to bottom, black 0%, black calc(100% - 30px), transparent 100%);
    mask-image: linear-gradient(to bottom, black 0%, black calc(100% - 30px), transparent 100%);
}

.dealership-photo {
    border-radius: 14px;

    /* Ultra-soft elevation for white backgrounds */
    box-shadow:
    0 8px 24px rgba(0, 0, 0, 0.12),
    0 2px 6px rgba(0, 0, 0, 0.06);

    overflow: hidden;
    background-color: #fff;
}
.hero-bg {
  border-radius: 16px;
  filter: drop-shadow(0 14px 30px rgba(0,0,0,0.18));
}

.image-wrap-justify {
    text-align: justify;
    text-align-last: left;
    hyphens: auto;
    text-justify: inter-word;
    overflow-wrap: break-word; 
}

/* Progressively reveal "We sell great cars" */
.image-reveal {
    position: absolute;
    display: block;
    height: 2.6em;
    left: 50%;
    width: 0in;
    transform: translateX( -0.9in );
    overflow: hidden;
    transition: width 1s linear;
}
.image-reveal img {    
    position: absolute; 
    display: block;
    height: 2.6em;
}

.image-reveal.revealed {
    width: 2.6in;
}
/* .image-reveal.revealed {
    width: 3.2in;
} */

.mouse-ptr {
    cursor: pointer;
}
.popover-tap {
    cursor: pointer;
    color: blue;
    text-decoration: underline;
}
.popover {
    --bs-popover-bg: #efefef;
    --bs-popover-border-bg: #fefefe;
    --bs-popover-header-bg: #fdfdfd;
}

.winker {
    display: inline-block; 
    position: absolute; 
    top: 61%; 
    left: 70%; 
    width: 20%; 
    height: 0%;     /* 15% is fully closed */
    background-color: var( --carDadRed );
    transition: height 150ms linear;    /* 150ms matches the timeout of the wink code */
}

/* Video popovers for easter eggs */
/* Only for these video popovers */
.popover.egg-video-popover {
  max-width: none;          /* allow wider than default */
}

.popover.egg-video-popover .popover-body {
  padding: 0;               /* no wasted padding around video */
}