html, body {
    margin: 0;
    padding: 0;
}

/* GLOBAL BODY -------------------------------------------------- */
body {
    background: #f5f3e0;
    text-align: center;
    font: 12px Arial, sans-serif;
    color: #000; /* FIXED: was #FFF causing unreadable text */
    margin: 0 auto;
}

/* TYPOGRAPHY -------------------------------------------------- */
p, h1, h2, h3, h4, h5, h6 {
    font-size: 1em;
    line-height: 1.5em;
    color: #000;
    text-align: justify;
    font-family: Arial, Helvetica, sans-serif;
    padding-left: 10px;
}

p {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 1.2em;
    line-height: 1.5em;
    color: #333;
}

h1 img {
    display: block;
}

img {
    border: 0;
}

.imgIcon {
    border: 0;
    padding: 10px;
}

a {
    color: #155E67;
    font-weight: bold;
    text-decoration: none;
}

a:hover {
    color: #036;
    text-decoration: underline;
}

.left { float: left; }
.right { float: right; }
.more { text-align: right; }
.clear { clear: both; }

/* PAGE WRAPPER ------------------------------------------------ */
#body {
    position: relative;
    margin: 0 auto 0 4px;
    width: 896px;
    background: #000;
    border: thin solid #333;
}

#wrapper {
    text-align: left;
    margin: 0 auto;
    width: 900px;
    background: #000;
    border: thin solid #999;
}

/* HEADER ------------------------------------------------------ */
#head {
    width: 890px;
    overflow: auto;
    background: #000;
}

#head span {
    position: relative;
    top: -145px;
    left: 200px;
    z-index: 2;
}

h1 {
    font-size: 16px;
    line-height: normal;
    color: #300;
}

h2 {
    font-size: 14px;
    line-height: 1.5em;
    color: #000;
}

/* MENU BUTTONS ------------------------------------------------ */
.m1, .m2, .m3, .m4, .m5, .m6, .m7 {
    width: 100px;
    height: 40px;
    color: #FFF;
}

.m1, .m3, .m4, .m5, .m6 {
    background: url(none);
}

.m1 { float: left; }

/* NAVIGATION -------------------------------------------------- */
#nav ul li {
    list-style-type: none;
    float: left;
    color: #FFF;
    display: inline;
}

#nav {
    font-weight: bold;
    text-align: center;
    width: 900px;
    color: #FFF;
    height: 60px;
    background: #999 url(../images/nav_bgg.jpg) no-repeat;
}

#nav a {
    text-decoration: none;
    outline: none;
    color: #F5F3E0;
    line-height: 35px;
    font-size: 14px;
    display: block;
    padding-right: 40px;
    text-align: center;
    margin: 0;
}

/* TOP NAV ----------------------------------------------------- */
#topnav {
    position: absolute;
    top: 4px;
    left: 2px;
    padding: 5px 5px 0;
    background: #E7E8EA;
    width: 100px;
    height: 0;
    margin: 0;
    border: none;
}

#topnav a {
    font-weight: normal;
    color: #FF7F00;
}

#topnav a:hover {
    color: white;
}

/* LEFT BOX ---------------------------------------------------- */
#left-box {
    position: absolute;
    top: 270px;
    left: 0;
    width: 317px;
    height: 96px;
    background: #131212 url(images/left_bg.jpg) repeat-x;
}

#left-box .inner {
    padding: 20px 0 0 8px;
}

#left-box h2 {
    margin: 10px 0 0 0;
}

#left-box p.date {
    font-weight: bold;
}

#left-box p {
    margin: 3px 2.5em 1em 1.3em;
}

/* MAIN CONTENT ------------------------------------------------ */
.mainContent {
    color: #000; /* FIXED */
    width: 870px;
    float: none;
    background: #E7E7E7;
    overflow: auto;
    position: relative;
    padding: 10px;
}

/* CONTENT AREA ------------------------------------------------ */
.content {
    color: #000; /* FIXED */
    width: 860px;
    overflow: auto;
    float: left;
    padding: 15px 20px;
    background: #E7E7E7;
    margin: 0;
}

/* SIDEBAR ----------------------------------------------------- */
.sideBar {
    float: right;
    width: 200px;
    background: #E7E7E7;
    color: #000; /* FIXED */
    padding: 15px;
    border-right: thin solid #FFF;
    height: 420px;
    margin: 15px;
}

/* CONTENT BOTTOM --------------------------------------------- */
#content-bot {
    background: bottom url(images/body_bg.gif) repeat-x;
    margin-left: 1px;
    overflow: auto;
    height: 254px;
}

#content .inner {
    padding: 10px 27px;
    background: #1E1E1E;
}

#content .date {
    margin-top: 0.5em;
}

#content p {
    margin: 0.9em;
}

/* FACEBOOK ICON FIX ------------------------------------------ */
#connect {
    width: 170px;
    margin: 20px 0 0 auto;
    text-align: right;
}

/* TESTIMONIAL TEXT FIX ---------------------------------------- */
marquee p {
    color: #000;
    font-size: 1.2em;
}

#connect {
  float: right;
  margin-top: 10px;
}

/* Store image layout rules */
.img {
    width: 216px;
    height: 450px;
    float: left;
    margin: 10px;
}

.img img {
    width: 216px;
    height: auto;
}

#store-container {
    width: 750px;      /* fits 3 images + margins */
    margin: 0 auto;    /* centers the entire grid */
}

#store-container .desc p {
    color: #e6e6e6;
}

.img {
    margin: 25px;
}

.gallery-footer {
    background-color: #000;
    color: #fff;
    padding: 40px 20px;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
}

.gallery-footer a {
    color: #fff;
    text-decoration: none;
    margin: 0 15px;
    font-size: 16px;
    letter-spacing: 0.5px;
}

.gallery-footer a:hover {
    color: #d4af37; /* soft metallic gold */
}

.footer-links {
    margin-bottom: 30px;
}

.footer-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 20px auto;
    max-width: 900px;
}

.footer-divider .gold-line {
    flex: 1;
    height: 1px;
    background-color: #d4af37; /* soft metallic gold */
    margin: 0 15px;
}

.footer-divider .footer-phrase {
    color: #d4af37; /* soft metallic gold */
    font-size: 18px;
    letter-spacing: 1px;
    white-space: nowrap;
}

.footer-bottom {
    margin-top: 30px;
    font-size: 14px;
    color: #ccc;
}

.developer-credit {
    margin-top: 5px;
    font-size: 13px;
    color: #888;
}

.footer-bottom {
    margin-top: 30px;
    font-size: 14px;
    color: #888; /* same as Developed by */
}

.footer-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 890px; /* matches your page width */
    margin: 10px auto; /* tight spacing */
}

.footer-divider .gold-line {
    width: 200px; /* fixed equal length */
    height: 1px;
    background-color: #d4af37; /* soft metallic gold */
}

.footer-divider .footer-phrase {
    color: #d4af37;
    font-size: 16px;
    letter-spacing: 0.5px;
    margin: 0 15px; /* spacing between lines and text */
    white-space: nowrap;
}

/* Footer Container */
.gallery-footer {
    background-color: #000;
    max-width: 890px;        /* matches your page width */
    margin: 40px auto 0 auto;
    padding: 30px 20px;
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
}

/* Navigation Links */
.footer-links a {
    color: #fff;
    text-decoration: none;
    margin: 0 12px;
    font-size: 16px;
    letter-spacing: 0.5px;
}

.footer-links a:hover {
    color: #d4af37; /* soft metallic gold */
}

/* Theme Bar (Gold Lines + Theme Text) */
.theme-bar {
    margin: 25px auto;
    text-align: center;
}

.gold-line {
    width: 380px;            /* FIXED LENGTH — Option 1 */
    height: 1px;
    background-color: #d4af37;
    margin: 8px auto;
}

.theme-text {
    color: #d4af37;
    font-size: 20px;
    letter-spacing: 1px;
    margin: 6px 0;
    white-space: nowrap;
}

/* Legal Text (Gray-Silver) */
.footer-bottom {
    margin-top: 25px;
    font-size: 14px;
    color: #888; /* gray-silver */
}

.developer-credit {
    margin-top: 5px;
    font-size: 13px;
    color: #888;
}

/* Footer Container */
.gallery-footer {
    background-color: #000;
    max-width: 890px;        /* matches your page width */
    margin: 0 auto;          /* removes gap above footer */
    padding: 15px 10px;      /* thinner footer */
    text-align: center;
    font-family: Arial, Helvetica, sans-serif;
}

/* Navigation Links (Option B Blue) */
.footer-links a {
    color: #7fa6d9;          /* medium blue */
    text-decoration: none;
    margin: 0 8px;           /* tighter spacing */
    font-size: 14px;         /* smaller text so all fit on one line */
    letter-spacing: 0.5px;
}

.footer-links a:hover {
    color: #d4af37;          /* soft metallic gold hover */
}

/* Theme Bar (Gold Lines + Theme Text) */
.theme-bar {
    margin: 15px auto 10px auto;  /* tighter spacing */
    text-align: center;
}

.gold-line {
    width: 380px;            /* fixed length — Option 1 */
    height: 1px;
    background-color: #d4af37;
    margin: 6px auto;
}

.theme-text {
    color: #d4af37;
    font-size: 18px;         /* slightly smaller for elegance */
    letter-spacing: 1px;
    margin: 4px 0;
    white-space: nowrap;
}

/* Legal Text (Gray-Silver) */
.footer-bottom p {
    margin: 3px 0;
    font-size: 13px;
    color: #aaa;             /* lighter silver for visibility */
}

.developer-credit {
    font-size: 12px;
    color: #aaa;
}

/* Force center alignment for legal text */
.footer-bottom,
.footer-bottom p,
.developer-credit {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
}

#store-container {
    max-width: 890px;
    margin: 0 auto;
    text-align: center;
}

#store-container .img {
    width: 260px;
    margin: 10px;
    display: inline-block;
    vertical-align: top;
}

#store-container,
#store-container p,
#store-container .desc,
#store-container .desc p {
    color: #7fa6d9;
}

#store-container .desc {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.4;
}

#store-container p {
    margin-bottom: 12px;
}

/* Force captions to match image width */
#store-container .img {
    width: 260px;
    margin: 10px;
    display: inline-block;
    vertical-align: top;
    text-align: center;
}

#store-container .img p,
#store-container .img .desc {
    max-width: 260px;
    margin: 0 auto;
    display: block;
    word-wrap: break-word;
}

#store-container h1,
#store-container h2,
#store-container h3,
#store-container h4,
#store-container h5,
#store-container h6 {
    color: #7fa6d9;
}

/* ============================
   STORE PAGE FIXES
   ============================ */

/* 1. Make all store blocks the same width */
.store-block {
    width: 30%;
    margin: 1.5%;
    box-sizing: border-box;
    display: inline-block;
    vertical-align: top;
    text-align: center;
}

/* 2. Make captions stay inside the block */
.store-block p {
    max-width: 100%;
    margin: 10px auto 0 auto;
    line-height: 1.3;
    color: #dcdcdc; /* light silver text */
}

/* 3. Make all images scale consistently */
.store-block img {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

/* 4. Center the entire store grid */
.store-container {
    width: 90%;
    margin: 0 auto;
}

/* 5. Fix intro text color */
.store-intro {
    color: #e6e6e6; /* light gray-silver */
    font-size: 1.1rem;
    line-height: 1.5;
    margin-bottom: 25px;
}

.store-block {
    width: 30%;
    display: inline-block;
    vertical-align: top;
    margin: 1%;
    text-align: center;
}

.store-block img {
    width: 100%;
    height: auto;
    display: block;
}

.store-block p {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.3;
    word-wrap: break-word;
}

/* ============================
   STORE PAGE ALIGNMENT FIX
   ============================ */

/* 1. Make each product block the same width */
#store-container .img {
    width: 30%;
    display: inline-block;
    vertical-align: top;
    margin: 1.5%;
    text-align: center;
    box-sizing: border-box;
}

/* 2. Make images scale properly */
#store-container .img img {
    width: 100%;
    height: auto;
    display: block;
}

/* 3. Style the description text */
#store-container .desc p {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.3;
    color: #dcdcdc;
    word-wrap: break-word;
}

/* 4. Center the entire grid */
#store-container {
    width: 90%;
    margin: 0 auto;
}

/* Store item text color */
.desc p,
.desc p strong,
.desc p a {
    color: #7fa6d9;
}

/* Intro text color */
.mainContent p,
.intro p {
    color: #7fa6d9;
}

/* Full-width banner */
.ew-banner {
    width: 100%;
    height: 360px;
    background: linear-gradient(
        to bottom,
        #d7d9dd 0%,
        #c7c9ce 40%,
        #bfc2c7 100%
    );
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 40px;
}

/* Entrance shadow motif */
.ew-entrance-shadow {
    width: 80px;
    height: 100%;
    background: rgba(0,0,0,0.15);
    box-shadow: 10px 0 20px rgba(0,0,0,0.25);
    position: absolute;
    left: 0;
    top: 0;
}

/* Horizontal row of frames */
.ew-frames-row {
    display: flex;
    gap: 20px;
    margin-left: 100px;
}

.ew-frame {
    width: 220px;
    height: 165px;
    background: #fff;
    border: 3px solid #e0e0e0;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
    overflow: hidden;
    position: relative;
}

.ew-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1.5s ease-in-out;
}

/* Title block */
.ew-title-block {
    position: absolute;
    right: 40px;
    text-align: right;
}

.ew-title-block h1 {
    font-size: 36px;
    letter-spacing: 3px;
    margin: 0;
    color: #222;
}

.ew-title-block p {
    margin: 5px 0 0;
    font-size: 16px;
    letter-spacing: 1px;
    color: #444;
}

/* Navigation */
.ew-nav {
    background: #fff;
    padding: 10px 0 0;
    text-align: center;
}

.ew-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ew-nav li {
    display: inline-block;
    margin: 0 20px;
}

.ew-nav a {
    text-decoration: none;
    font-size: 18px;
    color: #222;
}

.ew-gold-line {
    width: 100%;
    height: 3px;
    background: linear-gradient(to right, #d4af37, #f7e27c, #d4af37);
    margin-top: 10px;
}

.ew-header-container {
    width: 890px;
    margin: 0 auto;
    position: relative;
}

.ew-title-block {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
    position: relative;
}

.rotating-img {
    transition: opacity 0.8s ease-in-out;
    opacity: 1;
}


