:root{
    --bg:#f6efe5;--paper:#fffaf3;--ink:#2a241f;--muted:#6f665d;--gold:#ae7520;
    --deep:#895a14;--line:#dfd1bf;--dark:#201a16;--max:1180px;
}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
img{display:block;max-width:100%} a{color:inherit}.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.site-header{background:rgba(255,250,243,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.logo{text-decoration:none;display:flex;flex-direction:column;align-items:center;line-height:.9}
.logo b{font-family:"Brush Script MT","Segoe Script",cursive;font-size:2rem;color:var(--deep);font-weight:500}
.logo span{font-size:.57rem;letter-spacing:.42em;font-weight:700;margin-left:.42em}
.links{display:flex;gap:25px;align-items:center}.links a{text-decoration:none;text-transform:uppercase;font-size:.69rem;font-weight:700;padding:31px 0 25px;border-bottom:2px solid transparent}
.links a.active,.links a:hover{color:var(--deep);border-color:var(--gold)}
.social{display:flex;gap:8px}.social a{width:25px;height:25px;border:1px solid #b7aa9a;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:.65rem;font-weight:700}
.menu{display:none}

.hero{position:relative;min-height:650px;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,239,229,.92),rgba(246,239,229,.76) 32%,rgba(246,239,229,.10) 64%,transparent)}
.hero .copy{position:relative;z-index:2;padding:85px 0 70px;max-width:470px}
.hero h1,.page-title{font:400 clamp(3.5rem,6vw,5.8rem)/.93 Georgia,serif;margin:0 0 22px}
.gold{color:var(--deep)} .sub{font:1.05rem Georgia,serif;color:#403832;max-width:390px}
.btn{display:inline-block;text-decoration:none;text-transform:uppercase;font-size:.7rem;letter-spacing:.07em;font-weight:800;padding:.82rem 1.15rem;border:1px solid var(--gold)}
.btn.gold{background:var(--gold);color:white}.btn.outline{color:var(--deep)}

.section{padding:70px 0}.white{background:var(--paper)}.dark{background:var(--dark);color:white}.eyebrow{text-transform:uppercase;color:var(--deep);font-weight:800;letter-spacing:.13em;font-size:.7rem}
.script{font-family:"Brush Script MT","Segoe Script",cursive;color:var(--deep);font-size:1.9rem}
.h2{font:400 clamp(2.2rem,4vw,3.8rem)/1.05 Georgia,serif;margin:.2rem 0 1rem}
.lead{font:1.08rem Georgia,serif;color:var(--muted)}

.welcome{display:grid;grid-template-columns:1.1fr .9fr;gap:65px;align-items:center}.welcome img{width:100%;height:380px;object-fit:cover;object-position:center 95%;border-radius:12px}
.music-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.cover{aspect-ratio:1/1;background:linear-gradient(145deg,#ead9bd,#f8f0df);display:grid;place-items:center;text-align:center;padding:16px;font:italic 1.25rem Georgia,serif;color:var(--deep);border:1px solid var(--line)}
.music-card h3{font:400 1rem Georgia,serif;margin:.55rem 0 .15rem}.meta{font-size:.67rem;color:var(--muted)}.play{width:28px;height:28px;background:white;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;font-size:.7rem}

.page-hero{background:#eadbc7}.page-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.page-hero-copy{padding:70px 0 65px 0;max-width:600px}.page-hero-img{height:500px;width:100%;object-fit:cover;object-position:center 80%}

.story{
    display:block;
}

.timeline{
    display:block;
}

.timeline::after{
    content:"";
    display:block;
    clear:both;
}


/* Niagara image wrapped by the story content */
.story-float{
    float:right;
    width:min(43%,500px);
    height:auto;
    max-height:760px;

    object-fit:cover;
    object-position:center 45%;

    margin:
            0
            0
            2rem
            2.5rem;

    border-radius:10px;

    box-shadow:
            0 12px 30px
            rgba(42,36,31,.10);
}


/* Individual story sections */
.item{
    display:grid;

    grid-template-columns:
        48px
        1fr;

    gap:16px;

    padding:
            18px
            0;

    border-bottom:
            1px solid
            var(--line);
}


.num{
    width:40px;
    height:40px;

    border-radius:50%;

    background:
            var(--deep);

    color:white;

    display:grid;
    place-items:center;

    font-family:
            Georgia,
            serif;
}


.item h3{
    font:
            600 1rem
            Georgia,
            serif;

    margin:
            0
            0
            6px;
}


.item p{
    font-size:.86rem;

    color:
            var(--muted);

    margin:0;
}


/* Consistent spacing between paragraphs */
.item p + p{
    margin-top:1rem;
}


/* Tablet / mobile */
@media(max-width:850px){

    .story-float{
        float:none;

        width:100%;

        max-height:none;

        aspect-ratio:4/5;

        object-fit:cover;

        object-position:center 45%;

        margin:
                0
                0
                2rem;
    }

}

.quote-band{background:var(--deep);color:white;padding:30px 0}.quote-band .container{display:flex;justify-content:space-between;align-items:center;gap:20px}.quote-band h2{font:400 1.35rem Georgia,serif;margin:0}

.music-hero{display:grid;grid-template-columns:1.15fr .85fr;background:var(--dark);color:white;min-height:350px}.music-hero .copy{padding:55px 6vw}.music-hero img{width:100%;height:350px;object-fit:cover;object-position:center 28%}
.track-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:45px}.tracks{display:grid;gap:12px}.track{display:grid;grid-template-columns:65px 1fr auto;align-items:center;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.track .thumb{width:65px;height:65px;background:linear-gradient(145deg,#e8d7bd,#f7efdf);display:grid;place-items:center;font:italic .7rem Georgia,serif}.album-card{background:#f2e6d5;padding:30px;text-align:center}.album-cover{aspect-ratio:1/1;background:linear-gradient(145deg,#d8c18e,#fbf4e6);display:grid;place-items:center;font:italic 2rem Georgia,serif;color:var(--deep);margin-bottom:20px}


/* =========================================================
   MUSIC PAGE – LET PATIENCE ALBUM SHOWCASE
   ========================================================= */

.album-showcase{
    position:relative;
    overflow:hidden;
    padding:70px 0 90px;

    background:
            linear-gradient(
                    180deg,
                    #f8f2e9 0%,
                    #f6efe5 60%,
                    #efe2ce 100%
            );
}


/* Soft decorative background at the bottom */
.album-showcase::before,
.album-showcase::after{
    content:"";
    position:absolute;
    bottom:-60px;

    width:42%;
    height:220px;

    background:
            radial-gradient(
                    ellipse at center,
                    rgba(214,185,144,.35) 0%,
                    rgba(214,185,144,.18) 45%,
                    rgba(214,185,144,0) 75%
            );

    pointer-events:none;
}

.album-showcase::before{
    left:-4%;
}

.album-showcase::after{
    right:-4%;
}


.album-showcase-inner{
    position:relative;
    z-index:1;
}


/* =========================
   ALBUM PAGE HEADING
   ========================= */

.album-showcase-header{
    max-width:850px;
    margin:0 auto 50px;
    text-align:center;
}


.album-title{
    margin:0 0 12px;

    font:
            400 clamp(3rem,6vw,5rem) / 1
            Georgia,
            serif;

    color:var(--ink);
}


.album-subtitle-wrap{
    display:flex;
    align-items:center;
    justify-content:center;

    gap:18px;

    margin-bottom:18px;
}


.album-line{
    width:160px;
    max-width:18vw;
    height:1px;

    background:
            linear-gradient(
                    90deg,
                    transparent 0%,
                    var(--gold) 25%,
                    var(--gold) 75%,
                    transparent 100%
            );
}


.album-subtitle{
    margin:0;

    color:var(--gold);

    font:
            400 1.1rem
            Georgia,
            serif;

    letter-spacing:.32em;

    text-transform:uppercase;
}


.album-description{
    max-width:720px;

    margin:0 auto;

    color:#443c35;

    font:
            1.15rem / 1.6
            Arial,
            Helvetica,
            sans-serif;
}


/* =========================
   ALBUM CONTENT
   ========================= */

.album-content{
    display:grid;

    grid-template-columns:
        1fr
        1fr;

    gap:60px;

    align-items:start;
}


/* =========================
   LEFT COLUMN – ALBUM COVER
   ========================= */

.album-left{
    text-align:center;
}


.album-cover-card{
    max-width:460px;

    margin:
            0
            auto
            28px;
}


.album-cover-image{
    width:100%;
    height:auto;

    border-radius:12px;

    box-shadow:
            0 10px 30px
            rgba(42,36,31,.15);
}


/* Optional fallback if the cover image is unavailable */
.album-cover-placeholder{
    aspect-ratio:1 / 1;

    border-radius:12px;

    padding:40px 25px;

    display:flex;
    flex-direction:column;

    justify-content:center;
    align-items:center;

    text-align:center;

    color:#111;

    background:
            linear-gradient(
                    180deg,
                    rgba(248,236,214,1) 0%,
                    rgba(229,197,141,1) 55%,
                    rgba(129,91,31,.95) 100%
            );

    box-shadow:
            0 10px 30px
            rgba(42,36,31,.15);
}


.cover-script{
    display:block;

    margin-bottom:18px;

    font-family:
            "Brush Script MT",
            "Segoe Script",
            cursive;

    font-size:4rem;

    line-height:1;
}


.cover-name{
    display:block;

    font-size:2rem;

    letter-spacing:.22em;

    text-transform:uppercase;
}


/* =========================
   COMING SOON AREA
   ========================= */

.coming-soon-block{
    margin-top:8px;

    text-align:center;
}


.coming-soon-brush{
    display:inline-block;

    min-width:280px;

    padding:
            12px
            36px;

    color:var(--gold);

    background:
            linear-gradient(
                    90deg,
                    rgba(205,164,99,.15) 0%,
                    rgba(205,164,99,.42) 15%,
                    rgba(205,164,99,.55) 50%,
                    rgba(205,164,99,.42) 85%,
                    rgba(205,164,99,.15) 100%
            );

    font-family:
            "Brush Script MT",
            "Segoe Script",
            cursive;

    font-size:3rem;

    line-height:1;
}


.coming-soon-text{
    margin:
            16px
            0
            8px;

    color:#564d45;

    font-size:.98rem;

    letter-spacing:.15em;

    text-transform:uppercase;
}


.coming-soon-accent{
    color:var(--gold);

    font-size:1rem;

    letter-spacing:.4em;
}


/* =========================
   RIGHT COLUMN – TRACK LIST
   ========================= */

.album-right{
    padding-top:12px;
}


.tracklist-heading{
    width:100%;
    max-width:360px;

    margin:
            0
            auto
            26px;

    padding:
            14px
            24px;

    text-align:center;

    color:white;

    background:
            linear-gradient(
                    90deg,
                    rgba(174,117,32,.55) 0%,
                    rgba(174,117,32,.95) 18%,
                    rgba(174,117,32,1) 50%,
                    rgba(174,117,32,.95) 82%,
                    rgba(174,117,32,.55) 100%
            );

    border-radius:999px;

    font:
            400 1.05rem
            Georgia,
            serif;

    letter-spacing:.22em;

    text-transform:uppercase;
}


.album-track-list{
    display:flex;
    flex-direction:column;
}


.album-track{
    display:grid;

    grid-template-columns:
        60px
        1px
        1fr
        34px;

    align-items:center;

    gap:18px;

    padding:
            14px
            0;

    border-bottom:
            1px solid
            rgba(137,90,20,.16);
}


.track-no{
    color:var(--gold);

    text-align:center;

    font:
            600 1.05rem
            Georgia,
            serif;

    letter-spacing:.05em;
}


.track-divider{
    width:1px;
    height:32px;

    background:
            rgba(137,90,20,.35);
}


.track-name{
    color:var(--ink);

    font:
            400 1.15rem
            Georgia,
            serif;
}


.track-icon{
    color:var(--gold);

    font-size:1.5rem;

    line-height:1;

    text-align:right;
}


/* =========================================================
   MUSIC PAGE RESPONSIVE
   ========================================================= */

@media(max-width:900px){

    .album-content{
        grid-template-columns:1fr;

        gap:45px;
    }

    .album-right{
        padding-top:0;
    }

    .tracklist-heading{
        margin-left:auto;
        margin-right:auto;
    }

}


@media(max-width:560px){

    .album-showcase{
        padding:
                55px
                0
                70px;
    }


    .album-subtitle-wrap{
        gap:10px;
    }


    .album-line{
        width:70px;
    }


    .album-subtitle{
        font-size:.9rem;

        letter-spacing:.2em;
    }


    .album-description{
        font-size:1rem;
    }


    .coming-soon-brush{
        width:100%;
        min-width:0;

        padding:
                10px
                20px;

        font-size:2.3rem;
    }


    .album-track{
        grid-template-columns:
            44px
            1px
            1fr
            24px;

        gap:12px;
    }


    .track-name{
        font-size:1rem;
    }

}


.journey-hero{height:650px;position:relative}.journey-hero img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.journey-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.6),rgba(0,0,0,.1))}.journey-hero .copy{position:absolute;left:max(30px,calc((100% - var(--max))/2));top:70px;z-index:2;color:white}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.journey-card{background:var(--paper);border:1px solid var(--line)}.journey-card img{width:100%;height:180px;object-fit:cover;object-position:center 28%}.journey-card div{padding:15px}.journey-card h3{font:600 1rem Georgia,serif;margin:0 0 6px}.journey-card p{font-size:.8rem;color:var(--muted)}

.contact{display:grid;grid-template-columns:.85fr 1.15fr;min-height:620px}.contact>img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.contact-panel{padding:55px;background:var(--paper)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:.7rem;font-weight:700;text-transform:uppercase;margin-bottom:5px}input,textarea{width:100%;border:1px solid var(--line);padding:.85rem;background:white;font:inherit}textarea{min-height:180px}.row{margin-bottom:15px}.hp{position:absolute;left:-9999px}

footer{background:#efe3d4;padding:45px 0 20px}.footer-grid{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:35px}footer h4{font-size:.72rem;text-transform:uppercase}footer a{display:block;text-decoration:none;color:var(--muted);font-size:.82rem;margin:.3rem 0}.foot-bottom{border-top:1px solid #d6c4ad;margin-top:25px;padding-top:15px;display:flex;justify-content:space-between;font-size:.7rem;color:var(--muted)}

@media(max-width:850px){.links{display:none}.menu{display:block}.social{display:none}.welcome,.page-hero-grid,.story,.music-hero,.track-layout,.contact{grid-template-columns:1fr}.music-row,.journey-grid{grid-template-columns:repeat(2,1fr)}.hero:after{background:linear-gradient(180deg,rgba(246,239,229,.9),rgba(246,239,229,.5),transparent)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.music-row,.journey-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.container{width:min(var(--max),calc(100% - 28px))}.hero h1{font-size:3.7rem}.contact-panel{padding:30px}.foot-bottom{flex-direction:column;gap:8px}}