/*
Theme Name: Code 7 (Bootstrap 5)
Theme URI: https://code7book.com/
Description: Simple, lightweight classic theme for code7book.com built on Bootstrap 5.3. No page builder.
Author: SeddCo
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: code7
*/

:root {
  --c7-coral: #e85143;
  --c7-coral-dark: #cf3e31;
  --c7-brown: #3b2217;
  --c7-gold: #d2a450;
  --c7-green: #25403b;
  --c7-yellow: #e9e28f;
  --bs-body-font-family: Raleway, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --bs-body-color: #353535;
  --bs-link-color: #e85143;
  --bs-link-color-rgb: 232, 81, 67;
  --bs-link-hover-color: #cf3e31;
  --bs-link-hover-color-rgb: 207, 62, 49;
}

body { font-size: 1.0625rem; line-height: 1.7; }
h1, h2, h3, h4, .display-title {
  font-family: Lora, Georgia, serif;
  font-style: italic;
  font-weight: 400;
  color: var(--c7-brown);
  line-height: 1.25;
}
h5, h6 { font-family: Raleway, sans-serif; color: var(--c7-green); font-weight: 700; }

.btn-c7 {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--c7-coral);
  --bs-btn-border-color: var(--c7-coral);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--c7-coral-dark);
  --bs-btn-hover-border-color: var(--c7-coral-dark);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--c7-coral-dark);
  --bs-btn-active-border-color: var(--c7-coral-dark);
  --bs-btn-focus-shadow-rgb: 232, 81, 67;
  --bs-btn-border-radius: 3px;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;
  padding: .75rem 1.75rem;
}
.entry-content a.btn { color: #fff; text-decoration: none; }

.site-header { background: #fff; border-bottom: 5px solid var(--c7-gold); }
.site-header .navbar { padding-top: .75rem; padding-bottom: .75rem; }
.site-header .custom-logo, .site-header .navbar-brand img { max-height: 110px; width: auto; height: auto; }
.site-header .navbar-nav .nav-link {
  font-weight: 700; letter-spacing: 1px; text-transform: uppercase; font-size: .95rem; color: var(--c7-green);
  padding: .5rem 1.25rem;
}
.site-header .navbar-nav .nav-link:hover,
.site-header .navbar-nav .current-menu-item > .nav-link,
.site-header .navbar-nav .nav-link.active { color: var(--c7-coral); }

.band-yellow { background: var(--c7-yellow) url("../../uploads/2016/10/Header-page.jpg") center / cover repeat-y; }
.band-plain { background: var(--c7-yellow); }
.page-hero { background: var(--c7-yellow); padding: 2.5rem 0; text-align: center; }
.page-hero h1 { font-size: clamp(2rem, 5vw, 3.25rem); margin: 0; }
.section-pad { padding: 3.5rem 0; }

.book-cover { max-width: 350px; width: 100%; height: auto; filter: drop-shadow(8px 8px 0 rgba(0,0,0,.08)); }
.award { display: flex; align-items: center; gap: 1rem; margin-bottom: .75rem; }
.award img { width: 72px; height: auto; flex: none; }
.award h3 { font-family: Raleway, sans-serif; font-style: normal; font-weight: 700; font-size: 1rem; margin: 0; line-height: 1.35; }
.store-links a { display: inline-block; padding: 10px; }
.store-links img { height: 50px; width: auto; }

.framed { border: 12px solid #fff; box-shadow: 8px 8px 0 rgba(0,0,0,.05); max-width: 100%; height: auto; }

.review-pro { display: flex; gap: 1.25rem; align-items: flex-start; padding: 1.5rem 0; border-bottom: 1px dashed var(--c7-gold); }
.review-pro:last-child { border-bottom: 0; }
.review-pro img { width: 90px; height: 90px; border-radius: 50%; object-fit: cover; flex: none; }
.review-pro .who { font-weight: 700; color: var(--c7-green); }
.quote-card { height: 100%; border-left: 4px solid var(--c7-coral); background: #faf8e6; padding: 1.5rem 1.5rem 1rem; }
.quote-card footer { text-align: right; font-weight: 700; color: var(--c7-green); }
.quote-card blockquote { margin: 0; }

.site-footer { background: #fbf9ee; border-top: 5px solid var(--c7-gold); color: var(--c7-green); }
.site-footer a { color: var(--c7-green); }
.site-footer a:hover { color: var(--c7-coral); }
.site-footer h2 { font-family: Raleway, sans-serif; font-style: normal; font-size: 1.1rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--c7-brown); }
.footer-menu { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 2rem; justify-content: center; }
.footer-menu a { text-transform: uppercase; font-weight: 700; letter-spacing: 1px; text-decoration: none; }

.wpcf7-form, .mc4wp-form { max-width: 640px; margin-left: auto; margin-right: auto; }
.wpcf7-form label { font-weight: 700; color: var(--c7-green); display: block; margin-bottom: .25rem; }
.wpcf7-form input[type=text], .wpcf7-form input[type=email], .wpcf7-form select, .wpcf7-form textarea,
.mc4wp-form input[type=text], .mc4wp-form input[type=email] {
  display: block; width: 100%; padding: .6rem .85rem; border: 1px solid #b9b2a6; border-radius: .375rem; background: #fff; font: inherit;
}
.wpcf7-form input:focus, .wpcf7-form select:focus, .wpcf7-form textarea:focus,
.mc4wp-form input:focus { border-color: var(--c7-coral); outline: 0; box-shadow: 0 0 0 .25rem rgba(232,81,67,.25); }
.wpcf7-form input[type=submit], .mc4wp-form input[type=submit] {
  background: var(--c7-coral); color: #fff; border: 0; border-radius: 3px; padding: .75rem 1.75rem;
  font-weight: 700; letter-spacing: .5px; text-transform: uppercase; cursor: pointer;
}
.wpcf7-form input[type=submit]:hover, .mc4wp-form input[type=submit]:hover { background: var(--c7-coral-dark); }
.wpcf7-form .wpcf7-submit { width: 100%; }
.wpcf7-list-item { display: inline-block; margin: 0 1rem .25rem 0; }
.wpcf7-list-item label { font-weight: 400; display: inline-flex; gap: .35rem; align-items: center; }
#DESCOT { display: none; margin-top: .5rem; }
.wpcf7-not-valid-tip { color: #b32d2e; font-size: .9rem; }
.wpcf7-response-output { margin: 1rem 0 0 !important; padding: .75rem 1rem !important; border-radius: .375rem; }
.mc4wp-form label { font-weight: 700; display: block; }
.mc4wp-response { margin-top: .75rem; }

.entry-content img { max-width: 100%; height: auto; }
.entry-content h2, .entry-content h3 { margin-top: 2rem; margin-bottom: 1rem; }
.entry-content .gallery-grid img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.entry-content .dl-card { text-align: center; }
.entry-content .dl-card img { box-shadow: 5px 5px 0 #f2f2f2; max-height: 300px; width: auto; }
.accordion { --bs-accordion-btn-color: var(--c7-brown); --bs-accordion-active-color: var(--c7-brown); --bs-accordion-active-bg: #faf8e6; --bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(232,81,67,.25); }
.accordion-button { font-weight: 700; }
.photo-credit { font-size: .85rem; color: #777; display: block; margin-top: .25rem; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 2000; background: #fff; padding: .5rem 1rem; }

/* Desktop header: primary menu | logo | secondary menu (single logo element) */
@media (min-width: 992px) {
  .site-header .navbar > .container { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; }
  .site-header .navbar .navbar-collapse { display: contents !important; }
  .site-header .navbar-brand { grid-column: 2; grid-row: 1; margin: 0 1.5rem; }
  .site-header .c7-nav-left { grid-column: 1; grid-row: 1; justify-content: flex-end; flex-direction: row; }
  .site-header .c7-nav-right { grid-column: 3; grid-row: 1; flex-direction: row; }
}
