/*========================================================

CHANGED
AUTHOR STYLESHEET

Author: Bradley Hobbs
Version: 2.0

PART 1 OF 4

========================================================*/


/*========================================================
ROOT VARIABLES
========================================================*/

:root{

--navy:#1d2947;
--navy-light:#30406b;

--purple:#65459d;
--purple-light:#8160b6;

--teal:#2c9eb8;
--teal-light:#74d3df;

--gold:#c8a45d;
--gold-light:#e6cd96;

--cream:#f8f3ea;
--ivory:#fffdf9;

--white:#ffffff;

--charcoal:#2f2f2f;
--gray:#666666;

--border:#e9e2d7;

--shadow:0 18px 45px rgba(0,0,0,.08);
--shadow-large:0 30px 70px rgba(0,0,0,.15);

--radius:18px;

--transition:.35s ease;

--max-width:1200px;

}


/*========================================================
RESET
========================================================*/

*{

margin:0;
padding:0;
box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:"Inter",sans-serif;

background:var(--cream);

color:var(--charcoal);

font-size:18px;

line-height:1.9;

overflow-x:hidden;

-webkit-font-smoothing:antialiased;

}

body::before{

content:"";

position:fixed;

inset:0;

background-image:

radial-gradient(

rgba(200,164,93,.05) 1px,

transparent 1px

);

background-size:42px 42px;

pointer-events:none;

z-index:-1;

}


/*========================================================
TYPOGRAPHY
========================================================*/

h1,
h2,
h3,
h4,
h5,
h6{

font-family:"Cinzel",serif;

font-weight:600;

color:var(--navy);

line-height:1.25;

margin-bottom:28px;

}

h1{

font-size:clamp(3rem,6vw,4.8rem);

}

h2{

font-size:clamp(2rem,4vw,3rem);

}

h3{

font-size:1.6rem;

}

p{

margin-bottom:28px;

color:var(--charcoal);

}

a{

text-decoration:none;

color:inherit;

transition:var(--transition);

}

img{

display:block;

max-width:100%;
height:auto;

}

ul{

list-style:none;

}


/*========================================================
LAYOUT
========================================================*/

.container{

width:min(92%,var(--max-width));

margin:auto;

}

.narrow{

max-width:860px;

margin:auto;

}

section:not(.hero){

padding:110px 0;

position:relative;

}


/*========================================================
PROGRESS BAR
========================================================*/

#progress-bar{

position:fixed;

top:0;
left:0;

width:0;

height:4px;

background:

linear-gradient(

90deg,

var(--purple),

var(--teal)

);

z-index:9999;

}


/*========================================================
MASTER TOP NAVIGATION
MATCHES LANDING.CSS
========================================================*/

.navbar{

position:sticky;

top:0;

width:100%;

background:rgba(248,243,234,.97);

backdrop-filter:blur(16px);

-webkit-backdrop-filter:blur(16px);

box-shadow:0 8px 30px rgba(0,0,0,.08);

z-index:2000;

transition:var(--transition);

}

.navbar.scrolled{

background:rgba(255,253,249,.97);

}

.navbar .container{

width:min(92%,1200px);

margin:0 auto;

display:flex;

justify-content:space-between;

align-items:center;

padding:20px 0;

}


/*========================================================
LOGO
========================================================*/

.logo{

font-family:"Cinzel",serif;

font-size:2rem;

font-weight:700;

letter-spacing:2px;

color:var(--navy);

}

.logo:hover{

color:var(--gold);

}


/*========================================================
NAVIGATION
========================================================*/

.navigation{

display:flex;

align-items:center;

justify-content:flex-end;

gap:38px;

margin:0;

padding:0;

list-style:none;

}

.navigation li{

display:flex;

align-items:center;

margin:0;

padding:0;

}

.navigation a{

display:inline-block;

position:relative;

font-family:"Inter",sans-serif;

font-size:1rem;

font-weight:600;

line-height:1.4;

color:var(--navy);

padding:6px 0;

white-space:nowrap;

}

.navigation a::after{

content:"";

position:absolute;

left:0;

bottom:0;

width:0;

height:2px;

background:var(--gold);

transition:.35s ease;

}

.navigation a:hover{

color:var(--navy);

}

.navigation a:hover::after,

.navigation a.active::after{

width:100%;

}

.navigation a.active{

color:var(--purple);

}


/*========================================================
MOBILE NAVIGATION BUTTON
========================================================*/

.nav-toggle{

display:none;

background:none;

border:none;

cursor:pointer;

padding:6px;

}

.nav-toggle span{

display:block;

width:30px;

height:3px;

margin:6px 0;

border-radius:50px;

background:var(--navy);

transition:var(--transition);

}

.nav-toggle.active span:nth-child(1){

transform:translateY(9px) rotate(45deg);

}

.nav-toggle.active span:nth-child(2){

opacity:0;

}

.nav-toggle.active span:nth-child(3){

transform:translateY(-9px) rotate(-45deg);

}


/*========================================================
HERO
========================================================*/

.hero{

padding:30px 0 50px;

margin:0;

line-height:0;

background:var(--white);

}

.hero-banner{

display:block;

width:min(90%,1100px);

max-width:1100px;

height:auto;

margin:0 auto;

border-radius:var(--radius);

box-shadow:0 20px 60px rgba(0,0,0,.12);

object-fit:cover;

}


/*========================================================
SMOOTH IMAGE
========================================================*/

.hero-banner{

animation:fadeHero 1s ease;

}

@keyframes fadeHero{

from{

opacity:0;

transform:scale(1.02);

}

to{

opacity:1;

transform:scale(1);

}

}

/*========================================================
END OF PART 1
========================================================*/

/*========================================================
AUTHOR HEADER
========================================================*/

.author-header{

background:
linear-gradient(
180deg,
var(--ivory),
var(--cream)
);

text-align:center;

}

.chapter-label{

display:inline-block;

margin-bottom:18px;

font-size:.9rem;

font-weight:700;

letter-spacing:5px;

text-transform:uppercase;

color:var(--gold);

}

.author-header h1{

margin-bottom:28px;

}

.chapter-subtitle{

max-width:760px;

margin:0 auto 45px;

font-size:1.15rem;

line-height:2;

color:var(--gray);

}

.chapter-meta{

display:flex;

justify-content:center;

align-items:center;

flex-wrap:wrap;

gap:18px;

margin-bottom:45px;

font-size:.9rem;

font-weight:700;

letter-spacing:2px;

text-transform:uppercase;

color:var(--gold);

}

.chapter-divider{

width:180px;

height:2px;

margin:auto;

background:
linear-gradient(
90deg,
transparent,
var(--gold),
transparent
);

}


/*========================================================
AUTHOR CONTENT
========================================================*/

.author-content{

background:var(--white);

}

.author-content p{

font-size:1.08rem;

line-height:2;

margin-bottom:30px;

color:var(--charcoal);

}

.author-content em{

font-style:italic;

font-weight:600;

color:var(--purple);

}

.author-content strong{

font-weight:700;

color:var(--navy);

}


/*========================================================
DROP CAP
========================================================*/

.drop-cap::first-letter{

float:left;

font-family:"Cinzel",serif;

font-size:5rem;

line-height:.85;

padding-right:14px;

padding-top:10px;

font-weight:700;

color:var(--gold);

}


/*========================================================
BLOCKQUOTE
========================================================*/

blockquote{

position:relative;

max-width:760px;

margin:75px auto;

padding:0 30px;

font-family:"Cormorant Garamond",serif;

font-size:2.4rem;

font-style:italic;

line-height:1.6;

text-align:center;

color:var(--purple);

}

blockquote::before{

content:"“";

position:absolute;

left:-10px;

top:-35px;

font-size:5rem;

color:rgba(200,164,93,.22);

}

blockquote::after{

content:"”";

position:absolute;

right:-5px;

bottom:-65px;

font-size:5rem;

color:rgba(200,164,93,.22);

}


/*========================================================
REFLECTION HEADINGS
========================================================*/

.reflection-heading{

max-width:760px;

margin:65px auto 28px;

text-align:center;

font-family:"Cormorant Garamond",serif;

font-size:2.75rem;

font-style:italic;

font-weight:600;

line-height:1.35;

color:var(--navy);

transition:var(--transition);

}

.reflection-heading.gold{

margin-top:0;

margin-bottom:50px;

color:var(--gold);

}


/*========================================================
TEXT SPACING
========================================================*/

.author-content p:last-child{

margin-bottom:0;

}

.author-content h2{

margin-top:55px;

}

.author-content h2:first-of-type{

margin-top:40px;

}


/*========================================================
SUBTLE EMPHASIS
========================================================*/

.author-content p:nth-of-type(8),
.author-content p:nth-of-type(9),
.author-content p:nth-of-type(10){

font-size:1.12rem;

color:var(--navy);

}


/*========================================================
END PART 2
========================================================*/

/*========================================================
CALLOUT BOX
========================================================*/

.callout-box{

margin:90px auto;

padding:70px 60px;

border-radius:var(--radius);

background:
linear-gradient(
135deg,
var(--navy),
var(--purple)
);

color:var(--white);

text-align:center;

position:relative;

overflow:hidden;

box-shadow:var(--shadow-large);

}

.callout-box::before{

content:"";

position:absolute;

top:0;
left:0;

width:100%;
height:6px;

background:
linear-gradient(
90deg,
var(--gold),
var(--teal),
var(--gold)
);

}

.callout-label{

display:inline-block;

margin-bottom:22px;

font-size:.9rem;

font-weight:700;

letter-spacing:4px;

text-transform:uppercase;

color:var(--gold-light);

}

.callout-box h2{

margin-bottom:30px;

color:var(--white);

}

.callout-box p{

max-width:720px;

margin:0 auto 22px;

line-height:2;

color:rgba(255,255,255,.94);

}

.callout-box p:last-child{

margin-bottom:0;

}


/*========================================================
AUTHOR MISSION
========================================================*/

.author-mission{

background:
linear-gradient(
180deg,
var(--ivory),
var(--cream)
);

}

.section-label{

display:inline-block;

margin-bottom:18px;

font-size:.9rem;

font-weight:700;

letter-spacing:5px;

text-transform:uppercase;

color:var(--gold);

}

.author-mission h2{

margin-bottom:28px;

}

.author-mission p{

font-size:1.08rem;

line-height:2;

margin-bottom:28px;

}


/*========================================================
MISSION BOX
========================================================*/

.mission-box{

margin:85px auto;

padding:65px 55px;

background:var(--white);

border-top:6px solid var(--gold);

border-radius:var(--radius);

text-align:center;

box-shadow:var(--shadow);

transition:var(--transition);

}

.mission-box:hover{

transform:translateY(-8px);

box-shadow:var(--shadow-large);

}

.mission-box h3{

margin-bottom:35px;

color:var(--navy);

}

.mission-box p{

margin-bottom:18px;

font-size:1.15rem;

line-height:1.9;

}

.mission-box p:last-child{

margin-bottom:0;

font-family:"Cormorant Garamond",serif;

font-size:1.55rem;

font-style:italic;

color:var(--purple);

}


/*========================================================
SCRIPTURE CALLOUT
========================================================*/

.scripture-callout{

margin:90px auto 0;

padding:70px 60px;

border-radius:var(--radius);

background:
linear-gradient(
135deg,
var(--navy),
var(--navy-light)
);

text-align:center;

box-shadow:var(--shadow-large);

position:relative;

overflow:hidden;

}

.scripture-callout::before{

content:"";

position:absolute;

top:0;
left:0;

width:100%;
height:6px;

background:
linear-gradient(
90deg,
var(--gold),
var(--teal),
var(--gold)
);

}

.scripture-label{

display:inline-block;

margin-bottom:24px;

font-size:.9rem;

font-weight:700;

letter-spacing:4px;

text-transform:uppercase;

color:var(--gold-light);

}

.scripture{

margin:0 auto 35px;

max-width:760px;

font-family:"Cormorant Garamond",serif;

font-size:2.15rem;

font-style:italic;

line-height:1.7;

color:var(--white);

}

.scripture::before,
.scripture::after{

display:none;

}

.scripture-reference{

margin-bottom:0;

font-weight:700;

font-size:.95rem;

letter-spacing:2px;

text-transform:uppercase;

color:var(--gold-light);

}


/*========================================================
SECTION TRANSITIONS
========================================================*/

.author-content{

position:relative;

z-index:2;

}

.author-mission{

position:relative;

z-index:1;

}


/*========================================================
END PART 3
========================================================*/

/*========================================================
BOTTOM CHAPTER NAVIGATION
MASTER STYLE
========================================================*/

.chapter-navigation{

padding:90px 0;

background:
linear-gradient(
180deg,
var(--ivory),
var(--cream)
);

}

.chapter-navigation .container{

width:min(92%,1200px);

margin:0 auto;

display:grid;

grid-template-columns:minmax(0,1fr) 255px minmax(0,1fr);

gap:35px;

align-items:center;

}

.chapter-link{

display:flex;

flex-direction:column;

justify-content:center;

min-height:130px;

padding:28px 34px;

background:var(--white);

border-radius:var(--radius);

box-shadow:var(--shadow);

transition:var(--transition);

}

.chapter-link:hover{

transform:translateY(-8px);

box-shadow:var(--shadow-large);

}

.chapter-link span{

display:block;

margin-bottom:10px;

font-family:"Inter",sans-serif;

font-size:.9rem;

font-weight:700;

letter-spacing:2px;

line-height:1.4;

text-transform:uppercase;

color:var(--gold);

}

.chapter-link strong{

display:block;

font-family:"Cinzel",serif;

font-size:1.15rem;

font-weight:600;

line-height:1.4;

color:var(--navy);

}

.chapter-link.previous{

text-align:left;

align-items:flex-start;

}

.chapter-link.center-link{

text-align:center;

align-items:center;

}

.chapter-link.next{

text-align:right;

align-items:flex-end;

}


/*========================================================
FOOTER
========================================================*/

footer{

    background:var(--navy);

    padding:100px 0 60px;

    text-align:center;

    color:var(--white);

}

.footer-brand h2{

    color:var(--white);

    margin-bottom:15px;

}

.footer-brand p{

    color:rgba(255,255,255,.75);

    margin-bottom:45px;

    font-size:1.05rem;

}

.footer-navigation{

    display:flex;

    justify-content:center;

    align-items:center;

    flex-wrap:wrap;

    gap:34px;

    margin-bottom:55px;

}

.footer-navigation a{

    font-weight:600;

    color:rgba(255,255,255,.92);

    transition:var(--transition);

}

.footer-navigation a:hover{

    color:var(--gold-light);

}

.footer-scripture{

    max-width:760px;

    margin:0 auto 45px;

}

.footer-scripture p{

    margin:0 0 15px;

    font-family:"Cormorant Garamond",serif;

    font-size:1.45rem;

    font-style:italic;

    line-height:1.8;

    color:var(--white);

}

.footer-scripture span{

    display:block;

    font-family:"Inter",sans-serif;

    font-size:.95rem;

    font-style:normal;

    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    color:var(--gold-light);

}

.copyright{

    margin-top:40px;

    margin-bottom:0;

    font-family:"Inter",sans-serif;

    font-size:.95rem;

    line-height:1.8;

    color:rgba(255,255,255,.75);

}


/*========================================================
SCROLL TO TOP
========================================================*/

#scrollTop{

position:fixed;

right:30px;

bottom:30px;

width:58px;

height:58px;

border:none;

border-radius:50%;

background:
linear-gradient(
135deg,
var(--purple),
var(--teal)
);

color:var(--white);

font-size:1.3rem;

cursor:pointer;

box-shadow:var(--shadow);

opacity:0;

visibility:hidden;

transition:var(--transition);

z-index:999;

}

#scrollTop.show{

opacity:1;

visibility:visible;

}

#scrollTop:hover{

transform:translateY(-6px);

box-shadow:var(--shadow-large);

}


/*========================================================
FADE ANIMATIONS
========================================================*/

.fade-up{

opacity:0;

transform:translateY(45px);

transition:all .8s ease;

}

.fade-up.visible{

opacity:1;

transform:translateY(0);

}


/*========================================================
TABLET
========================================================*/

@media(max-width:900px){

section:not(.hero){

padding:90px 0;

}

.navbar .container{

padding:20px 0;

}

.navigation{

position:fixed;

top:82px;

right:-100%;

width:320px;

height:calc(100vh - 82px);

background:var(--ivory);

display:flex;

flex-direction:column;

align-items:flex-start;

justify-content:flex-start;

padding:45px;

gap:25px;

box-shadow:-12px 0 40px rgba(0,0,0,.12);

transition:.35s ease;

overflow-y:auto;

}

.navigation.active{

right:0;

}

.navigation li{

width:100%;

}

.navigation a{

width:100%;

color:var(--navy)!important;

padding:5px 0;

}

.nav-toggle{

display:block;

}

.chapter-navigation .container{

grid-template-columns:1fr;

gap:25px;

}

.chapter-link.previous,
.chapter-link.center-link,
.chapter-link.next{

align-items:center;

text-align:center;

}

.callout-box,
.mission-box,
.scripture-callout{

padding:50px 35px;

}

}


/*========================================================
MOBILE
========================================================*/

@media(max-width:640px){

.hero{

padding:20px 0 35px;

}

.hero-banner{

width:94%;

border-radius:12px;

}

body{

font-size:17px;

line-height:1.8;

}

.container{

width:92%;

}

section:not(.hero){

padding:75px 0;

}

.logo{

font-size:1.6rem;

}

.navbar .container{

width:92%;

padding:16px 0;

}

.navigation{

top:74px;

height:calc(100vh - 74px);

width:300px;

padding:35px 30px;

gap:22px;

}

h1{

font-size:2.5rem;

}

h2{

font-size:2rem;

}

.chapter-subtitle{

font-size:1.05rem;

}

.chapter-meta{

flex-direction:column;

gap:10px;

}

.drop-cap::first-letter{

font-size:4rem;

padding-right:10px;

}

blockquote{

font-size:1.8rem;

padding:0;

}

.reflection-heading{

font-size:2rem;

}

.callout-box,
.mission-box,
.scripture-callout{

padding:40px 24px;

}

.scripture{

font-size:1.65rem;

}

.chapter-link{

min-height:105px;

padding:24px;

align-items:center;

text-align:center;

}

.chapter-link span{

font-size:.85rem;

}

.chapter-link strong{

font-size:1.05rem;

}

.footer-navigation{

flex-direction:column;

gap:18px;

}

.footer-scripture p{

font-size:1.2rem;

}

}


/*========================================================
ACCESSIBILITY
========================================================*/

a:focus,
button:focus{

outline:3px solid var(--gold);

outline-offset:4px;

}

button{

font-family:inherit;

}


/*========================================================
REDUCED MOTION
========================================================*/

@media(prefers-reduced-motion:reduce){

*{

animation:none!important;

transition:none!important;

scroll-behavior:auto!important;

}

}


/*========================================================
PRINT
========================================================*/

@media print{

.navbar,
.chapter-navigation,
footer,
#scrollTop,
#progress-bar{

display:none;

}

body{

background:#fff;

color:#000;

}

section{

padding:35px 0;

}

}


/*========================================================
END OF FILE

CHANGED
AUTHOR STYLESHEET

Author: Bradley Hobbs
Version: 2.1

Top and bottom navigation synchronized with landing.css

========================================================*/
