@font-face {
    font-family: "CheddarGothic";
    src: url("../fonts/CheddarGothic-Sans.woff") format('woff');
}

@font-face {
    font-family: "AdventProMedium";
    src: url("../fonts/AdventPro-Medium.woff") format('woff');
}

/* Base layout */
body {
    text-align: center;
    color: #333;
    background: #fff;
    font-family: "AdventProMedium";
    margin: 0;
}

#logo {
    width: 150px;
    height: auto;
}

/* Common containers */
div#container {
    max-width: 1200px;
    margin: 0 auto;
}

#container > div {
    display: inline-block;
    padding: 0px 30px;
    text-align: center;
   
}

#container > div img {
    max-width: 300px;
    height: auto;
}

/* Headings */
h1, h3 {
    font-family: "CheddarGothic";
    background-color: #c01a14;
    color: #FFF;
    padding: 10px;
    letter-spacing: 0.066em;
    font-weight: 400;
    font-style: normal;
}

h2 {
    
}

/* Buttons */
button {
    background-color: #c01a14;
    color: #FFF;
    line-height: 50px;
    border: 1px solid #CCC;
    cursor: pointer;
    padding: 0px 25px;
    margin: 10px 35px;
    font-family: 'sans-serif';
    min-width: 300px;
    font-weight: bold;
    font-size: 14px;
}

a {
    color: #d6b85a;
}

.odd h3 { background-color: #312c2c; }

/* Simple utility */
#link-menu { margin: 0 auto; text-align: center; padding-top: 10px; padding-bottom: 20px; }
#link-menu a { padding: 0 5px; }

/* FAQ shared */
.faq-list { max-width: 900px; margin: 20px auto; padding: 0 10px; }
.faq-item { text-align:left; background:#fff; border:1px solid #ddd; border-radius:8px; box-shadow:0 0 6px #ccc; padding:16px; margin:14px 0; }
.faq-item .q { font-weight:bold; margin:0 0 6px; }
.faq-item .a { margin:0; line-height:1.55; }
.muted { color:#666; font-size:14px; }

/* Contact/About text blocks */
.about-content, .contact-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: left;
    padding: 20px;
    line-height: 1.6;
    font-family: 'AdventProMedium';
    font-size: 16px;
}

.contact-info { background-color: #f5f5f5; padding: 20px; border-radius: 5px; margin: 20px 0; }
.contact-info h3 { margin-top: 0; margin-bottom: 15px; background-color: #312c2c; }
.contact-info p { margin: 10px 0; font-size: 18px; }
.contact-info a { color: #c01a14; text-decoration: none; }
.contact-info a:hover { text-decoration: underline; }

/* About page carousel */
.about-carousel { display:flex; gap:16px; overflow-x:auto; overflow-y:hidden; width:100%; max-width:100%; padding:8px 2px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width: thin; scrollbar-color: #c01a14 rgba(0,0,0,0.2); }
.about-carousel img { flex:0 0 auto; height:200px; max-height:45vh; width:auto; border:none; scroll-snap-align:start; scroll-snap-stop:always; }
/* Modern thin scrollbar */
.about-carousel::-webkit-scrollbar { height: 8px; }
.about-carousel::-webkit-scrollbar-track { background: rgba(0,0,0,0.12); border-radius: 10px; }
.about-carousel::-webkit-scrollbar-thumb { background: #c01a14; border-radius: 10px; }
.about-carousel::-webkit-scrollbar-thumb:hover { background: #a01511; }
@media (min-width: 900px) {
    .about-carousel { justify-content:flex-start; }
    .about-carousel img { height:240px; }
}


/* Homepage redesign */
.home-hero { background:#0d3a34; color:#e9f3ee; border-radius:10px; padding:26px; display:grid; grid-template-columns:1fr; gap:18px; }
.home-hero__title { font-family:"CheddarGothic"; font-size:42px; margin:0; background:#c01a14; color:#fff; padding:12px 16px; display:inline-block; }
.home-hero__sub { font-size:20px; line-height:1.6; margin:0; padding: 20px 6px; }
.home-cta { display:flex; gap:10px; flex-wrap:wrap; }
.home-cta a { text-decoration:none; }
.home-btn { display:inline-block; padding:12px 18px; border:1px solid #e9f3ee; color:#062421; background:#e9f3ee; font-weight:bold; border-radius:6px; font-size:16px; }
.home-btn.secondary { background:transparent; color:#e9f3ee; }

.home-wrap { max-width:900px; margin:0 auto; padding:10px 14px 30px; display:grid; grid-template-columns:1fr; gap:18px; }
.home-rightcard { background:#062421; color:#e9f3ee; border-radius:10px; padding:24px; }
.home-heading { font-family:"CheddarGothic"; font-size:28px; margin:0 0 10px; text-align:center; }
.home-heading.underlined::after { content:""; display:block; width:130px; height:3px; background:#d6b85a; margin:8px auto 0; border-radius:2px; }
.home-label { text-align:center; font-family:"CheddarGothic"; margin:0 0 4px; }
.home-line { font-size:20px; margin:6px 0; text-align:left; }

.feature-grid { display:grid; grid-template-columns:1fr; gap:14px; }
.feature-card { position:relative; background:#062421; border-radius:10px; overflow:hidden; }
.feature-card__img { width:100%; height:240px; object-fit:cover; display:block; }
.feature-card__label { position:absolute; left:10px; bottom:10px; background:#c01a14; color:#fff; font-family:"CheddarGothic"; padding:6px 10px; font-size:18px; }

.menu-strip { display:flex; gap:12px; overflow-x:auto; overflow-y:hidden; padding:8px 2px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width: thin; scrollbar-color: #c01a14 rgba(0,0,0,0.2); }
.menu-strip img { flex:0 0 auto; height:160px; width:auto; scroll-snap-align:start; border-radius:8px; }
.menu-strip::-webkit-scrollbar { height:8px; }
.menu-strip::-webkit-scrollbar-track { background: rgba(0,0,0,0.12); border-radius:10px; }
.menu-strip::-webkit-scrollbar-thumb { background:#c01a14; border-radius:10px; }

.contact-band { background:#0d3a34; color:#e9f3ee; border-radius:10px; padding:16px; text-align:left; }
.contact-line { margin:4px 0; font-size:18px; }
.contact-link { color:#e9f3ee; text-decoration:underline; }

/* Reusable narrow dark card styles (shared with Working Hours) */
.wh-card { background:#062421; color:#e9f3ee; border-radius:10px; padding:24px; }
.wh-heading { font-family:"CheddarGothic"; font-size:28px; margin:0 0 10px; letter-spacing:.04em; text-align:center; }
.wh-heading-main::after { content:""; display:block; width:130px; height:3px; background:#d6b85a; margin:8px auto 0; border-radius:2px; }
.wh-label { text-align:center; font-family:"CheddarGothic"; margin:0 0 4px; }
.wh-line { font-size:20px; margin:6px 0; text-align:left; }
.wh-social { display:flex; flex-direction:column; gap:12px; margin-top:8px; }
.wh-btn { display:inline-block; padding:12px 18px; border:1px solid #e9f3ee; color:#062421; background:#e9f3ee; text-decoration:none; font-weight:bold; border-radius:6px; font-size:16px; }
.wh-btn.secondary { background:transparent; color:#e9f3ee; border-color:#e9f3ee; }


@media (min-width: 900px) {
  .feature-grid { grid-template-columns: repeat(3, 1fr); }
}

/* Site footer */
.site-footer { background:#062421; color:#e9f3ee; padding:24px 14px; }
.site-footer__inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:1fr; gap:20px; column-gap:24px; }
.site-footer h4 { margin:0 0 8px; font-family:"CheddarGothic"; letter-spacing:.04em; font-size:16px; }
.site-footer p { margin:6px 0; font-size:14px; }
.site-footer .footer-col { padding-right:10px; position:relative; padding-left:18px; }
.site-footer .footer-col:first-child { padding-left:0; }
.site-footer .footer-col:not(:first-child):before { content:""; position:absolute; left:0; top:0; bottom:0; width:1px; background:#d6b85a; opacity:.6; }
.site-footer .footer-actions {display:flex;flex-direction:column;gap: 10px;align-content: stretch;justify-content: center;align-items: center;padding-top: 10px;}
.site-footer .footer-actions .wh-btn { width:180px; text-align:center; padding:8px 12px; font-size:14px; }

@media (min-width: 900px) {
  .site-footer__inner { grid-template-columns: 1.1fr .9fr .9fr 1fr; }
}

/* Mobile footer: switch vertical divider to horizontal */
@media (max-width: 899px) {
  .site-footer .footer-col { padding-left:0; }
  .site-footer .footer-col:not(:first-child):before {
    left:0;
    right:auto;
    top:-8px;
    bottom:auto;
    width:100%;
    height:1px;
    background:#d6b85a;
    opacity:.6;
  }
}

