    :root{--red:#A01C23;--cream:#f1dcc9;--black:#0e0e0e
    --font-family-sans-serif: 'Apercu_Medium','Ysabeau-Medium',-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-family-monospace: 'Apercu_Medium','Ysabeau-Medium',SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace

    }
    *{box-sizing:border-box}
    @font-face {
    font-family: 'Apercu_Medium';
    src: url(./fonts/Apercu/Apercu_Medium.ttf) format('truetype');
  }
  


  @font-face {
    font-family: 'Ysabeau-Medium';
    src: url(./fonts/static/Ysabeau-Medium.ttf) format('truetype');
  }
  
  @font-face {
    font-family: 'Apercu_Light';
    src: url(./fonts/Apercu/Apercu_Light.ttf) format('truetype');
  }
    html,body{height:100%;font-family: 'Ysabeau-Medium';
}

    body{    font-family: 'Ysabeau-Medium',system-ui,Arial,Helvetica,sans-serif;margin:0;color:#222;background:#fff}
    a{color:inherit;text-decoration:none}

    /* Header */
    .harmonia-header{position:fixed;top:0;left:0;right:0;height:76px;display:flex;align-items:center;padding:12px 28px;background:#FFF;z-index:2000;transition:background .32s ease,box-shadow .32s ease}position:fixed;top:0;left:0;right:0;height:76px;display:flex;align-items:center;padding:12px 28px;background:transparent;z-index:1400;transition:background .32s ease,box-shadow .32s ease}
    .harmonia-header.scrolled{background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.06)}
    .harmonia-inner{display:flex;align-items:center;width:100%;gap:20px;justify-content:space-between}
    .harmonia-logo{display:flex;align-items:center}
    .harmonia-logo img{height:40px;max-width:160px;display:block;object-fit:contain}
    .harmonia-contact{
    font-size: 13px;
    color:#A01C23;
    text-align: left;
    justify-content: flex-start;
    margin-left: 10% !important;
    margin-right: auto !important;
    text-align: left !important;
    display: flex;
    gap: 6px;
    justify-content: flex-start;
    font-family: Apercu_Light;
   }

    /* hamburger */
    .harmonia-menu-btn{width:36px;height:30px;display:flex;flex-direction:column;justify-content:space-between;background:none;border:0;padding:6px 4px;cursor:pointer}
    .harmonia-menu-btn span{display:block;height:3px;background:#A01C23;border-radius:2px;transition:transform .48s ease,opacity .35s ease}
    .harmonia-menu-btn.is-open span:nth-child(1){transform:translateY(10px) rotate(45deg)}
    .harmonia-menu-btn.is-open span:nth-child(2){opacity:0}
    .harmonia-menu-btn.is-open span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}

    /* off-canvas panel */
    .harmonia-menu-panel{display:flex;flex-direction:column;position:fixed;top:0;right:-100%;width:360px;height:100vh;background:#0f0f10;color:#eaeaea;padding:34px;z-index:1500;box-sizing:border-box;overflow:auto;transform:translateX(80px);opacity:0;pointer-events:none;transition:transform .55s cubic-bezier(.2,1,.22,1),opacity .48s,right .55s}
    .harmonia-menu-panel.open{right:0;transform:translateX(0);opacity:1;pointer-events:auto;z-index: 2600;}
    
    .harmonia-menu-close{background:none;border:0;color:#fff;font-size:32px;cursor:pointer;position:absolute;top:20px;right:20px}
    .harmonia-menu-nav{flex:1;overflow-y:auto;margin-top:26px}
    .harmonia-menu-nav ul{list-style:none;padding:0;margin:0}
    .harmonia-menu-nav ul li{margin:18px 0}
    .harmonia-menu-nav ul li a{font-size:20px;color:#e6e6e6}
    .harmonia-menu-footer{margin-top:auto;padding-bottom:8px}
    .harmonia-menu-footer .socials{display:flex;gap:12px}

    /* overlay */
    #menuOverlay{position:fixed;inset:0;background:rgba(0,0,0,0.45);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .55s ease;z-index:1490}
    .menu-open #menuOverlay{opacity:1;pointer-events:auto}

    /* floating socials */
.floating-social{
  /* position:fixed;
  right:24px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  gap:14px;
  z-index:1600;
  pointer-events:auto; */

    top: 50%;
    gap: 14px;
    position: fixed;
    z-index: 20;
    right: 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-transform: rotate(-90deg) translate3d(50%, 0, 0);
    transform: rotate(-90deg) translate3d(50%, 0, 0);
    -webkit-transform-origin: 100% 100%;
    -ms-transform-origin: 100% 100%;
    transform-origin: 100% 100%;
    color: #a01c23;



}
/* .floating-social a{
  width:48px;
  height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#ffffff;
  border-radius:50%;
  color:#111;
  box-shadow:0 4px 14px rgba(0,0,0,0.12);
  font-weight:600;
  text-transform:uppercase;
  transition:all .25s ease;
} */

/* hide on mobile */
@media(max-width:720px){
  .floating-social{display:none !important}

}

/* Hero full-bleed Berlin style */
    .hero-visual{margin-top:76px;position:relative;width:100%;height:78vh;min-height:420px;overflow:hidden}
    .hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
    .hero-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
    .hero-inner{max-width:1180px;width:100%;padding:0 28px;display:flex;align-items:center;justify-content:center}
    .hero-text{color: #F7F0C3;text-align:center;pointer-events:auto}
    .hero-text h1{font-size:72px;line-height:0.95;margin:0;font-weight:800;letter-spacing:-1px}
    .hero-text .subtitle{margin-top:6px;font-size:18px;opacity:.92}

    /* Content area: story left, meta right on desktop */
    .content-wrap{max-width:1180px;margin:30px auto 30px;padding:0 20px;display:grid;grid-template-columns:1fr ;gap:48px;align-items:start; color: #252525;}
    .story h3{color:#252525;font-size:24px;margin-bottom:18px;margin-top: 0px;}
    .story p{color:#252525;line-height:1.8;font-family: Apercu_Light;}
    .meta .label{color:var(--red);font-size:12px;letter-spacing:1px;font-weight:700;margin-bottom:8px}
    .meta .value{font-size:16px;font-weight:700;margin-bottom:18px;color: #A01C23;font-family:Apercu_Light;}

    /* make meta appear in the second column */
    .story{grid-column:1}
    .meta{grid-column:2;display:block !important;}

    /* Gallery */
    .gallery{background:#A01C23;padding:0;margin-top:40px}
    .gallery-grid{
        /* max-width:1180px; */
        margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 70px;
    padding: 40px 40px 40px;
    }
    .gallery-grid img{width:100%;
        /* height:340px; */
        height:auto;
        object-fit:cover;border-radius:4px}

    /* Footer */
    .harmonia-footer{background:#A01C23;padding:40px 20px;color:#F7F0C3}
    .harmonia-footer .container{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 240px 240px 220px;gap:24px;align-items:start}
    .footer-quick-links ul,.footer-links{list-style:none;padding:0;margin:0; line-height: 1.8;}

    /* Responsive rules */
    @media(max-width:1024px){
      .hero-visual{height:64vh}
      .hero-text h1{font-size:56px}
    }

    @media(max-width:820px){
  /* iPad footer behaves like mobile */
  .harmonia-footer .container{display:block !important}
  .harmonia-footer .container > .footer-brand{
     grid-column:1 / 4 !important;
    width:100% !important;
    margin-bottom:24px !important;
  
  }
  

  .meta-desktop{
  margin-top: 0 !important;
  padding-top: 0px !important;
  align-self: start !important;
}


  .footer-quick-links,.footer-masters{display:inline-block;width:48%;vertical-align:top;padding:0 8px}
  .footer-right{width:100%;text-align:center;margin-top:18px}
  .mobile-copyright{display:block;margin-top:18px;text-align:center;font-family:Apercu_Light;font-size: 16px;}

      .hero-visual{height:54vh}
      .hero-text h1{font-size:48px}
      .content-wrap{grid-template-columns:1fr 260px;gap:36px}
      .gallery-grid img{height:260px}

    .harmonia-contact {display: none !important;}



    
    }

    /* MOBILE: show meta ABOVE STORY text */
    @media(max-width:720px){
  .harmonia-contact{display:none}
  .floating-social{display:none !important}
  .hero-visual{height:48vh;min-height:320px}
  .hero-text h1{font-size:38px}
  .hero-text .subtitle{font-size:14px}
  .content-wrap{grid-template-columns:1fr;gap:28px}
  .story{grid-column:1}
  .meta{grid-column:1 !important;display:grid !important;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
  .gallery-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .gallery-grid img{height:220px}
  .harmonia-menu-panel{width:100%}
  .meta-desktop{
  margin-top: 0 !important;
  padding-top: 0px !important;
  align-self: start !important;


}
.harmonia-menu-btn{
    opacity:1 !important;
    pointer-events:auto !important;
    visibility:visible !important;
  }
    }

    @media(max-width:480px){
      .hero-text h1{font-size:30px}
      .hero-visual{height:40vh}
      .gallery-grid{grid-template-columns:1fr}
      .gallery-grid img{height:220px}

      /* Footer mobile layout: 1 / 2 / 1 / 1 */
      
      .harmonia-footer .container > .footer-brand{width:100%;margin-bottom:18px}
      .footer-quick-links,.footer-masters{display:inline-block;width:48%;vertical-align:top;padding:0 8px}
      .footer-right{width:100%;text-align:center;margin-top:18px}
      .mobile-copyright{display:block;margin-top:18px;text-align:center;font-family:Apercu_Light;font-size: 12px;}

      .meta-desktop{
  margin-top: 0 !important;
  padding-top: 0px !important;
  align-self: start !important;
}
    }

  .menu-open .floating-social {
  display: none !important;
}
/* .menu-open .harmonia-menu-btn {

  visibility:hidden;
} */

.mobile-copyright{
    display:block;
    margin-top:22px;
    text-align:left;        /* ชิดซ้าย */
    font-size:13px;
    opacity:.95;
   font-family: 'Apercu_Light';
    /* ทำให้ตำแหน่งตรงกับข้อความ We are proud… */
    max-width:1180px;       /* ความกว้างคอนเทนต์หลัก */
    margin-left:auto;       /* จัดให้อยู่กลางกริด */
    margin-right:auto;      /* จัดให้อยู่กลางกริด */
    padding:0;         /* ระยะขอบเท่ากับส่วนอื่น */
}

.footer-menu{
    color: #D9DCD0;
    margin-top: -5px;
}

@media (min-width:1024px) and (max-width:1366px) {
  .hero-visual {
    height: 90vh !important;   /* ขยายเต็มสูง */
    min-height: 600px !important;
  }
}
@media (min-width:821px) and (max-width:1366px) {
  .harmonia-footer .container{
    display:block !important;
    width:100% !important;
  }
  .meta-desktop{
  margin-top: 0 !important;
  padding-top: 80px !important;
  align-self: start !important;
}

  /* .footer-brand{
    width:100% !important;
    margin-bottom:24px !important;
  } */

  .harmonia-footer .footer-brand{
    grid-column:1 / 4 !important;
    width:70% !important;
    margin-bottom:24px !important;
  }

  .footer-quick-links,
  .footer-masters{
    display:inline-block !important;
    width:40% !important;
    padding:0 12px !important;
    margin-bottom:24px !important;
  }

  .footer-right{
    width:100% !important;
    text-align:center !important;
    margin-top:14px !important;
  }

  .mobile-copyright{
    display:block !important;
    text-align:center !important;
    padding:0 20px;
    margin-top:22px !important;
  }
}
@supports (-webkit-touch-callout: none) {
  .floating-social{
    right: calc(24px + env(safe-area-inset-right)) !important;
  }
}

@media (min-width:821px) and (max-width:1366px){

  .meta-desktop{
  margin-top: 0 !important;
  padding-top: 80px !important;
  align-self: start !important;
}

  .harmonia-footer .container{
    display:grid !important;
    grid-template-columns: 1fr 1fr 1fr !important; /* แท้จริงอยากให้สมดุล */
    column-gap: 28px !important;
    width:100%;
  }

  /* ป้องกันการถูกบีบจนหาย */
  .harmonia-footer .footer-right{
    grid-column:3 !important;
    min-width:180px !important;
    text-align:center !important;
  }

  .harmonia-footer .footer-brand{
    grid-column:1 / 4 !important;
  }

  .harmonia-footer .footer-quick-links{
    grid-column:1 !important;
  }

  .harmonia-footer .footer-masters{
    grid-column:2 !important;
  }

  /* row 3 */
  .harmonia-footer .mobile-copyright{
    grid-column:1 / 4 !important;
    display:block !important;
    padding:0 !important;
  }
}
@media (min-width:1025px) {
.meta-desktop{
  margin-top: 0 !important;
  padding-top: 80px !important;
  align-self: start !important;
}
}

/* .hero-visual {
  background-image: url('../img/Bentley-header.JPG');
  background-size: cover;
  background-position: top center; 
}
.hero-visual img {
  display: none;
} */

.story-full {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-left: 10%;
    padding-right: 20%;
}
.head-blog{
  max-width:1180px;margin:140px auto 40px;padding:0 20px;
}
.text-header{
  /* font-size:54px; */
  font-size: clamp(32px, 5vw, 54px);
  font-weight:800;line-height:1.1;margin:0 0 18px;color:#A01C23;text-align:left;margin-left: 20%;margin-right: 10%;}
.text-group{font-size:14px;color:#666;margin-bottom:32px; margin-left: 20%; font-family: Apercu_Light;}
.img-blog{width:100%;overflow:hidden;border-radius:10px;margin-bottom:0px;}
.blog-img{width:100%;height:auto;object-fit:cover;object-position:center;display:block;}

/* Journal hover effect */
.journal-card{position:relative;transition:all .3s ease;}
.journal-card:hover{transform:translateY(-6px);}
.journal-card::after{content:"Read More →";display:block;position:static;background:none;color:var(--red);padding:0;margin-top:12px;border-radius:0;font-size:14px;opacity:0;transform:translateY(6px);transition:all .25s ease;pointer-events:none;}
.journal-card:hover::after{opacity:1;transform:translateY(0);}
  .journal-card:hover h3{color:var(--red) !important;}

  .group-tags{
    display:inline-block;background:#f1f1f1;padding:14px 22px;border-radius:10px;font-size:18px;color:#252525;margin-bottom: 10px;font-family: Apercu_Light;
  }

  @media (max-width: 900px) {
  .harmonia-menu-btn {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 9999 !important;
  }

  /* กันไม่ให้ถูก hide ตอน menu-open */
  .menu-open .harmonia-menu-btn {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}
