/* =========================================================
   Contact v1.0.03 — FAIVO-like clean two-column layout
   ========================================================= */
.hh-faivo-contact {
    --hhfc-bg: #edf6f3;
    --hhfc-ink: #0b4e45;
    --hhfc-text: #365b55;
    --hhfc-accent: #e5a13a;
    --hhfc-card: #ffffff;
    --hhfc-line: #d8e5e1;
    --hhfc-soft: #eef6f3;

    /* Full-width breakout from NukeViet's centered main container */
    position: relative;
    left: auto;
    width: auto;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 68px 30px 72px;
    box-sizing: border-box;
    overflow-x: clip;
    background: var(--hhfc-bg);
}

.hh-faivo-contact__grid {
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.22fr);
    gap: 38px;
    align-items: start;
}

.hh-faivo-contact__left {
    padding: 4px 0 0;
}

.hh-faivo-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #0c786c;
    font-size: 11px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.hh-faivo-kicker:before {
    content: "";
    width: 24px;
    height: 2px;
    background: var(--hhfc-accent);
}

.hh-faivo-contact h1 {
    margin: 18px 0 20px;
    color: var(--hhfc-ink);
    font-size: clamp(28px, 2.7vw, 36px);
    line-height: 1.14;
    letter-spacing: -.012em;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "Helvetica Neue", sans-serif;
    font-weight: 800;
    font-feature-settings: "kern" 1;
    text-rendering: optimizeLegibility;
}

.hh-faivo-lead {
    max-width: 555px;
    margin: 0;
    color: var(--hhfc-text);
    font-size: 16px;
    line-height: 1.75;
}

.hh-faivo-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 42px;
}

.hh-faivo-info-card {
    min-height: 126px;
    display: grid;
    grid-template-columns: 44px minmax(0,1fr);
    gap: 14px;
    align-items: start;
    padding: 22px 18px;
    border: 1px solid var(--hhfc-line);
    border-radius: 16px;
    background: var(--hhfc-card);
}

.hh-faivo-info-icon {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: #5d817a;
    background: #e9f3ef;
    font-size: 18px;
}

.hh-faivo-info-card span {
    display: block;
    margin: 2px 0 8px;
    color: #6f8983;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.hh-faivo-info-card strong,
.hh-faivo-info-card strong a {
    color: var(--hhfc-ink);
    font-size: 14px;
    line-height: 1.5;
    font-weight: 800;
    text-decoration: none;
}

.hh-faivo-info-card small {
    display: block;
    margin-top: 3px;
    color: #6f8983;
    font-size: 12px;
}

.hh-faivo-map-link {
    display: inline-flex;
    gap: 6px;
    margin-top: 8px;
    color: #0b8172 !important;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none !important;
}

.hh-faivo-quote {
    margin-top: 14px;
    padding: 22px 22px 20px;
    border-left: 3px solid var(--hhfc-accent);
    border-radius: 0 14px 14px 0;
    background: #fff8e8;
}

.hh-faivo-quote p {
    margin: 0 0 12px;
    color: #556c67;
    font-size: 14px;
    line-height: 1.65;
    font-family: "Times New Roman", Times, serif;
}

.hh-faivo-quote strong {
    color: #0b8172;
    font-size: 9px;
    letter-spacing: .12em;
}

.hh-faivo-contact__right {
    display: grid;
    gap: 24px;
}

.hh-faivo-touch-card,
.hh-faivo-map-card {
    border: 1px solid var(--hhfc-line);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 40px rgba(20, 72, 62, .05);
}

.hh-faivo-touch-card {
    padding: 34px 36px 28px;
}

.hh-faivo-touch-card h2 {
    margin: 16px 0 10px;
    color: var(--hhfc-ink);
    font-size: clamp(28px, 2.7vw, 36px);
    line-height: 1.14;
    letter-spacing: -.012em;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "Helvetica Neue", sans-serif;
    font-weight: 800;
    font-feature-settings: "kern" 1;
    text-rendering: optimizeLegibility;
}

.hh-faivo-touch-card > p {
    margin: 0 0 18px;
    color: var(--hhfc-text);
    font-size: 14px;
    line-height: 1.65;
}

.hh-faivo-touch-note {
    padding: 13px 15px;
    border-radius: 10px;
    color: #607d77;
    background: #eff6f3;
    font-size: 13px;
}

.hh-faivo-touch-note a {
    color: #0a8878;
    font-weight: 700;
    text-decoration: none;
}

.hh-faivo-privacy {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #dbe5e2;
    color: #7d918c;
    font-size: 10px;
}

.hh-faivo-map-card {
    padding: 26px 18px 18px;
}

.hh-faivo-map-head {
    min-height: 34px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 0 10px 14px;
}

.hh-faivo-map-head > span {
    color: #6b8580;
    font-size: 11px;
    text-align: right;
}

.hh-faivo-map-wrap {
    position: relative;
    overflow: hidden;
    height: 300px;
    border-radius: 4px 4px 14px 14px;
    background: #dfeae6;
}

.hh-faivo-map-wrap iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.hh-faivo-map-open {
    position: absolute;
    top: 12px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    border-radius: 6px;
    color: #1681d8 !important;
    background: rgba(255,255,255,.96);
    box-shadow: 0 2px 10px rgba(0,0,0,.12);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
}

@media (max-width: 991px) {
    .hh-faivo-contact {
        padding: 48px 22px 54px;
    }

    .hh-faivo-contact__grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .hh-faivo-lead {
        max-width: 760px;
    }

    .hh-faivo-contact__right {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .hh-faivo-contact {
        padding: 34px 12px 40px;
    }

    .hh-faivo-contact__grid {
        width: 100%;
        max-width: none;
    }

    .hh-faivo-contact h1 {
        font-size: 37px;
    }

    .hh-faivo-info-grid {
        grid-template-columns: 1fr;
        margin-top: 30px;
    }

    .hh-faivo-info-card {
        min-height: 0;
    }

    .hh-faivo-touch-card {
        padding: 26px 20px 22px;
    }

    .hh-faivo-touch-card h2 {
        font-size: 34px;
    }

    .hh-faivo-map-card {
        padding: 20px 12px 12px;
    }

    .hh-faivo-map-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .hh-faivo-map-head > span {
        text-align: left;
    }

    .hh-faivo-map-wrap {
        height: 280px;
    }
}


/* v1.0.06 — Vietnamese typography + map fixes */
.hh-faivo-contact,
.hh-faivo-contact * {
    text-transform: none;
    word-break: normal;
    overflow-wrap: normal;
}

.hh-faivo-contact h1,
.hh-faivo-touch-card h2 {
    word-break: keep-all;
    overflow-wrap: normal;
    hyphens: none;
}

.hh-faivo-info-card strong,
.hh-faivo-touch-note,
.hh-faivo-lead {
    word-break: normal;
    overflow-wrap: anywhere;
}

/* Avoid 100vw scrollbar on desktop while retaining full-width background */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}


/* v1.0.07 — Contact heading/address tuning */
.hh-faivo-info-card strong {
    white-space: normal;
}
@media (min-width: 992px) {
    .hh-faivo-info-card:nth-child(3) strong {
        white-space: nowrap;
    }
}


/* v1.0.08 — secondary contact lines */
.hh-faivo-info-card small a {
    color: #6f8983;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}
.hh-faivo-info-card small a:hover {
    color: #0b8172;
}


/* v1.0.09 — quote typography */
.hh-faivo-quote p {
    font-size: 16px;
    line-height: 1.75;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-style: italic;
}


/* v1.0.09 — heading parity + quote attribution */
.hh-faivo-quote strong {
    font-size: 10px;
    letter-spacing: .10em;
    line-height: 1.5;
}

/* =========================================================
   About page v1.0.10 — Rung Dua Bay Mau eco-history landing
   Applies only to theme-rendered .hh-about markup.
   ========================================================= */
.hh-about{
    --hha-green:#0d6656;
    --hha-deep:#0b4e45;
    --hha-ink:#173a34;
    --hha-muted:#647c76;
    --hha-soft:#eef7f4;
    --hha-cream:#fbf6ea;
    --hha-line:#d9e7e2;
    --hha-gold:#d9a24a;
    position:relative;
    width:auto;
    max-width:none;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    color:var(--hha-ink);
    background:#fff;
    overflow-x:clip;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"Helvetica Neue",sans-serif;
}
.hh-about *{box-sizing:border-box}
.hh-about-shell{width:min(1320px,calc(100% - 48px));margin-left:auto;margin-right:auto}
.hh-about-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--hha-green);font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.hh-about-kicker:before{content:"";width:28px;height:2px;background:var(--hha-gold)}
.hh-about h1,.hh-about h2,.hh-about h3{color:var(--hha-ink)}
.hh-about p{color:var(--hha-muted)}

.hh-about-hero{padding:72px 0 68px;background:linear-gradient(135deg,#edf7f4 0%,#f8fbf9 58%,#fff9ee 100%);border-bottom:1px solid var(--hha-line)}
.hh-about-hero__inner{width:min(1320px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:64px;align-items:center}
.hh-about-hero__copy{max-width:850px}
.hh-about-hero h1{margin:17px 0 18px;font-size:clamp(42px,5vw,66px);line-height:1.05;letter-spacing:-.045em;font-weight:820}
.hh-about-hero p{max-width:800px;margin:0;font-size:17px;line-height:1.8}
.hh-about-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.hh-about-btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;border:1px solid transparent;border-radius:999px;font-size:13px;font-weight:800;text-decoration:none!important;transition:.18s ease}
.hh-about-btn:hover{transform:translateY(-1px)}
.hh-about-btn--primary{color:#fff!important;background:var(--hha-green)}
.hh-about-btn--ghost{color:var(--hha-deep)!important;border-color:#bfd6cf;background:#fff}
.hh-about-hero__mark{min-height:315px;display:flex;flex-direction:column;justify-content:flex-end;padding:34px;border-radius:3px 36px 3px 36px;color:#fff;background:linear-gradient(180deg,rgba(6,62,51,.18) 0%,rgba(7,65,54,.18) 28%,rgba(8,57,50,.62) 74%,rgba(8,49,44,.82) 100%),url('../images/about-hero-card.jpg') center center/cover no-repeat;box-shadow:0 28px 64px rgba(13,91,77,.16);overflow:hidden;position:relative}
.hh-about-hero__mark::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 84% 16%,rgba(255,255,255,.22) 0 5%,transparent 6%);pointer-events:none}
.hh-about-hero__mark span,.hh-about-hero__mark strong,.hh-about-hero__mark small{position:relative;z-index:1;text-shadow:0 2px 14px rgba(0,0,0,.28)}
.hh-about-hero__mark span{margin-bottom:auto;color:#efca91;font-size:11px;font-weight:800;letter-spacing:.18em}
.hh-about-hero__mark strong{color:#fff;font-size:48px;line-height:.98;letter-spacing:-.035em}
.hh-about-hero__mark small{margin-top:11px;color:rgba(255,255,255,.88);font-size:14px;font-weight:700}

.hh-about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:48px;padding-bottom:48px;border-bottom:1px solid var(--hha-line)}
.hh-about-values article{min-height:220px;padding:26px 30px;border-left:1px solid var(--hha-line)}
.hh-about-values article:last-child{border-right:1px solid var(--hha-line)}
.hh-about-value-icon{width:44px;height:44px;display:grid;place-items:center;margin-bottom:22px;border-radius:50%;color:var(--hha-green);background:var(--hha-soft);font-size:19px}
.hh-about-values small{display:block;color:#80918d;font-size:10px;font-weight:800;letter-spacing:.12em}
.hh-about-values h2{margin:8px 0 10px;font-size:23px;line-height:1.22;font-weight:800}
.hh-about-values p{margin:0;font-size:14px;line-height:1.72}

.hh-about-story{padding-top:76px;padding-bottom:76px}
.hh-about-story__intro{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);grid-template-areas:"kicker title" "copy title";column-gap:60px;row-gap:16px;align-items:start;margin-bottom:34px}.hh-about-story__intro .hh-about-kicker{grid-area:kicker;align-self:start;padding-top:6px}.hh-about-story__intro h2{grid-area:title;align-self:start;margin:0}.hh-about-story__intro>p{grid-area:copy;max-width:520px;margin:0;font-size:15px;line-height:1.8}.hh-about-history__copy h2,.hh-about-section-head h2,.hh-about-responsible h2,.hh-about-local h2{margin:13px 0 0;font-size:clamp(31px,3.5vw,46px);line-height:1.12;letter-spacing:-.03em;font-weight:820}
.hh-about-story__intro .hh-story-title{font-family:Cambria,Georgia,"Times New Roman",serif;font-size:clamp(36px,2.6vw,42px);line-height:1.08;letter-spacing:-.02em;font-weight:700;max-width:none;text-wrap:initial}.hh-about-story__intro .hh-story-title .line{display:block;white-space:nowrap}
.hh-about-story__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hh-about-story-card{min-height:260px;padding:28px;border:1px solid var(--hha-line);border-radius:18px;background:#fff}
.hh-about-story-card>span{display:block;color:var(--hha-gold);font-size:12px;font-weight:900;letter-spacing:.12em}
.hh-about-story-card h3{margin:48px 0 11px;font-size:22px;font-weight:800}
.hh-about-story-card p{margin:0;font-size:14px;line-height:1.72}
.hh-about-story-card--eco{background:#f4faf8}.hh-about-story-card--history{background:#fffaf0}.hh-about-story-card--culture{background:#f8faf9}

.hh-about-history{padding:70px 0;background:var(--hha-deep)}
.hh-about-history__inner{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:70px;align-items:center}
.hh-about-history .hh-about-kicker{color:#f2c987}.hh-about-history__copy h2{color:#fff}.hh-about-history__copy p{margin:17px 0 0;color:rgba(255,255,255,.72);font-size:15px;line-height:1.82}
.hh-about-history__quote{padding:32px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.06)}
.hh-about-history__quote i{color:#efc780;font-size:25px}.hh-about-history__quote p{margin:18px 0 20px;color:#fff;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:21px;line-height:1.65;font-style:italic}.hh-about-history__quote strong{color:#efc780;font-size:10px;letter-spacing:.12em}

.hh-about-experience{padding-top:76px;padding-bottom:76px}
.hh-about-section-head{max-width:850px;margin-bottom:30px}.hh-about-section-head h2{margin-bottom:13px}.hh-about-section-head p{margin:0;font-size:15px;line-height:1.75}
.hh-about-experience__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--hha-line);border-left:1px solid var(--hha-line)}
.hh-about-experience__grid>div{min-height:175px;padding:25px;border-right:1px solid var(--hha-line);border-bottom:1px solid var(--hha-line);background:#fff}
.hh-about-experience__grid i{display:block;margin-bottom:20px;color:var(--hha-green);font-size:22px}.hh-about-experience__grid strong{display:block;margin-bottom:7px;font-size:16px}.hh-about-experience__grid span{color:var(--hha-muted);font-size:13px;line-height:1.6}

.hh-about-responsible{padding:46px 0;background:var(--hha-cream);border-top:1px solid #f0e5cd;border-bottom:1px solid #f0e5cd}
.hh-about-responsible__inner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:center}.hh-about-responsible h2{font-size:34px}.hh-about-responsible p{margin:0;font-size:15px;line-height:1.82}

.hh-about-local{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:56px;align-items:center;padding-top:76px;padding-bottom:76px}
.hh-about-local__copy>p{max-width:800px;margin:16px 0 0;font-size:15px;line-height:1.8}
.hh-about-local__contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:26px}.hh-about-local__contact>a,.hh-about-local__contact>div{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;padding:13px 14px;border:1px solid var(--hha-line);border-radius:12px;color:var(--hha-ink);background:#fff;text-decoration:none}.hh-about-local__contact i{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:var(--hha-green);background:var(--hha-soft)}.hh-about-local__contact small,.hh-about-local__contact strong{display:block}.hh-about-local__contact small{color:#899995;font-size:9px;font-weight:800;text-transform:uppercase}.hh-about-local__contact strong{margin-top:2px;font-size:12px;overflow-wrap:anywhere}
.hh-about-local__card{min-height:330px;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;border-radius:3px 32px 3px 32px;color:#fff;background:linear-gradient(145deg,#11806b,#0b4e45)}.hh-about-local__card>span{margin-bottom:auto;color:#efca91;font-size:10px;font-weight:800;letter-spacing:.16em}.hh-about-local__card>strong{color:#fff;font-size:38px;line-height:1.05}.hh-about-local__card>p{margin:12px 0 22px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.6}.hh-about-local__card>a{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:12px;font-weight:800;text-decoration:none}

.hh-about-cta{padding:42px 0;background:linear-gradient(135deg,#0f7564,#0b4e45)}
.hh-about-cta__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:35px;align-items:center}.hh-about-cta span{color:#efca91;font-size:10px;font-weight:800;letter-spacing:.14em}.hh-about-cta h2{margin:7px 0 0;color:#fff;font-size:30px;line-height:1.18}.hh-about-cta__actions{display:flex;gap:10px;flex-wrap:wrap}.hh-about-btn--light{color:var(--hha-deep)!important;background:#fff}.hh-about-btn--outline{color:#fff!important;border-color:rgba(255,255,255,.5);background:transparent}

@media(max-width:991px){
    .hh-about-hero__inner,.hh-about-history__inner,.hh-about-local{grid-template-columns:1fr;gap:34px}
    .hh-about-hero__mark{min-height:220px}.hh-about-values,.hh-about-story__grid,.hh-about-experience__grid{grid-template-columns:1fr 1fr}.hh-about-values article:nth-child(2){border-right:1px solid var(--hha-line)}.hh-about-story__intro{grid-template-columns:1fr;grid-template-areas:"kicker" "title" "copy";row-gap:16px;column-gap:0}.hh-about-responsible__inner{grid-template-columns:1fr;gap:24px}.hh-about-cta__inner{grid-template-columns:1fr}
}
@media(max-width:640px){
    .hh-about-shell,.hh-about-hero__inner{width:calc(100% - 24px)}
    .hh-about-hero{padding:44px 0 42px}.hh-about-hero h1{font-size:38px}.hh-about-hero p{font-size:15px}.hh-about-hero__mark strong{font-size:38px}
    .hh-about-values{grid-template-columns:1fr;padding-top:28px;padding-bottom:28px}.hh-about-values article{border-right:1px solid var(--hha-line);min-height:0}
    .hh-about-story,.hh-about-experience,.hh-about-local{padding-top:52px;padding-bottom:52px}.hh-about-story__grid,.hh-about-experience__grid{grid-template-columns:1fr}.hh-about-story-card{min-height:210px}.hh-about-story-card h3{margin-top:32px}
    .hh-about-history{padding:52px 0}.hh-about-history__quote{padding:24px}.hh-about-history__quote p{font-size:18px}
    .hh-about-local__contact{grid-template-columns:1fr}.hh-about-local__card{min-height:260px}.hh-about-local__card>strong{font-size:32px}
    .hh-about-cta{padding:34px 0}.hh-about-cta h2{font-size:25px}.hh-about-cta__actions{display:grid;grid-template-columns:1fr}
}


/* =========================================================
   About page v1.0.11 — Eco Tour Thái Bình + typography
   ========================================================= */
.hh-about {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, "Helvetica Neue", sans-serif;
}

/* Elegant Vietnamese-safe serif headings */
.hh-about h1,
.hh-about h2,
.hh-about h3,
.hh-about-hero__mark strong,
.hh-about-local__card > strong {
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-feature-settings: "kern" 1;
    text-rendering: optimizeLegibility;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}

/* Hero title: balanced two-line treatment */
.hh-about-hero h1 {
    font-size: clamp(32px, 3vw, 46px);
    line-height: 1.12;
    letter-spacing: -.018em;
    font-weight: 700;
    max-width: none;
}
.hh-about-hero h1 .line {
    display: block;
    white-space: nowrap;
}

/* Section headings */
.hh-about-story__intro h2,
.hh-about-history__copy h2,
.hh-about-section-head h2,
.hh-about-responsible h2,
.hh-about-local h2 {
    line-height: 1.16;
    letter-spacing: -.012em;
    font-weight: 700;
}

/* Card headings */
.hh-about-values h2,
.hh-about-story-card h3 {
    line-height: 1.28;
    letter-spacing: -.005em;
    font-weight: 700;
}

/* Brand card */
.hh-about-local__card > strong {
    letter-spacing: -.01em;
    font-weight: 700;
}

/* Bottom slogan: more distinctive, larger and easier to read */
.hh-about-cta__slogan {
    max-width: 760px;
    margin: 8px 0 0 !important;
    font-family: Cambria, Georgia, "Times New Roman", serif !important;
    font-size: clamp(30px, 3vw, 42px) !important;
    line-height: 1.16 !important;
    letter-spacing: -.012em !important;
    font-weight: 700 !important;
    color: #fff !important;
}

/* Improve Vietnamese text rhythm throughout the About page */
.hh-about p {
    line-height: 1.82;
}

@media (max-width: 640px) {
    .hh-about-hero h1 {
        font-size: 34px;
        line-height: 1.14;
        max-width: 100%;
    }
    .hh-about-hero h1 .line {
        white-space: normal;
    }

    .hh-about-cta__slogan {
        font-size: 28px !important;
        line-height: 1.2 !important;
    }
}


/* =========================================================
   About page v1.0.12 — smaller single-line headings
   ========================================================= */

/* “Đồng hành cùng bạn tại Rừng Dừa Bảy Mẫu” */
.hh-about-local__copy > h2 {
    font-size: clamp(25px, 2.15vw, 34px) !important;
    line-height: 1.16 !important;
    letter-spacing: -.01em !important;
    white-space: nowrap;
}

/* “Một hành trình địa phương, nhiều câu chuyện để nhớ” */
.hh-about-cta__slogan {
    max-width: none !important;
    font-size: clamp(24px, 2vw, 32px) !important;
    line-height: 1.18 !important;
    letter-spacing: -.008em !important;
    white-space: nowrap;
}

/* On smaller screens allow natural wrapping so text is not clipped */
@media (max-width: 991px) {
    .hh-about-local__copy > h2,
    .hh-about-cta__slogan {
        white-space: normal;
    }
}

@media (max-width: 640px) {
    .hh-about-local__copy > h2 {
        font-size: 27px !important;
    }

    .hh-about-cta__slogan {
        font-size: 25px !important;
    }
}


/* =========================================================
   About page v1.0.20 — fix hero title to 2 lines and repair config.xml integrity
   ========================================================= */
@media (min-width: 992px) {
    /* Đồng hành cùng bạn tại Rừng Dừa Bảy Mẫu */
    .hh-about-local__copy > h2 {
        font-size: 27px !important;
        line-height: 1.16 !important;
        letter-spacing: -.008em !important;
        white-space: nowrap !important;
    }

    /* Một phần ký ức của Cẩm Thanh và Hội An */
    .hh-about-history__copy > h2 {
        font-size: 27px !important;
        line-height: 1.16 !important;
        letter-spacing: -.008em !important;
        white-space: nowrap !important;
    }

    /* Khám phá Cẩm Thanh theo cách gần gũi hơn */
    .hh-about-section-head > h2 {
        font-size: 27px !important;
        line-height: 1.16 !important;
        letter-spacing: -.008em !important;
        white-space: nowrap !important;
    }

    /* Gìn giữ cảnh quan và tôn trọng cộng đồng
       This block has a narrower column, so use a slightly smaller size. */
    .hh-about-responsible h2 {
        font-size: 23px !important;
        line-height: 1.18 !important;
        letter-spacing: -.006em !important;
        white-space: nowrap !important;
    }
}

/* Tablet/mobile can wrap naturally to avoid clipping. */
@media (max-width: 991px) {
    .hh-about-local__copy > h2,
    .hh-about-history__copy > h2,
    .hh-about-section-head > h2,
    .hh-about-responsible h2 {
        white-space: normal !important;
    }
}


/* v1.0.21 — story heading final sizing */
@media(max-width:991px){
  .hh-about-story__intro .hh-story-title{font-size:36px;line-height:1.1}
  .hh-about-story__intro .hh-story-title .line{white-space:normal}
}
@media(max-width:640px){
  .hh-about-story__intro .hh-story-title{font-size:32px}
}


/* =========================================================
   News v1.0.23 — FAIVO Travel Guide inspired homepage
   ========================================================= */
.hh-news-guide{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);color:#153f36;background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;overflow-x:clip}
.hh-news-guide *{box-sizing:border-box}.hh-ng-shell{width:min(1420px,calc(100% - 24px));max-width:none;margin-left:auto;margin-right:auto}
.hh-ng-feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);gap:14px;padding-top:12px;padding-bottom:20px}.hh-ng-lead,.hh-ng-mini{position:relative;overflow:hidden;background:#1a574b center/cover no-repeat}.hh-ng-lead{min-height:510px}.hh-ng-feature-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:14px}.hh-ng-mini{min-height:248px}.hh-ng-card-link{position:absolute;inset:0;display:block;color:#fff!important;text-decoration:none!important}.hh-ng-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,36,31,.04) 30%,rgba(2,29,25,.82) 100%)}
.hh-ng-lead-copy,.hh-ng-mini-copy{position:absolute;z-index:2;left:28px;right:28px;bottom:28px}.hh-ng-lead-copy>span,.hh-ng-mini-copy>span,.hh-ng-strip span,.hh-ng-plan>span{color:#f1c26e;font-size:10px;font-weight:900;letter-spacing:.08em}.hh-ng-lead h1{max-width:720px;margin:8px 0 14px;color:#fff;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:29px;line-height:1.08}.hh-ng-meta{display:flex;gap:18px;align-items:center;color:#fff;font-size:10px}.hh-ng-meta em{font-style:normal}.hh-ng-mini-copy{left:16px;right:16px;bottom:16px}.hh-ng-mini h2{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:5px 0 8px;color:#fff;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:19px;line-height:1.08}.hh-ng-mini b{font-size:9px}
.hh-ng-strip{padding:16px 0 20px;background:#fff9e9}.hh-ng-strip-inner{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:22px;align-items:stretch}.hh-ng-strip-inner>div,.hh-ng-strip-inner>a{min-height:98px;padding:20px 24px}.hh-ng-strip-inner>div{background:linear-gradient(108deg,#fff4cf 0 43%,#eaf5e9 43% 100%)}.hh-ng-strip h2{margin:5px 0 3px;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:22px}.hh-ng-strip p{margin:0;color:#44635c;font-size:13px}.hh-ng-strip-inner>a{display:flex;align-items:center;justify-content:center;color:#fff!important;background:#0c7f72;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:16px;font-weight:800;text-align:center;text-decoration:none!important}
.hh-ng-body{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:34px;padding-top:34px;padding-bottom:70px}.hh-ng-category-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 22px}.hh-ng-cat-head{margin-bottom:12px;border-bottom:3px solid #0c8174}.hh-ng-cat-head a{display:inline-flex;padding:7px 13px 6px;color:#fff!important;background:#0c8174;font-size:14px;font-weight:900;text-decoration:none!important}.hh-ng-cat-image{display:block;aspect-ratio:16/8;overflow:hidden}.hh-ng-cat-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.hh-ng-cat-image:hover img{transform:scale(1.025)}.hh-ng-category>h3{margin:10px 0 8px;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:19px;line-height:1.22}.hh-ng-category>h3 a,.hh-ng-sublist h4 a,.hh-ng-sidebox h3 a{color:#123d35;text-decoration:none!important}.hh-ng-category>p{margin:0 0 18px;color:#5c716c;font-size:13px;line-height:1.65}.hh-ng-sublist{display:grid;gap:12px}.hh-ng-sublist article{display:grid;grid-template-columns:112px 1fr;gap:11px;align-items:start}.hh-ng-sublist img{width:112px;height:72px;object-fit:cover}.hh-ng-sublist h4{margin:1px 0 4px;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:15px;line-height:1.2}.hh-ng-sublist p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:0;color:#687d77;font-size:11px;line-height:1.45}
.hh-ng-sticky{position:sticky;top:82px}.hh-ng-plan{padding:4px 0 24px;border-bottom:2px dashed #0c8174}.hh-ng-plan h2{margin:6px 0 12px;padding-bottom:10px;border-bottom:3px solid #0c8174;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:22px;text-transform:uppercase}.hh-ng-plan p{color:#667b75;font-size:12px;line-height:1.6}.hh-ng-plan a{display:inline-flex;margin-top:6px;padding:8px 12px;color:#fff!important;background:#0c8174;font-size:11px;font-weight:800;text-decoration:none!important}.hh-ng-sidebox{margin-top:20px}.hh-ng-sidebox>h2{margin:0 0 10px;padding:7px 12px;border-bottom:3px solid #0c8174;color:#fff;background:#0c8174;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:20px}.hh-ng-sidebox article{display:grid;grid-template-columns:82px 1fr;gap:10px;padding:10px 0;border-bottom:2px dashed #0c8174}.hh-ng-sidebox img{width:82px;height:58px;object-fit:cover}.hh-ng-sidebox h3{margin:0 0 5px;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:12px;line-height:1.25}.hh-ng-sidebox small{color:#879791;font-size:9px}
@media(max-width:1100px){.hh-ng-feature{grid-template-columns:1fr}.hh-ng-lead{min-height:460px}.hh-ng-feature-grid{min-height:430px}.hh-ng-body{grid-template-columns:1fr}.hh-ng-side{display:none}}
@media(max-width:720px){.hh-ng-shell{width:calc(100% - 16px)}.hh-ng-feature{padding-top:8px;gap:8px}.hh-ng-lead{min-height:380px}.hh-ng-feature-grid{grid-template-columns:1fr 1fr;gap:8px;min-height:0}.hh-ng-mini{min-height:180px}.hh-ng-lead-copy{left:18px;right:18px;bottom:20px}.hh-ng-lead h1{font-size:24px}.hh-ng-mini h2{font-size:15px}.hh-ng-strip-inner{grid-template-columns:1fr}.hh-ng-strip-inner>a{min-height:62px}.hh-ng-category-grid{grid-template-columns:1fr}.hh-ng-body{padding-top:24px}.hh-ng-cat-image{aspect-ratio:16/9}}
@media(max-width:480px){.hh-ng-feature-grid{grid-template-columns:1fr}.hh-ng-mini{min-height:205px}.hh-ng-sublist article{grid-template-columns:96px 1fr}.hh-ng-sublist img{width:96px;height:66px}}


/* v1.0.24 — News main breaks out of the theme's 1220px content container, matching FAIVO Travel Guide width. */
body.hh-body .hh-page-shell .hh-container > .hh-main .hh-news-guide{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}


/* =========================================================
   News v1.0.25 — FAIVO-style lead story slider
   ========================================================= */
.hh-ng-slider{position:relative;min-height:510px;overflow:hidden;background:#164f45}
.hh-ng-slider-track{position:absolute;inset:0}
.hh-ng-slide{position:absolute;inset:0;opacity:0;visibility:hidden;background:#1a574b center/cover no-repeat;transition:opacity .55s ease,visibility .55s ease;pointer-events:none}
.hh-ng-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hh-ng-slide .hh-ng-lead-copy{bottom:78px}
.hh-ng-slider-arrow{position:absolute;top:50%;z-index:5;width:42px;height:42px;margin-top:-21px;padding:0;border:1px solid rgba(255,255,255,.45);border-radius:50%;color:#fff;background:rgba(8,48,42,.58);font:400 35px/36px Georgia,"Times New Roman",serif;text-align:center;cursor:pointer;transition:.2s ease;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.hh-ng-slider-arrow:hover{background:#0c8174;border-color:#fff;transform:scale(1.04)}
.hh-ng-slider-prev{left:18px}.hh-ng-slider-next{right:18px}
.hh-ng-slider-nav{position:absolute;z-index:5;left:28px;right:28px;bottom:22px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.hh-ng-slider-dots{display:flex;align-items:center;gap:8px;pointer-events:auto}
.hh-ng-slider-dot{width:28px;height:4px;padding:0;border:0;border-radius:8px;background:rgba(255,255,255,.32);cursor:pointer;transition:.2s ease}
.hh-ng-slider-dot.is-active{width:43px;background:#fff}
.hh-ng-slider-count{display:flex;align-items:baseline;gap:3px;color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;text-shadow:0 1px 6px rgba(0,0,0,.4)}
.hh-ng-slider-count b{font-size:14px}
@media(max-width:1100px){.hh-ng-slider{min-height:460px}}
@media(max-width:720px){.hh-ng-slider{min-height:380px}.hh-ng-slider-arrow{width:36px;height:36px;margin-top:-18px;font-size:29px;line-height:31px}.hh-ng-slider-prev{left:10px}.hh-ng-slider-next{right:10px}.hh-ng-slide .hh-ng-lead-copy{bottom:66px}.hh-ng-slider-nav{left:18px;right:18px;bottom:17px}.hh-ng-slider-dot{width:20px}.hh-ng-slider-dot.is-active{width:34px}}


/* =========================================================
   News v1.0.28 — word-safe title/excerpt clamping
   ========================================================= */
/* Titles stay on one line. JavaScript shortens only by whole words. */
.hh-ng-lead h1,
.hh-ng-mini h2,
.hh-ng-category > h3,
.hh-ng-sublist h4,
.hh-ng-sidebox h3 {
    display:block;
    max-width:100%;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:clip;
    -webkit-line-clamp:unset;
    -webkit-box-orient:initial;
}
.hh-ng-lead h1 a,
.hh-ng-mini h2 a,
.hh-ng-category > h3 a,
.hh-ng-sublist h4 a,
.hh-ng-sidebox h3 a,
[data-hh-word-clamp="1"] {
    display:block;
    max-width:100%;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:clip;
}

/* Intro/excerpt stays at two lines; JS removes whole words before adding … */
.hh-ng-category > p,
.hh-ng-sublist p,
[data-hh-word-clamp="2"] {
    display:block;
    overflow:hidden;
    white-space:normal;
    -webkit-box-orient:initial;
    -webkit-line-clamp:unset;
    line-clamp:unset;
}
.hh-ng-category > p {
    min-height:2.95em;
    max-height:2.95em;
    margin-bottom:18px;
}
.hh-ng-sublist p {
    min-height:2.9em;
    max-height:2.9em;
}

/* Make every category card behave consistently when many categories are rendered. */
.hh-ng-category,
.hh-ng-sublist article,
.hh-ng-sublist article > div,
.hh-ng-sidebox article > div {
    min-width:0;
}

/* News v1.0.27 — only top-level News categories on the homepage */
.hh-ng-category-empty{
    min-height:120px;
    display:flex;
    align-items:center;
    padding:18px 0;
    color:#7a8d88;
    font-size:13px;
    line-height:1.6;
}

/* =========================================================
   News v1.0.31 — REAL FIX for legacy titles/excerpts
   - v1.0.30 block had literal "\\n" text and could be ignored by CSS parser.
   - Give sublist text more horizontal room while keeping title = 1 line,
     excerpt = 2 lines. JS decides the maximum whole words that fit.
   ========================================================= */
.hh-ng-sublist article {
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}
.hh-ng-sublist img {
    width: 76px;
    height: 58px;
    object-fit: cover;
}
.hh-ng-sublist h4 {
    margin: 0 0 4px;
    font-size: 14px;
    line-height: 1.24;
    letter-spacing: -0.01em;
}
.hh-ng-sublist p {
    margin: 0;
    font-size: 11.5px;
    line-height: 1.5;
    min-height: 3em;
    max-height: 3em;
}
@media (max-width: 480px) {
    .hh-ng-sublist article {
        grid-template-columns: 72px minmax(0, 1fr);
        gap: 9px;
    }
    .hh-ng-sublist img {
        width: 72px;
        height: 56px;
    }
    .hh-ng-sublist h4 {
        font-size: 13.5px;
    }
}


/* =========================================================
   News v1.0.32 — sublist items without thumbnails
   When a sub article has no image, its text is the only grid child.
   Let it span the complete card width instead of being trapped in
   the reserved thumbnail column.
   ========================================================= */
.hh-ng-sublist article > div:only-child,
.hh-ng-sublist article.is-no-image > div {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
}

/* Same protection for Recent Posts sidebar items without thumbnails. */
.hh-ng-sidebox article > div:only-child,
.hh-ng-sidebox article.is-no-image > div {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
}

/* =========================================================
   News v1.0.33 — Góc Ẩm Thực featured full-width section
   Positioned below Văn hóa xã / Du lịch lễ hội and styled
   like the provided reference layout: large lead on the left,
   three stacked items on the right.
   ========================================================= */
.hh-ng-category--wide {
    grid-column: 1 / -1;
}
.hh-ng-category--featured .hh-ng-featured-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(320px, .92fr);
    gap: 22px;
    align-items: start;
}
.hh-ng-category--featured .hh-ng-featured-lead,
.hh-ng-category--featured .hh-ng-featured-side article {
    min-width: 0;
}
.hh-ng-category--featured .hh-ng-featured-lead__image {
    display: block;
    overflow: hidden;
    aspect-ratio: 16 / 7.2;
}
.hh-ng-category--featured .hh-ng-featured-lead__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease;
}
.hh-ng-category--featured .hh-ng-featured-lead__image:hover img,
.hh-ng-category--featured .hh-ng-featured-side__image:hover img {
    transform: scale(1.02);
}
.hh-ng-category--featured .hh-ng-featured-lead__copy h3 {
    margin: 14px 0 10px;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: 21px;
    line-height: 1.24;
    font-weight: 700;
}
.hh-ng-category--featured .hh-ng-featured-lead__copy h3 a,
.hh-ng-category--featured .hh-ng-featured-side h4 a {
    color: #123d35;
    text-decoration: none !important;
}
.hh-ng-category--featured .hh-ng-featured-lead__copy h3,
.hh-ng-category--featured .hh-ng-featured-side h4 {
    display: block;
    overflow: hidden;
    white-space: normal;
}
.hh-ng-category--featured .hh-ng-featured-lead__copy p,
.hh-ng-category--featured .hh-ng-featured-side p {
    display: block;
    overflow: hidden;
    white-space: normal;
    margin: 0;
    color: #5c716c;
}
.hh-ng-category--featured .hh-ng-featured-lead__copy p {
    font-size: 13px;
    line-height: 1.7;
}
.hh-ng-category--featured .hh-ng-featured-side {
    display: grid;
    gap: 20px;
}
.hh-ng-category--featured .hh-ng-featured-side article {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}
.hh-ng-category--featured .hh-ng-featured-side__image {
    display: block;
    overflow: hidden;
    border-radius: 3px;
}
.hh-ng-category--featured .hh-ng-featured-side__image img {
    width: 190px;
    height: 116px;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}
.hh-ng-category--featured .hh-ng-featured-side h4 {
    margin: 0 0 8px;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: 18px;
    line-height: 1.22;
    font-weight: 700;
}
.hh-ng-category--featured .hh-ng-featured-side p {
    font-size: 13px;
    line-height: 1.6;
}
.hh-ng-category--featured .hh-ng-featured-side article.is-no-image {
    grid-template-columns: 1fr;
}
@media (max-width: 1100px) {
    .hh-ng-category--featured .hh-ng-featured-layout {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 720px) {
    .hh-ng-category--featured .hh-ng-featured-side article {
        grid-template-columns: 140px minmax(0, 1fr);
        gap: 14px;
    }
    .hh-ng-category--featured .hh-ng-featured-side__image img {
        width: 140px;
        height: 94px;
    }
    .hh-ng-category--featured .hh-ng-featured-lead__copy h3 {
        font-size: 19px;
    }
    .hh-ng-category--featured .hh-ng-featured-side h4 {
        font-size: 16px;
    }
}
@media (max-width: 520px) {
    .hh-ng-category--featured .hh-ng-featured-side article {
        grid-template-columns: 1fr;
    }
    .hh-ng-category--featured .hh-ng-featured-side__image img {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 10;
    }
}

/* =========================================================
   News v1.0.34 — Food section refinement
   - Smaller thumbnails for the 3 secondary stories.
   - Secondary titles may use up to 2 lines (word-safe JS clamp).
   - More horizontal room for text.
   ========================================================= */
.hh-ng-category--featured .hh-ng-featured-side {
    gap: 16px;
}
.hh-ng-category--featured .hh-ng-featured-side article {
    grid-template-columns: 132px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}
.hh-ng-category--featured .hh-ng-featured-side__image img {
    width: 132px;
    height: 84px;
}
.hh-ng-category--featured .hh-ng-featured-side h4 {
    margin: 0 0 6px;
    font-size: 16px;
    line-height: 1.22;
    min-height: 0;
    max-height: none;
    white-space: normal;
    overflow: hidden;
}
.hh-ng-category--featured .hh-ng-featured-side h4 a {
    display: block;
    max-width: 100%;
    white-space: normal !important;
    overflow: hidden;
    text-overflow: clip;
}
.hh-ng-category--featured .hh-ng-featured-side p {
    font-size: 12px;
    line-height: 1.5;
    min-height: 0;
    max-height: none;
}
@media (max-width: 720px) {
    .hh-ng-category--featured .hh-ng-featured-side article {
        grid-template-columns: 116px minmax(0, 1fr);
        gap: 12px;
    }
    .hh-ng-category--featured .hh-ng-featured-side__image img {
        width: 116px;
        height: 76px;
    }
    .hh-ng-category--featured .hh-ng-featured-side h4 {
        font-size: 15px;
    }
}
@media (max-width: 520px) {
    .hh-ng-category--featured .hh-ng-featured-side article {
        grid-template-columns: 104px minmax(0, 1fr);
    }
    .hh-ng-category--featured .hh-ng-featured-side__image img {
        width: 104px;
        height: 72px;
        aspect-ratio: auto;
    }
}

/* =========================================================
   News v1.0.35 — unified responsive thumbnails for sub stories
   All secondary-news thumbnails use the same size as the
   three Góc Ẩm Thực secondary stories and scale smoothly.
   ========================================================= */
.hh-news-guide {
    --hh-sub-thumb-w: clamp(104px, 9vw, 132px);
    --hh-sub-thumb-ratio: 11 / 7;
}

/* Standard category secondary stories */
.hh-ng-sublist article.has-image {
    grid-template-columns: var(--hh-sub-thumb-w) minmax(0, 1fr) !important;
    gap: 14px !important;
}
.hh-ng-sublist article.has-image > a:first-child {
    display: block;
    width: var(--hh-sub-thumb-w);
    overflow: hidden;
}
.hh-ng-sublist article.has-image img {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: var(--hh-sub-thumb-ratio);
    object-fit: cover;
}

/* Góc Ẩm Thực secondary stories use the exact same responsive size. */
.hh-ng-category--featured .hh-ng-featured-side article.has-image {
    grid-template-columns: var(--hh-sub-thumb-w) minmax(0, 1fr) !important;
    gap: 14px !important;
}
.hh-ng-category--featured .hh-ng-featured-side__image {
    width: var(--hh-sub-thumb-w) !important;
}
.hh-ng-category--featured .hh-ng-featured-side__image img {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: var(--hh-sub-thumb-ratio);
    object-fit: cover;
}

/* Keep text usable as the thumbnail scales down. */
.hh-ng-sublist article > div,
.hh-ng-category--featured .hh-ng-featured-side article > div {
    min-width: 0;
}

@media (max-width: 520px) {
    .hh-news-guide {
        --hh-sub-thumb-w: clamp(92px, 29vw, 104px);
    }
    .hh-ng-sublist article.has-image,
    .hh-ng-category--featured .hh-ng-featured-side article.has-image {
        gap: 10px !important;
    }
}

/* =========================================================
   News v1.0.36 — sidebar thumbnails + text height matched
   Sidebar uses the exact same responsive thumbnail system as
   category sub stories. Title + excerpt scale to fill image height.
   ========================================================= */
.hh-ng-sidebox article.has-image {
    display: grid;
    grid-template-columns: var(--hh-sub-thumb-w) minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: stretch !important;
    padding: 12px 0;
}
.hh-ng-sidebox__image {
    display: block;
    width: var(--hh-sub-thumb-w) !important;
    overflow: hidden;
}
.hh-ng-sidebox__image img {
    display: block;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: var(--hh-sub-thumb-ratio);
    object-fit: cover;
}
.hh-ng-sidebox__copy {
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.hh-ng-sidebox__copy h3 {
    margin: 0 0 4px !important;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: clamp(13px, 1.02vw, 16px) !important;
    line-height: 1.2 !important;
    font-weight: 700;
    max-height: none !important;
    white-space: normal !important;
    overflow: hidden;
}
.hh-ng-sidebox__copy h3 a {
    display: block;
    max-width: 100%;
    white-space: normal !important;
    overflow: hidden;
    text-overflow: clip;
}
.hh-ng-sidebox__copy p {
    margin: 0 !important;
    color: #687d77;
    font-size: clamp(10.5px, .82vw, 13px) !important;
    line-height: 1.38 !important;
    max-height: none !important;
    white-space: normal !important;
    overflow: hidden;
}
.hh-ng-sidebox article.is-no-image {
    grid-template-columns: 1fr !important;
}
.hh-ng-sidebox article.is-no-image .hh-ng-sidebox__copy {
    width: 100%;
}
@media (max-width: 520px) {
    .hh-ng-sidebox article.has-image {
        gap: 10px !important;
    }
    .hh-ng-sidebox__copy h3 {
        font-size: 13px !important;
        line-height: 1.18 !important;
        margin-bottom: 3px !important;
    }
    .hh-ng-sidebox__copy p {
        font-size: 10.5px !important;
        line-height: 1.32 !important;
    }
}

/* =========================================================
   News v1.0.37 — unify homepage secondary-story typography
   Match all secondary stories to the sidebar type scale while
   preserving larger lead-story hierarchy.
   ========================================================= */
.hh-ng-sublist h4,
.hh-ng-category--featured .hh-ng-featured-side h4 {
    margin: 0 0 4px !important;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: clamp(13px, 1.02vw, 16px) !important;
    line-height: 1.2 !important;
    font-weight: 700;
    max-height: none !important;
    white-space: normal !important;
    overflow: hidden;
}
.hh-ng-sublist h4 a,
.hh-ng-category--featured .hh-ng-featured-side h4 a {
    display: block;
    max-width: 100%;
    white-space: normal !important;
    overflow: hidden;
    text-overflow: clip;
}
.hh-ng-sublist p,
.hh-ng-category--featured .hh-ng-featured-side p {
    margin: 0 !important;
    color: #687d77;
    font-size: clamp(10.5px, .82vw, 13px) !important;
    line-height: 1.38 !important;
    min-height: 0 !important;
    max-height: none !important;
    white-space: normal !important;
    overflow: hidden;
}
@media (max-width: 520px) {
    .hh-ng-sublist h4,
    .hh-ng-category--featured .hh-ng-featured-side h4 {
        font-size: 13px !important;
        line-height: 1.18 !important;
        margin-bottom: 3px !important;
    }
    .hh-ng-sublist p,
    .hh-ng-category--featured .hh-ng-featured-side p {
        font-size: 10.5px !important;
        line-height: 1.32 !important;
    }
}

/* News v1.0.38 — large news cards use original uploads when available.
   Child/sublist/sidebar thumbnails intentionally remain on resized /files assets. */

/* =========================================================
   News v1.0.39 — Sidebar bamboo / coconut-thatch construction banner
   ========================================================= */
.hh-ng-service-banner {
    position: relative;
    overflow: hidden;
    margin: 20px 0 22px;
    padding: 24px 22px 22px;
    border: 1px solid rgba(12, 129, 116, .18);
    background:
        radial-gradient(circle at 92% 10%, rgba(241, 194, 110, .34) 0 42px, transparent 43px),
        linear-gradient(135deg, #0d6f63 0%, #0c8174 58%, #116155 100%);
    color: #fff;
    box-shadow: 0 9px 24px rgba(14, 90, 79, .12);
}
.hh-ng-service-banner::after {
    content: "";
    position: absolute;
    right: -22px;
    bottom: -34px;
    width: 124px;
    height: 124px;
    border: 18px solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    pointer-events: none;
}
.hh-ng-service-banner__kicker {
    position: relative;
    z-index: 1;
    margin-bottom: 8px;
    color: #f4cf83;
    font-size: 10px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: .10em;
}
.hh-ng-service-banner h2 {
    position: relative;
    z-index: 1;
    margin: 0 0 9px;
    color: #fff;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: clamp(21px, 1.5vw, 27px);
    line-height: 1.08;
    font-weight: 700;
    text-transform: none;
}
.hh-ng-service-banner p {
    position: relative;
    z-index: 1;
    margin: 0 0 16px;
    color: rgba(255, 255, 255, .9);
    font-size: 12px;
    line-height: 1.5;
}
.hh-ng-service-banner__phone {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    border: 1px solid rgba(255, 255, 255, .64);
    color: #153f36 !important;
    background: #f4cf83;
    font-size: 15px;
    line-height: 1;
    font-weight: 900;
    text-decoration: none !important;
    transition: transform .2s ease, background .2s ease;
}
.hh-ng-service-banner__phone:hover,
.hh-ng-service-banner__phone:focus {
    color: #123d35 !important;
    background: #fff1c4;
    transform: translateY(-1px);
}
.hh-ng-service-banner__phone .fa {
    font-size: 15px;
}
@media (max-width: 1100px) {
    .hh-ng-service-banner {
        display: none;
    }
}

/* =========================================================
   News v1.0.40 — sticky homepage sidebar
   Keep the whole sidebar visible while scrolling on desktop,
   and let it stop naturally at the end of the News content.
   ========================================================= */
@media (min-width: 1101px) {
    .hh-ng-body {
        align-items: start;
    }
    .hh-ng-side {
        position: sticky;
        top: 82px;
        align-self: start;
        height: max-content;
        min-width: 0;
    }
    .hh-ng-side .hh-ng-sticky {
        position: static !important;
        top: auto !important;
    }
}

@media (max-width: 1100px) {
    .hh-ng-side,
    .hh-ng-sticky {
        position: static !important;
        top: auto !important;
    }
}

/* =========================================================
   News v1.0.41 — robust fixed/sticky sidebar fallback
   JS manages fixed/bottom states so ancestor overflow/grid
   cannot disable sticky behavior.
   ========================================================= */
@media (min-width: 1101px) {
    .hh-news-guide {
        overflow-x: visible !important;
    }
    .hh-ng-body {
        position: relative;
        align-items: stretch !important;
        overflow: visible !important;
    }
    .hh-ng-side {
        position: relative !important;
        top: auto !important;
        align-self: stretch !important;
        height: auto !important;
        min-width: 0;
        overflow: visible !important;
    }
    .hh-ng-side .hh-ng-sticky {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        width: 100%;
        max-height: none;
        overflow: visible;
    }
    .hh-ng-side .hh-ng-sticky.hh-is-fixed {
        position: fixed !important;
        top: 82px !important;
        z-index: 50;
        max-height: calc(100vh - 98px);
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        scrollbar-width: thin;
    }
    .hh-ng-side .hh-ng-sticky.hh-is-bottom {
        position: absolute !important;
        top: auto !important;
        bottom: 0 !important;
        left: 0 !important;
        right: auto !important;
        width: 100% !important;
        max-height: calc(100vh - 98px);
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        scrollbar-width: thin;
    }
}


/* =========================================================
   News v1.0.42 — sidebar higher + no internal scrollbar
   Keep the pinned sidebar close to the top of the viewport and
   let the page itself handle scrolling. No nested scrollbar.
   ========================================================= */
@media (min-width: 1101px) {
    .hh-ng-side .hh-ng-sticky.hh-is-fixed {
        top: 6px !important;
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
        overflow-x: visible !important;
        overscroll-behavior: auto !important;
        scrollbar-width: none !important;
    }
    .hh-ng-side .hh-ng-sticky.hh-is-fixed::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    .hh-ng-side .hh-ng-sticky.hh-is-bottom {
        max-height: none !important;
        overflow: visible !important;
        overflow-y: visible !important;
        overflow-x: visible !important;
        overscroll-behavior: auto !important;
        scrollbar-width: none !important;
    }
    .hh-ng-side .hh-ng-sticky.hh-is-bottom::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }
}

/* =========================================================
   News v1.0.43 — article detail + share buttons inspired by FAIVO
   ========================================================= */
.hh-news-detail,
.hh-news-share {
    border: 1px solid #e7e1cf !important;
    background: #fdfaed !important;
    box-shadow: none !important;
}
.hh-news-detail > .panel-body,
.hh-news-share > .panel-body {
    padding: clamp(18px, 2.5vw, 32px);
}
.hh-news-detail__title {
    margin: 0 0 18px;
    color: #163d35 !important;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: clamp(30px, 3.4vw, 46px) !important;
    line-height: 1.14 !important;
    letter-spacing: -.015em;
    text-transform: uppercase;
}
.hh-news-detail__meta-row {
    margin-bottom: 18px !important;
}
.hh-news-detail__meta {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #80796b;
    font-size: 12px !important;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.hh-news-detail__lead {
    margin-bottom: 18px;
    color: #33463f !important;
    font-size: clamp(19px, 1.55vw, 22px) !important;
    line-height: 1.78 !important;
    font-weight: 500 !important;
}
.hh-news-detail__body {
    color: #263a33;
    font-size: clamp(17px, 1.28vw, 20px) !important;
    line-height: 1.9 !important;
}
.hh-news-detail__body h2,
.hh-news-detail__body h3,
.hh-news-detail__body h4 {
    color: #f26a1b !important;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-weight: 700;
    line-height: 1.22 !important;
}
.hh-news-detail__body h2 { font-size: clamp(30px, 2.65vw, 44px); }
.hh-news-detail__body h3 { font-size: clamp(25px, 2.2vw, 36px); }
.hh-news-detail__body h4 { font-size: clamp(21px, 1.8vw, 29px); }
.hh-news-detail figure.article.left {
    float: left;
    max-width: min(46%, 420px);
    margin: 0 24px 16px 0;
}
.hh-news-detail figure.article.center {
    margin: 18px auto 24px;
}
.hh-news-detail figure.article img.img-thumbnail {
    width: 100%;
    background: transparent;
}
.hh-news-detail .alert,
.hh-news-share .alert {
    border-radius: 14px;
}

.hh-news-share {
    border-top: 0 !important;
}
.hh-news-share__inner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    border-top: 1px solid #dad3c3;
    padding-top: 18px;
}
.hh-news-share__title {
    flex: 0 0 auto;
    color: #163d35;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.35;
    padding-top: 7px;
}
.hh-news-share__buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}
.hh-news-share__btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid #d7dbd5;
    border-radius: 10px;
    background: #fff;
    color: #24453e !important;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none !important;
    transition: .2s ease;
}
.hh-news-share__btn:hover,
.hh-news-share__btn:focus {
    border-color: #0c8174;
    color: #0c8174 !important;
    box-shadow: 0 6px 18px rgba(12,129,116,.08);
    transform: translateY(-1px);
}
.hh-news-share__btn span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 999px;
    background: #0c8174;
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
}
.hh-news-share__btn.is-copied {
    border-color: #0c8174;
    background: #eef7f5;
}

@media (max-width: 991px) {
    .hh-news-detail figure.article.left {
        float: none;
        max-width: 100%;
        margin: 0 0 16px;
    }
    .hh-news-share__inner {
        flex-direction: column;
    }
    .hh-news-share__title {
        padding-top: 0;
    }
    .hh-news-share__buttons {
        justify-content: flex-start;
    }
}

/* News v1.0.44 — full-width share buttons, requested order */
.hh-news-share__inner {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
}
.hh-news-share__title {
    width: 100%;
    padding-top: 0;
}
.hh-news-share__buttons--full {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
}
.hh-news-share__buttons--full .hh-news-share__btn {
    width: 100%;
    min-height: 42px;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
}
.hh-news-share__btn.hh-share-zalo span {
    background: #0c8174;
}
@media (max-width: 1100px) {
    .hh-news-share__buttons--full {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 640px) {
    .hh-news-share__buttons--full {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .hh-news-share__buttons--full .hh-news-share__btn {
        min-height: 40px;
        padding-left: 8px;
        padding-right: 8px;
        font-size: 11.5px;
    }
}

/* =========================================================
   News v1.0.45 — full-width article detail like FAIVO
   Widen the entire detail page (content + right sidebar + breadcrumb)
   without affecting the normal category/home layouts.
   ========================================================= */
body.hh-news-detail-page .hh-page-shell > .hh-container,
.hh-page-shell > .hh-container:has(.hh-news-detail) {
    width: min(calc(100% - 32px), 1500px);
    max-width: none;
}

body.hh-news-detail-page .hh-content-grid--right,
.hh-content-grid--right:has(.hh-news-detail) {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 340px);
    gap: clamp(28px, 2.5vw, 42px);
}

body.hh-news-detail-page .hh-main,
.hh-content-grid:has(.hh-news-detail) .hh-main {
    width: 100%;
    max-width: none;
    min-width: 0;
}

body.hh-news-detail-page .hh-news-detail,
body.hh-news-detail-page .hh-news-share,
.hh-main:has(.hh-news-detail) .hh-news-detail,
.hh-main:has(.hh-news-detail) .hh-news-share {
    width: 100%;
    max-width: none;
}

@media (max-width: 1100px) {
    body.hh-news-detail-page .hh-page-shell > .hh-container,
    .hh-page-shell > .hh-container:has(.hh-news-detail) {
        width: min(calc(100% - 24px), 1500px);
    }

    body.hh-news-detail-page .hh-content-grid--right,
    .hh-content-grid--right:has(.hh-news-detail) {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    body.hh-news-detail-page .hh-page-shell > .hh-container,
    .hh-page-shell > .hh-container:has(.hh-news-detail) {
        width: calc(100% - 16px);
    }
}

/* =========================================================
   News v1.0.46 — compact one-line sharing + single detail background
   ========================================================= */
body.hh-news-detail-page .hh-main,
.hh-content-grid:has(.hh-news-detail) .hh-main {
    background: #fdfaed;
}

/* Remove card/panel borders so the whole detail column reads as one surface. */
body.hh-news-detail-page .hh-main .news_column.panel,
body.hh-news-detail-page .hh-main .panel.panel-default,
.hh-main:has(.hh-news-detail) .news_column.panel,
.hh-main:has(.hh-news-detail) .panel.panel-default {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

body.hh-news-detail-page .hh-news-detail,
body.hh-news-detail-page .hh-news-share,
.hh-main:has(.hh-news-detail) .hh-news-detail,
.hh-main:has(.hh-news-detail) .hh-news-share {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.hh-news-detail-page .hh-news-share__inner,
.hh-main:has(.hh-news-detail) .hh-news-share__inner {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    border: 0 !important;
    padding-top: 0;
}

body.hh-news-detail-page .hh-news-share__title,
.hh-main:has(.hh-news-detail) .hh-news-share__title {
    flex: 0 0 auto;
    width: auto;
    margin: 0 8px 0 0;
    padding: 0;
    font-size: 16px;
    line-height: 1.2;
    white-space: nowrap;
}

body.hh-news-detail-page .hh-news-share__buttons--full,
.hh-main:has(.hh-news-detail) .hh-news-share__buttons--full {
    flex: 1 1 auto;
    width: auto;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    min-width: 0;
}

body.hh-news-detail-page .hh-news-share__buttons--full .hh-news-share__btn,
.hh-main:has(.hh-news-detail) .hh-news-share__buttons--full .hh-news-share__btn {
    width: auto;
    min-width: 0;
    min-height: 0;
    height: 30px;
    padding: 4px 8px;
    gap: 5px;
    border: 0 !important;
    border-radius: 7px;
    background: transparent;
    box-shadow: none !important;
    font-size: 10.5px;
    line-height: 1;
    white-space: nowrap;
}

body.hh-news-detail-page .hh-news-share__btn span,
.hh-main:has(.hh-news-detail) .hh-news-share__btn span {
    min-width: 17px;
    width: 17px;
    height: 17px;
    padding: 0;
    font-size: 8.5px;
}

body.hh-news-detail-page .hh-news-share__btn:hover,
body.hh-news-detail-page .hh-news-share__btn:focus,
.hh-main:has(.hh-news-detail) .hh-news-share__btn:hover,
.hh-main:has(.hh-news-detail) .hh-news-share__btn:focus {
    background: rgba(12,129,116,.07);
    transform: none;
}

/* Keep the one-surface treatment on the lower detail blocks too. */
body.hh-news-detail-page .hh-main .news_column + .news_column,
.hh-main:has(.hh-news-detail) .news_column + .news_column {
    margin-top: 0;
}

@media (max-width: 1100px) {
    body.hh-news-detail-page .hh-news-share__inner,
    .hh-main:has(.hh-news-detail) .hh-news-share__inner {
        flex-wrap: wrap;
    }
    body.hh-news-detail-page .hh-news-share__buttons--full,
    .hh-main:has(.hh-news-detail) .hh-news-share__buttons--full {
        flex-wrap: wrap;
    }
}

@media (max-width: 640px) {
    body.hh-news-detail-page .hh-news-share__inner,
    .hh-main:has(.hh-news-detail) .hh-news-share__inner {
        align-items: flex-start;
        gap: 8px;
    }
    body.hh-news-detail-page .hh-news-share__title,
    .hh-main:has(.hh-news-detail) .hh-news-share__title {
        width: 100%;
        font-size: 15px;
    }
    body.hh-news-detail-page .hh-news-share__buttons--full,
    .hh-main:has(.hh-news-detail) .hh-news-share__buttons--full {
        width: 100%;
    }
}

/* =========================================================
   News v1.0.47 — remove reader comments + cleaner older-news list
   ========================================================= */
.hh-news-detail + .news_column .other-news,
.news_column .other-news {
    background: transparent !important;
}

/* Remove legacy bullets/icons and use one refined teal chevron. */
.news_column .other-news .detail-related.related {
    margin: 0;
    padding: 0;
    list-style: none !important;
}
.news_column .other-news .detail-related.related li {
    position: relative;
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin: 0;
    padding: 7px 0 7px 24px;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(15, 118, 110, .10);
    list-style: none !important;
}
.news_column .other-news .detail-related.related li::marker {
    content: '';
}
.news_column .other-news .detail-related.related li::before {
    content: '›';
    position: absolute;
    left: 0;
    top: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #0c8174;
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
}
.news_column .other-news .detail-related.related li > h4 {
    display: inline;
    margin: 0;
    font-size: 14px;
    line-height: 1.45;
}
.news_column .other-news .detail-related.related li > h4 a {
    color: #173f37;
    text-decoration: none;
}
.news_column .other-news .detail-related.related li > h4 a:hover {
    color: #0c8174;
}
.news_column .other-news .detail-related.related li > em:not(.fa) {
    color: #6c7f79;
    font-size: 12px;
    white-space: nowrap;
}

/* =========================================================
   News v1.0.48 — cleaner older-news icon, borderless detail images,
   and unified yellow detail surface
   ========================================================= */

/* One continuous yellow surface for the lower detail area too */
.hh-main:has(.hh-news-detail) .news_column,
.hh-main:has(.hh-news-detail) .news_column > .panel-body,
.hh-main:has(.hh-news-detail) .news_column > .panel-heading,
.hh-main:has(.hh-news-detail) .news_column.other-news,
.hh-main:has(.hh-news-detail) .other-news {
    background: #fdfaed !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Detail images: remove every thumbnail/panel border look */
.hh-news-detail figure.article,
.hh-news-detail figure.article p,
.hh-news-detail figure.article .text-center,
.hh-news-detail__body figure,
.hh-news-detail__body p img,
.hh-news-detail img.img-thumbnail,
.hh-news-detail__body img {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}
.hh-news-detail img.img-thumbnail,
.hh-news-detail__body img {
    padding: 0 !important;
}

/* Older-news list: keep only one nicer icon */
.news_column .other-news .detail-related.related li > .fa-angle-right,
.news_column .other-news .detail-related.related li > .icon_new {
    display: none !important;
}
.news_column .other-news .detail-related.related li {
    gap: 0;
    padding: 7px 0 7px 28px;
}
.news_column .other-news .detail-related.related li::before {
    content: '➜';
    left: 0;
    top: 9px;
    width: 17px;
    height: 17px;
    border-radius: 999px;
    background: linear-gradient(180deg, #0d8c7d 0%, #0b7468 100%);
    color: #fff;
    font-family: Arial, sans-serif;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 2px 6px rgba(11, 116, 104, .16);
}
.news_column .other-news .detail-related.related li > h4,
.news_column .other-news .detail-related.related li > em:not(.fa) {
    display: inline;
}
.news_column .other-news .detail-related.related li > h4 {
    margin-right: 6px;
}

/* Keep the whole detail page area visually consistent */
.hh-main:has(.hh-news-detail) {
    background: #fdfaed;
}

/* =========================================================
   News v1.0.49 — full yellow detail background + rating/share on one row
   ========================================================= */
body.hh-body:has(.hh-news-detail),
body.hh-body:has(.hh-news-detail) .hh-page-shell,
body.hh-body:has(.hh-news-detail) .hh-page-shell > .hh-container,
body.hh-body:has(.hh-news-detail) .hh-content-grid,
body.hh-body:has(.hh-news-detail) .hh-main,
body.hh-body:has(.hh-news-detail) .hh-sidebar {
    background: #fdfaed !important;
}

.hh-detail-actions-row {
    display: flex;
    align-items: center;
    gap: 18px;
    width: 100%;
    margin: 0;
    padding: 8px 0 10px;
    background: #fdfaed;
}
.hh-detail-actions-row > .hh-news-rating,
.hh-detail-actions-row > .hh-news-share {
    margin: 0 !important;
    background: #fdfaed !important;
    border: 0 !important;
    box-shadow: none !important;
}
.hh-detail-actions-row > .hh-news-rating {
    flex: 0 1 430px;
}
.hh-detail-actions-row > .hh-news-share {
    flex: 1 1 auto;
    min-width: 0;
}
.hh-news-rating > .panel-body,
.hh-detail-actions-row .hh-news-share > .panel-body {
    padding: 0 !important;
}
.hh-news-rating form,
.hh-news-rating .h5 {
    margin: 0 !important;
}
.hh-news-rating .h5 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3px 10px;
    color: #173f37;
    font-size: 12px;
    line-height: 1.35;
    font-weight: 700;
}
.hh-news-rating #stringrating {
    margin: 0 !important;
    white-space: nowrap;
}
.hh-news-rating [itemtype="https://schema.org/AggregateRating"] {
    white-space: nowrap;
}
.hh-news-rating .h5 > div {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 !important;
    white-space: nowrap;
}
.hh-news-rating #hover-test {
    margin: 0 0 0 6px !important;
    color: #536b64;
    font-size: 11px;
    font-weight: 600;
}

.hh-detail-actions-row .hh-news-share__inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
    padding: 0 !important;
    border: 0 !important;
}
.hh-detail-actions-row .hh-news-share__title {
    margin: 0 6px 0 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.2;
    white-space: nowrap;
}
.hh-detail-actions-row .hh-news-share__buttons--full {
    flex: 1 1 auto;
    width: auto !important;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 5px;
    min-width: 0;
}
.hh-detail-actions-row .hh-news-share__btn {
    height: 28px !important;
    padding: 3px 7px !important;
    font-size: 10px !important;
}
.hh-detail-actions-row .hh-news-share__btn span {
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
    font-size: 8px !important;
}

@media (max-width: 1180px) {
    .hh-detail-actions-row {
        flex-wrap: wrap;
        align-items: flex-start;
    }
    .hh-detail-actions-row > .hh-news-rating,
    .hh-detail-actions-row > .hh-news-share {
        flex: 1 1 100%;
    }
}
@media (max-width: 720px) {
    .hh-news-rating .h5 {
        white-space: normal;
    }
    .hh-news-rating #stringrating,
    .hh-news-rating [itemtype="https://schema.org/AggregateRating"] {
        white-space: normal;
    }
    .hh-detail-actions-row .hh-news-share__inner {
        flex-wrap: wrap;
    }
    .hh-detail-actions-row .hh-news-share__buttons--full {
        width: 100% !important;
        flex-wrap: wrap;
    }
}

/* =========================================================
   News v1.0.50 — hide tags/editor, tighten rating/share, square images
   ========================================================= */
/* Reduce the visual gap before rating/share after removing tags/editor. */
.hh-main:has(.hh-news-detail) .hh-news-detail {
    margin-bottom: 0 !important;
}
.hh-main:has(.hh-news-detail) .hh-news-detail > .panel-body {
    padding-bottom: 8px !important;
}
.hh-main:has(.hh-news-detail) .hh-detail-actions-row {
    margin-top: 0 !important;
    padding-top: 2px !important;
    padding-bottom: 6px !important;
    gap: 12px !important;
}
.hh-main:has(.hh-news-detail) .hh-detail-actions-row > .hh-news-rating,
.hh-main:has(.hh-news-detail) .hh-detail-actions-row > .hh-news-share {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Article images are completely borderless and square-cornered. */
.hh-main:has(.hh-news-detail) .hh-news-detail img,
.hh-main:has(.hh-news-detail) .hh-news-detail img.img-thumbnail,
.hh-main:has(.hh-news-detail) .hh-news-detail__body img,
.hh-main:has(.hh-news-detail) .hh-news-detail figure.article,
.hh-main:has(.hh-news-detail) .hh-news-detail__body figure {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

/* =========================================================
   News v1.0.51 — restore editor/source line; keep tags hidden
   ========================================================= */
.hh-news-detail__author-source {
    margin: 10px 0 4px !important;
}
.hh-news-detail__author-source p {
    margin: 2px 0 !important;
    color: #536b64;
    font-size: 13px;
    line-height: 1.45;
}
.hh-news-detail__author-source strong {
    color: #173f37;
}


/* =========================================================
   News v1.0.53 — align rating left, share right, Vietnamese label
   ========================================================= */
.hh-detail-actions-row {
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 24px !important;
}
.hh-detail-actions-row > .hh-news-rating {
    flex: 0 0 auto !important;
    min-width: 330px;
    max-width: 430px;
    text-align: left !important;
}
.hh-news-rating .h5 {
    display: block !important;
    width: 100%;
    text-align: left !important;
    line-height: 1.45 !important;
}
.hh-news-rating #stringrating {
    display: block !important;
    width: 100%;
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
    text-align: left !important;
    white-space: normal !important;
}
.hh-news-rating [itemtype="https://schema.org/AggregateRating"] {
    display: block !important;
    width: 100%;
    margin: 0 0 3px 0 !important;
    padding: 0 !important;
    text-align: left !important;
    white-space: normal !important;
}
.hh-news-rating .h5 > div {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}
.hh-news-rating .star-rating-control,
.hh-news-rating .rating-cancel,
.hh-news-rating .star-rating {
    float: none !important;
}
.hh-news-rating .star-rating-control {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
}
.hh-news-rating #hover-test {
    margin: 0 0 0 8px !important;
    text-align: left !important;
}
.hh-detail-actions-row > .hh-news-share {
    flex: 0 1 auto !important;
    margin-left: auto !important;
    text-align: right !important;
}
.hh-detail-actions-row .hh-news-share__inner {
    justify-content: flex-end !important;
    align-items: center !important;
    width: auto !important;
}
.hh-detail-actions-row .hh-news-share__title {
    text-align: right !important;
}
.hh-detail-actions-row .hh-news-share__buttons--full {
    flex: 0 1 auto !important;
    justify-content: flex-end !important;
    width: auto !important;
}
@media (max-width: 1180px) {
    .hh-detail-actions-row > .hh-news-rating,
    .hh-detail-actions-row > .hh-news-share {
        width: 100%;
        max-width: none;
        min-width: 0;
    }
    .hh-detail-actions-row > .hh-news-share {
        margin-left: 0 !important;
        text-align: left !important;
    }
    .hh-detail-actions-row .hh-news-share__inner,
    .hh-detail-actions-row .hh-news-share__buttons--full {
        justify-content: flex-start !important;
    }
    .hh-detail-actions-row .hh-news-share__title {
        text-align: left !important;
    }
}

/* =========================================================
   News v1.0.54 — one shared content gutter for detail page
   Align article text/images, rating, share and older-news blocks
   to the same left/right edges.
   ========================================================= */
.hh-main:has(.hh-news-detail) {
    --hh-detail-gutter: clamp(18px, 2.5vw, 32px);
}

/* Main article defines the alignment grid. */
.hh-main:has(.hh-news-detail) .hh-news-detail > .panel-body {
    padding-left: var(--hh-detail-gutter) !important;
    padding-right: var(--hh-detail-gutter) !important;
}
.hh-main:has(.hh-news-detail) .hh-news-detail__lead,
.hh-main:has(.hh-news-detail) .hh-news-detail__body {
    width: 100%;
    max-width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
}
.hh-main:has(.hh-news-detail) .hh-news-detail__body > p,
.hh-main:has(.hh-news-detail) .hh-news-detail__body > h2,
.hh-main:has(.hh-news-detail) .hh-news-detail__body > h3,
.hh-main:has(.hh-news-detail) .hh-news-detail__body > h4,
.hh-main:has(.hh-news-detail) .hh-news-detail__body > ul,
.hh-main:has(.hh-news-detail) .hh-news-detail__body > ol,
.hh-main:has(.hh-news-detail) .hh-news-detail__body > blockquote {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Article figures/images follow the same content edges. */
.hh-main:has(.hh-news-detail) .hh-news-detail figure.article.center,
.hh-main:has(.hh-news-detail) .hh-news-detail__body figure {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.hh-main:has(.hh-news-detail) .hh-news-detail figure.article.center img,
.hh-main:has(.hh-news-detail) .hh-news-detail__body figure img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

/* Rating/share row uses exactly the article gutter. */
.hh-main:has(.hh-news-detail) .hh-detail-actions-row {
    width: 100%;
    box-sizing: border-box;
    padding-left: var(--hh-detail-gutter) !important;
    padding-right: var(--hh-detail-gutter) !important;
}
.hh-main:has(.hh-news-detail) .hh-detail-actions-row > .hh-news-rating {
    margin-left: 0 !important;
}
.hh-main:has(.hh-news-detail) .hh-detail-actions-row > .hh-news-share {
    margin-left: auto !important;
    margin-right: 0 !important;
}
.hh-main:has(.hh-news-detail) .hh-news-rating .panel-body,
.hh-main:has(.hh-news-detail) .hh-news-rating form,
.hh-main:has(.hh-news-detail) .hh-news-rating .h5,
.hh-main:has(.hh-news-detail) .hh-news-rating #stringrating,
.hh-main:has(.hh-news-detail) .hh-news-rating [itemtype="https://schema.org/AggregateRating"],
.hh-main:has(.hh-news-detail) .hh-news-rating .h5 > div {
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
}
.hh-main:has(.hh-news-detail) .hh-detail-actions-row .hh-news-share__inner,
.hh-main:has(.hh-news-detail) .hh-detail-actions-row .hh-news-share__buttons--full {
    justify-content: flex-end !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
}

/* Older-news block begins and ends on the same grid as the article. */
.hh-main:has(.hh-news-detail) .news_column > .panel-body.other-news {
    box-sizing: border-box;
    padding-left: var(--hh-detail-gutter) !important;
    padding-right: var(--hh-detail-gutter) !important;
}
.hh-main:has(.hh-news-detail) .other-news > .h3,
.hh-main:has(.hh-news-detail) .other-news > p.h3,
.hh-main:has(.hh-news-detail) .other-news > div,
.hh-main:has(.hh-news-detail) .other-news .detail-related.related {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100%;
    max-width: 100%;
}
.hh-main:has(.hh-news-detail) .other-news .detail-related.related li {
    box-sizing: border-box;
    width: 100%;
}

@media (max-width: 1180px) {
    .hh-main:has(.hh-news-detail) .hh-detail-actions-row > .hh-news-share {
        margin-left: 0 !important;
    }
    .hh-main:has(.hh-news-detail) .hh-detail-actions-row .hh-news-share__inner,
    .hh-main:has(.hh-news-detail) .hh-detail-actions-row .hh-news-share__buttons--full {
        justify-content: flex-start !important;
    }
}

/* =========================================================
   News v1.0.55 — mobile related-list icon alignment + remove old toolbar
   ========================================================= */
@media (max-width: 640px) {
    .hh-main:has(.hh-news-detail) .other-news .detail-related.related li {
        display: grid !important;
        grid-template-columns: 18px minmax(0, 1fr) !important;
        column-gap: 8px !important;
        row-gap: 2px !important;
        align-items: start !important;
        padding: 8px 0 !important;
    }

    .hh-main:has(.hh-news-detail) .other-news .detail-related.related li::before {
        position: static !important;
        grid-column: 1 !important;
        grid-row: 1 / span 2 !important;
        align-self: start !important;
        justify-self: start !important;
        margin-top: 2px !important;
        width: 17px !important;
        height: 17px !important;
        line-height: 1 !important;
    }

    .hh-main:has(.hh-news-detail) .other-news .detail-related.related li > h4 {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: block !important;
        min-width: 0 !important;
        margin: 0 !important;
        line-height: 1.35 !important;
    }

    .hh-main:has(.hh-news-detail) .other-news .detail-related.related li > em:not(.fa) {
        grid-column: 2 !important;
        grid-row: 2 !important;
        display: block !important;
        margin: 0 !important;
        white-space: normal !important;
        line-height: 1.25 !important;
    }
}

/* =========================================================
   v1.0.56 — access statistics in footer
   ========================================================= */
.hh-footer__grid {
    grid-template-columns: 1.25fr .85fr .9fr 1fr;
    gap: 38px;
}
.hh-footer__stats {
    min-width: 0;
}
.hh-footer-stats h3 {
    margin: 0 0 14px;
    color: #fff !important;
    font-family: Cambria, Georgia, "Times New Roman", serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
}
.hh-footer-stats__list {
    display: grid;
    gap: 8px;
}
.hh-footer-stats__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 7px 0;
    border-bottom: 1px solid rgba(255,255,255,.10);
    font-size: 13px;
    line-height: 1.35;
}
.hh-footer-stats__item span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: rgba(255,255,255,.78);
}
.hh-footer-stats__item i {
    width: 14px;
    color: #f2c66d;
    text-align: center;
}
.hh-footer-stats__item strong {
    flex: 0 0 auto;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}
@media (max-width: 1100px) {
    .hh-footer__grid {
        grid-template-columns: 1.2fr 1fr 1fr;
    }
    .hh-footer__stats {
        grid-column: 1 / -1;
    }
    .hh-footer-stats__list {
        grid-template-columns: repeat(4, minmax(0,1fr));
        gap: 18px;
    }
}
@media (max-width: 720px) {
    .hh-footer__grid {
        grid-template-columns: 1fr;
        gap: 26px;
        padding: 34px 0 24px;
    }
    .hh-footer__stats {
        grid-column: auto;
    }
    .hh-footer-stats__list {
        grid-template-columns: 1fr 1fr;
        gap: 0 18px;
    }
}
@media (max-width: 420px) {
    .hh-footer-stats__list {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   Footer v1.0.60 — contact line + centered copyright/design
   ========================================================= */
.hh-footer-brand__email {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 2px;
    color: rgba(255,255,255,.9) !important;
    text-decoration: none !important;
}
.hh-footer-brand__email:hover {
    color: #fff !important;
}
.hh-footer__bottom {
    position: relative;
    justify-content: center !important;
    text-align: center;
    padding-left: 54px;
    padding-right: 54px;
}
.hh-footer__bottom > div:first-child {
    width: 100%;
    text-align: center;
}
.hh-footer__bottom .hh-backtop {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.hh-footer-copyright {
    width: 100%;
    text-align: center;
    line-height: 1.65;
}
.hh-footer-copyright a {
    color: rgba(255,255,255,.84) !important;
    text-decoration: none !important;
}
.hh-footer-copyright a:hover {
    color: #fff !important;
}
@media (max-width: 640px) {
    .hh-footer__bottom {
        min-height: 92px;
        padding: 16px 52px 16px 8px;
    }
    .hh-footer-copyright {
        font-size: 12px;
    }
    .hh-footer-copyright__design {
        display: block;
    }
}


/* Footer v1.0.61 — centered copyright/design cluster */
.hh-footer-copyright__main {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: auto;
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}
@media (max-width: 640px) {
    .hh-footer-copyright__design {
        display: inline !important;
    }
}

/* =========================================================
   Footer v1.0.63 — align footer gutters with News homepage
   ========================================================= */
.hh-footer > .hh-container {
    width: min(1420px, calc(100% - 24px)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.hh-footer__grid {
    width: 100%;
    grid-template-columns: minmax(0,1.25fr) minmax(0,.9fr) minmax(0,.95fr) minmax(0,1fr);
    column-gap: 42px;
    align-items: start;
}
.hh-footer__brand,
.hh-footer__nav,
.hh-footer__extra,
.hh-footer__stats {
    min-width: 0;
}
@media (max-width: 1100px) {
    .hh-footer__grid {
        grid-template-columns: minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);
        column-gap: 32px;
    }
}
@media (max-width: 720px) {
    .hh-footer > .hh-container {
        width: calc(100% - 16px) !important;
    }
    .hh-footer__grid {
        grid-template-columns: 1fr;
        column-gap: 0;
    }
}


/* =========================================================
   Footer v1.0.64 — 3 equal footer clusters
   ========================================================= */
.hh-footer__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 56px !important;
    row-gap: 28px !important;
    align-items: start !important;
}
.hh-footer__brand,
.hh-footer__nav,
.hh-footer__stats {
    width: 100%;
    min-width: 0;
}
.hh-footer__brand { justify-self: start; }
.hh-footer__nav { justify-self: stretch; }
.hh-footer__stats { justify-self: end; }

@media (max-width: 1100px) {
    .hh-footer__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: 32px !important;
    }
}
@media (max-width: 820px) {
    .hh-footer__grid {
        grid-template-columns: 1fr !important;
        row-gap: 26px !important;
    }
    .hh-footer__brand,
    .hh-footer__nav,
    .hh-footer__stats {
        justify-self: stretch !important;
    }
}


/* =========================================================
   Footer v1.0.65 — visually balance the 3 footer clusters
   ========================================================= */
@media (min-width: 821px) {
    .hh-footer__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        column-gap: 44px !important;
        align-items: start !important;
    }

    /* Left cluster anchors to the same left gutter as homepage content. */
    .hh-footer__brand {
        width: 100% !important;
        max-width: 430px !important;
        justify-self: start !important;
        text-align: left !important;
    }

    /* Middle cluster is centered in the middle third, instead of hugging its left edge. */
    .hh-footer__nav {
        width: max-content !important;
        max-width: 100% !important;
        justify-self: center !important;
        text-align: left !important;
    }

    /* Right cluster anchors to the same right gutter as homepage content. */
    .hh-footer__stats {
        width: 100% !important;
        max-width: 380px !important;
        justify-self: end !important;
    }
}

@media (max-width: 820px) {
    .hh-footer__brand,
    .hh-footer__nav,
    .hh-footer__stats {
        width: 100% !important;
        max-width: none !important;
        justify-self: stretch !important;
        text-align: left !important;
    }
}


/* v1.0.66 — Dedicated Terms of Use page */
body.hh-body:has(.hh-terms) .hh-main,
body.hh-body:has(.hh-terms) .hh-page-shell,
body.hh-body:has(.hh-terms) .hh-page-shell > .hh-container {
    background:#fdfaed !important;
}
body.hh-body:has(.hh-terms) .hh-content-grid {
    display:block !important;
    max-width:1500px;
    margin:0 auto;
}
body.hh-body:has(.hh-terms) .hh-sidebar { display:none !important; }
.hh-terms {
    width:100%;
    max-width:1450px;
    margin:0 auto;
    padding:22px 0 52px;
    color:#173a34;
}
.hh-terms__hero {
    position:relative;
    overflow:hidden;
    padding:50px 54px 44px;
    border-radius:24px;
    background:linear-gradient(135deg,#123d35 0%,#1b5a4b 100%);
    color:#fff;
    box-shadow:0 16px 44px rgba(20,58,49,.13);
}
.hh-terms__hero:after {
    content:"";
    position:absolute;
    width:290px;
    height:290px;
    right:-85px;
    top:-95px;
    border-radius:50%;
    background:rgba(141,214,39,.13);
}
.hh-terms__eyebrow {
    position:relative;
    z-index:1;
    margin-bottom:12px;
    font-size:13px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#d8f7ad;
}
.hh-terms__eyebrow i { margin-right:7px; color:#95dc2c; }
.hh-terms__hero h1 {
    position:relative;
    z-index:1;
    margin:0 0 15px;
    color:#fff !important;
    font-size:clamp(36px,4vw,58px);
    line-height:1.05;
    font-weight:800;
    letter-spacing:-.035em;
}
.hh-terms__hero > p {
    position:relative;
    z-index:1;
    max-width:900px;
    margin:0;
    font-size:17px;
    line-height:1.75;
    color:rgba(255,255,255,.88);
}
.hh-terms__meta {
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    gap:12px 26px;
    margin-top:24px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.16);
    font-size:13px;
    color:rgba(255,255,255,.78);
}
.hh-terms__meta i { margin-right:7px; color:#a7e04c; }
.hh-terms__meta a { color:#fff; }
.hh-terms__intro {
    max-width:1080px;
    margin:30px auto 24px;
    padding:2px 26px;
    text-align:center;
    font-size:16px;
    line-height:1.8;
    color:#48645f;
}
.hh-terms__intro p { margin:0 0 10px; }
.hh-terms__grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:28px;
}
.hh-terms__card {
    position:relative;
    margin:0;
    padding:26px 28px;
    border:1px solid rgba(18,61,53,.10);
    border-radius:18px;
    background:#fffef8;
    box-shadow:0 8px 24px rgba(27,61,54,.055);
}
.hh-terms__card-head {
    display:grid;
    grid-template-columns:38px 40px minmax(0,1fr);
    align-items:center;
    gap:10px;
    margin-bottom:15px;
}
.hh-terms__num {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:28px;
    border-radius:999px;
    background:#eef8df;
    color:#4f7f15;
    font-size:12px;
    font-weight:800;
    letter-spacing:.04em;
}
.hh-terms__icon {
    display:inline-grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:12px;
    background:#17483f;
    color:#b7eb67;
    font-size:16px;
}
.hh-terms__card h2 {
    margin:0 !important;
    color:#173a34 !important;
    font-size:19px !important;
    line-height:1.35 !important;
    font-weight:800 !important;
}
.hh-terms__card-body {
    color:#49625e;
    font-size:14.5px;
    line-height:1.72;
}
.hh-terms__card-body p { margin:0 0 11px; }
.hh-terms__card-body p:last-child { margin-bottom:0; }
.hh-terms__card-body ul { margin:4px 0 12px; padding-left:20px; }
.hh-terms__card-body li { margin:5px 0; }
.hh-terms__card-body a { color:#0e7767; font-weight:700; }
.hh-terms__note {
    margin-top:14px !important;
    padding:12px 14px;
    border-radius:12px;
    background:#f2f8e9;
    color:#345e35;
}
.hh-terms__note i { margin-right:7px; color:#72b51d; }
.hh-terms__contact {
    margin-top:13px;
    padding:15px 17px;
    border-left:3px solid #88ce24;
    border-radius:0 10px 10px 0;
    background:#f4f8ee;
    line-height:1.8;
}
.hh-terms__closing {
    position:relative;
    max-width:1050px;
    margin:34px auto 0;
    padding:28px 44px;
    border-radius:18px;
    background:#173f37;
    color:#fff;
    text-align:center;
}
.hh-terms__closing > i {
    display:block;
    margin-bottom:10px;
    color:#9ddd3d;
    font-size:25px;
}
.hh-terms__closing p {
    margin:0;
    font-size:17px;
    line-height:1.7;
    font-weight:600;
    color:#fff;
}
@media (max-width:1100px) {
    .hh-terms { padding-left:14px; padding-right:14px; }
    .hh-terms__grid { grid-template-columns:1fr; }
}
@media (max-width:767px) {
    .hh-terms { padding:10px 8px 34px; }
    .hh-terms__hero { padding:32px 22px 28px; border-radius:17px; }
    .hh-terms__hero h1 { font-size:34px; }
    .hh-terms__hero > p { font-size:15px; line-height:1.65; }
    .hh-terms__meta { display:block; margin-top:18px; padding-top:15px; }
    .hh-terms__meta span { display:block; margin:6px 0; }
    .hh-terms__intro { margin:20px auto 14px; padding:0 8px; text-align:left; font-size:15px; }
    .hh-terms__grid { gap:12px; margin-top:18px; }
    .hh-terms__card { padding:20px 18px; border-radius:14px; }
    .hh-terms__card-head { grid-template-columns:34px 36px minmax(0,1fr); gap:8px; }
    .hh-terms__num { width:34px; height:26px; }
    .hh-terms__icon { width:36px; height:36px; }
    .hh-terms__card h2 { font-size:17px !important; }
    .hh-terms__card-body { font-size:14px; }
    .hh-terms__closing { margin-top:20px; padding:22px 18px; border-radius:14px; }
    .hh-terms__closing p { font-size:15px; }
}


/* v1.0.67 — Terms page true full-width container */
body.hh-body:has(.hh-terms) .hh-page-shell > .hh-container {
    width: min(calc(100% - 32px), 1500px) !important;
    max-width: none !important;
}
body.hh-body:has(.hh-terms) .hh-content-grid,
body.hh-body:has(.hh-terms) .hh-main {
    width: 100% !important;
    max-width: none !important;
}
.hh-terms {
    width: 100% !important;
    max-width: none !important;
}
.hh-terms__intro a { color:#0e7767; font-weight:800; }
@media (max-width:1100px) {
    body.hh-body:has(.hh-terms) .hh-page-shell > .hh-container {
        width: min(calc(100% - 24px), 1500px) !important;
    }
}
@media (max-width:640px) {
    body.hh-body:has(.hh-terms) .hh-page-shell > .hh-container {
        width: calc(100% - 16px) !important;
    }
}


/* News v1.0.68 — article detail sidebar mirrors News homepage sidebar */
.hh-content-grid--right > .hh-news-detail-side {
    min-width: 0;
    align-self: stretch;
}
.hh-news-detail-side .hh-ng-sticky {
    width: 100%;
}
@media (min-width: 1101px) {
    .hh-content-grid--right:has(.hh-news-detail-side) {
        grid-template-columns: minmax(0, 1fr) 355px;
        gap: 34px;
    }
}
@media (max-width: 1100px) {
    .hh-news-detail-side {
        display: none !important;
    }
}


/* News v1.0.69 — detail sidebar uses the exact News-home structure and behavior */
.hh-content-grid--right > .hh-news-detail-side {
    position: relative !important;
    top: auto !important;
    width: 355px !important;
    max-width: 355px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    align-self: stretch !important;
}
.hh-news-detail-side > .hh-ng-sticky {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
@media (min-width:1101px) {
    .hh-content-grid--right:has(.hh-news-detail-side) {
        grid-template-columns: minmax(0,1fr) 355px !important;
        gap: 34px !important;
    }
}
@media (max-width:1100px) {
    .hh-news-detail-side { display:none !important; }
}

/* =========================================================
   News v1.0.70 — make detail sidebar render 100% like News home
   The News-home parent (.hh-news-guide) previously owned the thumbnail
   CSS variables and box-sizing context. Detail pages did not inherit them,
   so Recent Posts collapsed into full-width images. Give the shared sidebar
   its own identical rendering context on every page.
   ========================================================= */
.hh-ng-side {
    --hh-sub-thumb-w: clamp(104px, 9vw, 132px);
    --hh-sub-thumb-ratio: 11 / 7;
    color: #153f36;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
.hh-ng-side,
.hh-ng-side * {
    box-sizing: border-box;
}
.hh-ng-side .hh-ng-sidebox article.has-image {
    display: grid !important;
    grid-template-columns: var(--hh-sub-thumb-w) minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: stretch !important;
}
.hh-ng-side .hh-ng-sidebox__image {
    display: block !important;
    width: var(--hh-sub-thumb-w) !important;
    min-width: var(--hh-sub-thumb-w) !important;
    overflow: hidden !important;
}
.hh-ng-side .hh-ng-sidebox__image img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: var(--hh-sub-thumb-ratio) !important;
    object-fit: cover !important;
}
.hh-ng-side .hh-ng-sidebox__copy {
    min-width: 0 !important;
    width: auto !important;
}
@media (max-width: 520px) {
    .hh-ng-side {
        --hh-sub-thumb-w: clamp(92px, 29vw, 104px);
    }
}


/* =========================================================
   News v1.0.71 — stable sticky sidebar on article detail
   Detail pages no longer use the JS fixed-position fallback. Native sticky
   preserves the exact sidebar column width/left edge while scrolling and
   stops naturally at the end of the article/grid before the footer.
   ========================================================= */
@media (min-width:1101px) {
    .hh-content-grid--right > .hh-news-detail-side {
        position: relative !important;
        width: 355px !important;
        max-width: 355px !important;
        min-width: 355px !important;
        align-self: stretch !important;
        overflow: visible !important;
    }
    .hh-news-detail-side > .hh-ng-sticky,
    .hh-news-detail-side > .hh-ng-sticky.hh-is-fixed,
    .hh-news-detail-side > .hh-ng-sticky.hh-is-bottom {
        position: sticky !important;
        top: 6px !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        overflow: visible !important;
        transform: none !important;
        z-index: 20 !important;
    }
    .hh-news-detail-side .hh-ng-sidebox,
    .hh-news-detail-side .hh-ng-plan,
    .hh-news-detail-side .hh-ng-build {
        width: 100% !important;
        max-width: 100% !important;
    }
    .hh-news-detail-side .hh-ng-sidebox__copy {
        overflow: hidden !important;
    }
    .hh-news-detail-side .hh-ng-sidebox h3,
    .hh-news-detail-side .hh-ng-sidebox small {
        overflow-wrap: anywhere;
        word-break: normal;
    }
}


/* =========================================================
   News v1.0.72 — detail sidebar pins exactly like News home
   Re-enable the proven JS fixed/bottom routine for article detail while
   hard-locking the detail column geometry so there is no width/left drift.
   ========================================================= */
@media (min-width:1101px) {
    .hh-content-grid--right > .hh-news-detail-side {
        position: relative !important;
        width: 355px !important;
        min-width: 355px !important;
        max-width: 355px !important;
        align-self: stretch !important;
        overflow: visible !important;
    }

    /* Natural state */
    .hh-news-detail-side > .hh-ng-sticky {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        width: 355px !important;
        max-width: 355px !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        overflow: visible !important;
        transform: none !important;
        z-index: 20 !important;
    }

    /* Pinned while scrolling — left is supplied by JS from the real grid column. */
    .hh-news-detail-side > .hh-ng-sticky.hh-is-fixed {
        position: fixed !important;
        top: 6px !important;
        right: auto !important;
        bottom: auto !important;
        width: 355px !important;
        max-width: 355px !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        overflow: visible !important;
        transform: none !important;
        z-index: 50 !important;
    }

    /* Stop at the bottom of the detail grid before the footer. */
    .hh-news-detail-side > .hh-ng-sticky.hh-is-bottom {
        position: absolute !important;
        top: auto !important;
        left: 0 !important;
        right: auto !important;
        bottom: 0 !important;
        width: 355px !important;
        max-width: 355px !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        overflow: visible !important;
        transform: none !important;
        z-index: 20 !important;
    }
}


/* =========================================================
   News v1.0.73 — detail sidebar title/excerpt limits match News home
   Keep recent-post rows compact: title max 2 lines, excerpt max 2 lines.
   JS performs whole-word truncation and appends a single ellipsis.
   ========================================================= */
.hh-news-detail-side .hh-ng-sidebox__copy h3,
.hh-news-detail-side .hh-ng-sidebox__copy h3 a {
    display: block !important;
    overflow: hidden !important;
    white-space: normal !important;
    line-height: 1.2 !important;
    max-height: 2.4em !important;
}
.hh-news-detail-side .hh-ng-sidebox__copy p {
    display: block !important;
    overflow: hidden !important;
    white-space: normal !important;
    line-height: 1.38 !important;
    max-height: 2.76em !important;
}


/* =========================================================
   v1.0.75 — Quick-contact floating buttons on the right
   Phone / Zalo / WhatsApp / Messenger
   ========================================================= */
.hh-right-contact {
    position: fixed;
    right: 12px;
    left: auto;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9990;
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin: 0;
    padding: 0;
}
.hh-right-contact__item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    text-decoration: none !important;
    border-radius: 999px;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.20);
    transition: transform .18s ease, box-shadow .18s ease;
}
.hh-right-contact__item:hover,
.hh-right-contact__item:focus {
    color: #fff !important;
    text-decoration: none !important;
    transform: translateX(-2px);
    box-shadow: 0 6px 18px rgba(0,0,0,.26);
    outline: none;
}
.hh-right-contact__icon {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    overflow: hidden;
}
.hh-right-contact__icon--zalo {
    background: #008FE5;
}
.hh-right-contact__icon--zalo img {
    display: block;
    width: 38px;
    height: 38px;
    object-fit: contain;
    border-radius: 50%;
}
.hh-right-contact__label {
    position: absolute;
    right: 54px;
    left: auto;
    top: 50%;
    transform: translate(6px,-50%);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    white-space: nowrap;
    padding: 8px 11px;
    border-radius: 7px;
    background: #15352f;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: 0 4px 14px rgba(0,0,0,.18);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}
.hh-right-contact__item:hover .hh-right-contact__label,
.hh-right-contact__item:focus .hh-right-contact__label {
    opacity: 1;
    visibility: visible;
    transform: translate(0,-50%);
}
.hh-right-contact__item--phone { background: #16884f; }
.hh-right-contact__item--zalo { background: #008FE5; }
.hh-right-contact__item--whatsapp { background: #20b85a; }
.hh-right-contact__item--messenger { background: #1473e6; }

@media (max-width: 767px) {
    .hh-right-contact {
        right: 6px;
        left: auto;
        top: 50%;
        gap: 7px;
    }
    .hh-right-contact__item,
    .hh-right-contact__icon {
        width: 40px;
        height: 40px;
        flex-basis: 40px;
    }
    .hh-right-contact__icon { font-size: 18px; }
    .hh-right-contact__icon--zalo img { width: 34px; height: 34px; border-radius: 50%; }
    .hh-right-contact__label { display: none !important; }
}


/* =========================================================
   v1.0.76 — Zalo icon circular
   ========================================================= */
.hh-right-contact__item--zalo,
.hh-right-contact__icon--zalo {
    border-radius: 50% !important;
    overflow: hidden !important;
}
.hh-right-contact__icon--zalo img {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    object-fit: contain !important;
}
@media (max-width: 767px) {
    .hh-right-contact__icon--zalo img {
        width: 36px !important;
        height: 36px !important;
    }
}

/* =========================================================
   v1.0.77 — Zalo logo is a true circle (no rectangular bubble)
   ========================================================= */
.hh-right-contact__item--zalo {
    background: transparent !important;
    border-radius: 50% !important;
    overflow: visible !important;
}
.hh-right-contact__icon--zalo {
    width: 46px !important;
    height: 46px !important;
    flex: 0 0 46px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    background: #008FE5 !important;
}
.hh-right-contact__icon--zalo img {
    display: block !important;
    width: 46px !important;
    height: 46px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    object-fit: cover !important;
}
@media (max-width: 767px) {
    .hh-right-contact__icon--zalo {
        width: 40px !important;
        height: 40px !important;
        flex-basis: 40px !important;
    }
    .hh-right-contact__icon--zalo img {
        width: 40px !important;
        height: 40px !important;
    }
}

/* =========================================================
   Homepage v1.0.78 — photographic Rừng Dừa Bảy Mẫu hero slider
   Replaces the old green/News hero blocks under the main menu.
   ========================================================= */
.hh-news-guide > .hh-home-slider{
    position:relative;
    width:100%;
    height:clamp(470px,44vw,650px);
    min-height:470px;
    overflow:hidden;
    background:#17251f;
    isolation:isolate;
}
.hh-home-slider__track{position:absolute;inset:0}
.hh-home-slide{
    position:absolute;
    inset:0;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    background-size:cover;
    background-repeat:no-repeat;
    transition:opacity .7s ease,visibility .7s ease;
}
.hh-home-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.hh-home-slide__shade{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(7,14,11,.68) 0%,rgba(7,14,11,.43) 34%,rgba(7,14,11,.12) 62%,rgba(7,14,11,.05) 100%);
}
.hh-home-slide__shade:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.05) 45%,rgba(0,0,0,.30) 100%);
}
.hh-home-slide__inner{position:relative;z-index:2;height:100%;display:flex;align-items:center}
.hh-home-slide__copy{width:min(720px,62%);padding:32px 0 58px;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.28)}
.hh-home-slide__kicker{display:block;margin-bottom:14px;color:#ffd07b;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.hh-home-slide h1{margin:0 0 15px;max-width:710px;color:#fff;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:clamp(38px,4vw,62px);font-weight:700;line-height:1.02;letter-spacing:-.025em}
.hh-home-slide p{max-width:650px;margin:0;color:rgba(255,255,255,.93);font-size:16px;line-height:1.7}
.hh-home-slide__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.hh-home-slide__btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border:1px solid rgba(255,255,255,.76);border-radius:2px;color:#fff!important;font-size:12px;font-weight:850;letter-spacing:.02em;text-decoration:none!important;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.hh-home-slide__btn:hover{transform:translateY(-1px)}
.hh-home-slide__btn--primary{border-color:#efb64f;background:#efb64f;color:#173127!important;text-shadow:none}
.hh-home-slide__btn--primary:hover{background:#f6c365;border-color:#f6c365}
.hh-home-slide__btn--ghost{background:rgba(15,20,17,.18);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.hh-home-slide__btn--ghost:hover{background:rgba(255,255,255,.12)}
.hh-home-slider__arrow{position:absolute;z-index:6;top:50%;width:44px;height:44px;margin-top:-22px;padding:0;border:1px solid rgba(255,255,255,.55);border-radius:50%;color:#fff;background:rgba(10,15,13,.32);font:400 36px/38px Georgia,"Times New Roman",serif;text-align:center;cursor:pointer;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:.2s ease}
.hh-home-slider__arrow:hover{background:rgba(10,15,13,.58);border-color:#fff;transform:scale(1.04)}
.hh-home-slider__prev{left:22px}.hh-home-slider__next{right:22px}
.hh-home-slider__nav{position:absolute;z-index:6;left:50%;bottom:22px;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.hh-home-slider__dots{display:flex;align-items:center;gap:8px;pointer-events:auto}
.hh-home-slider__dot{width:30px;height:4px;padding:0;border:0;border-radius:10px;background:rgba(255,255,255,.42);cursor:pointer;transition:.22s ease}
.hh-home-slider__dot.is-active{width:48px;background:#fff}
.hh-home-slider__count{display:flex;align-items:baseline;gap:3px;color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;text-shadow:0 1px 6px rgba(0,0,0,.38)}
.hh-home-slider__count b{font-size:15px}
/* Categories start cleanly below the hero; there is deliberately no green strip. */
.hh-news-guide > .hh-home-slider + .hh-ng-body{padding-top:34px}

@media(max-width:1100px){
    .hh-news-guide > .hh-home-slider{height:clamp(430px,58vw,570px);min-height:430px}
    .hh-home-slide__copy{width:min(720px,72%)}
}
@media(max-width:720px){
    .hh-news-guide > .hh-home-slider{height:470px;min-height:470px}
    .hh-home-slide{background-position:center center!important}
    .hh-home-slide__shade{background:linear-gradient(180deg,rgba(6,12,10,.12) 0%,rgba(6,12,10,.28) 38%,rgba(6,12,10,.80) 100%)}
    .hh-home-slide__inner{align-items:flex-end}
    .hh-home-slide__copy{width:100%;padding:0 4px 66px}
    .hh-home-slide__kicker{margin-bottom:10px;font-size:9px;letter-spacing:.12em}
    .hh-home-slide h1{margin-bottom:10px;font-size:34px;line-height:1.04}
    .hh-home-slide p{font-size:13px;line-height:1.55}
    .hh-home-slide__actions{margin-top:18px;gap:8px}
    .hh-home-slide__btn{min-height:38px;padding:8px 12px;font-size:11px}
    .hh-home-slider__arrow{width:36px;height:36px;margin-top:-18px;font-size:29px;line-height:31px}
    .hh-home-slider__prev{left:8px}.hh-home-slider__next{right:8px}
    .hh-home-slider__nav{bottom:16px}
    .hh-home-slider__dot{width:22px}.hh-home-slider__dot.is-active{width:36px}
    .hh-news-guide > .hh-home-slider + .hh-ng-body{padding-top:24px}
}
@media(max-width:420px){
    .hh-news-guide > .hh-home-slider{height:440px;min-height:440px}
    .hh-home-slide h1{font-size:30px}
    .hh-home-slide p{font-size:12.5px}
}

/* =========================================================
   Homepage v1.0.79 — overlay menu/search on photo hero, keep old News slider + strip
   ========================================================= */
/* On the homepage, the navigation floats directly on the photo slider.
   No solid white menu/search panel remains. */
.hh-home-photo-hero .hh-site-header{
    position:absolute !important;
    top:0;
    left:0;
    right:0;
    z-index:1100;
    height:0;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.hh-home-photo-hero .hh-topbar{display:none !important}
.hh-home-photo-hero .hh-header-main{
    position:absolute !important;
    top:calc(clamp(470px,44vw,650px) - 116px);
    left:50%;
    width:min(430px,calc(100vw - 32px));
    transform:translateX(-50%);
    background:transparent !important;
    border:0 !important;
}
.hh-home-photo-hero .hh-header-main__inner{
    width:100%;
    min-height:0 !important;
    margin:0;
    padding:0;
    justify-content:center;
}
.hh-home-photo-hero .hh-brand{display:none !important}
.hh-home-photo-hero .hh-header-tools{
    flex:1 1 100% !important;
    width:100%;
    max-width:430px;
}
.hh-home-photo-hero .hh-search{
    min-height:54px;
    padding:5px 6px 5px 18px;
    border:1px solid rgba(255,255,255,.62) !important;
    border-radius:999px;
    background:rgba(8,31,26,.24) !important;
    box-shadow:0 10px 30px rgba(0,0,0,.16) !important;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}
.hh-home-photo-hero .hh-search:focus-within{
    border-color:#fff !important;
    box-shadow:0 0 0 3px rgba(255,255,255,.13),0 10px 30px rgba(0,0,0,.18) !important;
}
.hh-home-photo-hero .hh-search .form-control{
    height:42px;
    color:#fff !important;
    background:transparent !important;
}
.hh-home-photo-hero .hh-search .form-control::placeholder{color:rgba(255,255,255,.78);opacity:1}
.hh-home-photo-hero .hh-search__button{
    width:42px;
    height:42px;
    background:#0c8174 !important;
    box-shadow:0 5px 14px rgba(0,0,0,.18);
}
.hh-home-photo-hero .hh-nav-wrap{
    position:absolute !important;
    top:18px;
    left:50%;
    width:auto;
    transform:translateX(-50%);
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.hh-home-photo-hero .hh-nav-wrap > .hh-container{
    width:auto !important;
    margin:0 !important;
}
.hh-home-photo-hero .hh-nav .navbar{
    min-height:46px;
    margin:0;
    border:0 !important;
    background:transparent !important;
}
.hh-home-photo-hero .hh-nav .navbar-nav{
    justify-content:center;
    gap:3px;
    white-space:nowrap;
}
.hh-home-photo-hero .hh-nav .navbar-nav > li > a{
    min-height:46px;
    padding:0 16px;
    color:#fff !important;
    font-size:14px;
    font-weight:750;
    text-shadow:0 2px 12px rgba(0,0,0,.48);
    background:transparent !important;
}
.hh-home-photo-hero .hh-nav .navbar-nav > li.active > a,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a:hover,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a:focus{color:#ffd07b !important}
.hh-home-photo-hero .hh-nav .navbar-nav > li.active > a:after{
    left:16px;
    right:16px;
    bottom:4px;
    height:2px;
    background:#ffd07b;
}
/* Restore the original News story slider below the new photo hero. */
.hh-news-guide > .hh-home-slider + .hh-ng-feature--restored{
    padding-top:22px;
}
.hh-news-guide > .hh-ng-strip + .hh-ng-body{padding-top:34px}

@media(max-width:1100px){
    .hh-home-photo-hero .hh-header-main{top:calc(clamp(430px,58vw,570px) - 108px)}
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a{padding:0 12px;font-size:13px}
}
@media(max-width:767px){
    .hh-home-photo-hero .hh-nav-wrap{
        top:8px;
        left:8px;
        right:8px;
        width:auto;
        transform:none;
    }
    .hh-home-photo-hero .hh-nav-wrap > .hh-container{width:100% !important}
    .hh-home-photo-hero .hh-nav .navbar-toggle{
        margin:4px 0 0 auto;
        border-color:rgba(255,255,255,.62) !important;
        background:rgba(6,29,24,.30) !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-toggle .icon-bar{background:#fff !important}
    .hh-home-photo-hero .hh-nav .navbar-collapse{
        margin-top:7px;
        padding:6px 10px !important;
        border:1px solid rgba(255,255,255,.16) !important;
        border-radius:10px;
        background:rgba(7,34,29,.94) !important;
        box-shadow:0 12px 28px rgba(0,0,0,.20);
    }
    .hh-home-photo-hero .hh-nav .navbar-nav{display:block;white-space:normal}
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a{min-height:40px;padding:0 10px}
    .hh-home-photo-hero .hh-header-main{
        top:376px;
        width:calc(100vw - 44px);
    }
    .hh-home-photo-hero .hh-search{min-height:48px;padding-left:14px}
    .hh-home-photo-hero .hh-search .form-control{height:36px;font-size:13px}
    .hh-home-photo-hero .hh-search__button{width:36px;height:36px}
    .hh-news-guide > .hh-home-slider + .hh-ng-feature--restored{padding-top:14px}
}
@media(max-width:420px){
    .hh-home-photo-hero .hh-header-main{top:348px}
}

/* Homepage v1.0.80 — uppercase overlay menu */
.hh-home-photo-hero .hh-nav .navbar-nav > li > a {
    text-transform: uppercase !important;
    letter-spacing: .02em;
}


/* Homepage v1.0.81 — flat menu only; photo hero auto-rotates without controls */
.hh-home-photo-hero .hh-nav .navbar-nav > li > .dropdown-menu,
.hh-home-photo-hero .hh-nav .navbar-nav > li .dropdown-menu,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a .caret,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a > .caret {
    display: none !important;
}
.hh-home-photo-hero .hh-nav .navbar-nav > li.dropdown,
.hh-home-photo-hero .hh-nav .navbar-nav > li.dropdown.open {
    position: relative;
}
/* Defensive hide in case old markup is cached while new PHP is loading. */
.hh-home-photo-hero .hh-home-slider > .hh-home-slider__arrow,
.hh-home-photo-hero .hh-home-slider > .hh-home-slider__nav {
    display: none !important;
}

/* News detail v1.0.83 — real compact forest-green menu-only header */
body.hh-news-detail-page .hh-site-header {
    background: #0f6f5d !important;
    border: 0 !important;
    box-shadow: 0 3px 12px rgba(8,72,60,.12) !important;
}
body.hh-news-detail-page .hh-topbar,
body.hh-news-detail-page .hh-header-main {
    display: none !important;
}
body.hh-news-detail-page .hh-nav-wrap {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #0f6f5d !important;
    border: 0 !important;
    box-shadow: none !important;
}
body.hh-news-detail-page .hh-nav-wrap > .hh-container {
    width: 100% !important;
    max-width: 1500px !important;
    margin: 0 auto !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    display: flex !important;
    justify-content: center !important;
}
body.hh-news-detail-page .hh-nav {
    width: auto !important;
    margin: 0 auto !important;
}
body.hh-news-detail-page .hh-nav .navbar {
    margin: 0 !important;
    min-height: 54px !important;
    border: 0 !important;
    background: transparent !important;
}
body.hh-news-detail-page .hh-nav .navbar-header {
    background: transparent !important;
}
body.hh-news-detail-page .hh-nav .navbar-collapse {
    padding-left: 0 !important;
    padding-right: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}
body.hh-news-detail-page .hh-nav .navbar-nav {
    float: none !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 2px !important;
    margin: 0 !important;
}
body.hh-news-detail-page .hh-nav .navbar-nav > li {
    float: none !important;
}
body.hh-news-detail-page .hh-nav .navbar-nav > li > a {
    min-height: 54px !important;
    padding: 0 17px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: transparent !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    letter-spacing: .035em !important;
    text-shadow: none !important;
}
body.hh-news-detail-page .hh-nav .navbar-nav > li > a .caret {
    border-top-color: rgba(255,255,255,.85) !important;
    border-bottom-color: rgba(255,255,255,.85) !important;
}
body.hh-news-detail-page .hh-nav .navbar-nav > li.active > a,
body.hh-news-detail-page .hh-nav .navbar-nav > li > a:hover,
body.hh-news-detail-page .hh-nav .navbar-nav > li > a:focus,
body.hh-news-detail-page .hh-nav .navbar-nav > li.open > a {
    color: #ffd166 !important;
    background: rgba(255,255,255,.08) !important;
}
body.hh-news-detail-page .hh-nav .navbar-nav > li.active > a:after {
    left: 14px !important;
    right: 14px !important;
    bottom: 0 !important;
    height: 2px !important;
    background: #ffd166 !important;
}
body.hh-news-detail-page .hh-nav .dropdown-menu {
    margin-top: 0 !important;
    border: 0 !important;
    border-radius: 0 0 8px 8px !important;
    background: #0f6f5d !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.16) !important;
}
body.hh-news-detail-page .hh-nav .dropdown-menu > li > a {
    color: #fff !important;
    background: transparent !important;
    text-transform: uppercase !important;
    font-size: 12px !important;
    font-weight: 650 !important;
}
body.hh-news-detail-page .hh-nav .dropdown-menu > li > a:hover,
body.hh-news-detail-page .hh-nav .dropdown-menu > li > a:focus {
    color: #ffd166 !important;
    background: rgba(255,255,255,.08) !important;
}
@media (max-width: 767px) {
    body.hh-news-detail-page .hh-nav-wrap > .hh-container {
        display: block !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    body.hh-news-detail-page .hh-nav {
        width: 100% !important;
    }
    body.hh-news-detail-page .hh-nav .navbar {
        min-height: 50px !important;
    }
    body.hh-news-detail-page .hh-nav .navbar-header {
        min-height: 50px !important;
    }
    body.hh-news-detail-page .hh-nav .navbar-toggle {
        margin: 8px 0 0 auto !important;
        border-color: rgba(255,255,255,.55) !important;
        background: transparent !important;
    }
    body.hh-news-detail-page .hh-nav .navbar-toggle:hover,
    body.hh-news-detail-page .hh-nav .navbar-toggle:focus {
        background: rgba(255,255,255,.08) !important;
    }
    body.hh-news-detail-page .hh-nav .navbar-toggle .icon-bar {
        background: #fff !important;
    }
    body.hh-news-detail-page .hh-nav .navbar-collapse {
        width: 100% !important;
        border-top: 1px solid rgba(255,255,255,.16) !important;
    }
    body.hh-news-detail-page .hh-nav .navbar-nav {
        display: block !important;
        width: 100% !important;
        padding: 6px 0 10px !important;
    }
    body.hh-news-detail-page .hh-nav .navbar-nav > li > a {
        min-height: 42px !important;
        justify-content: flex-start !important;
        padding: 0 12px !important;
    }
    body.hh-news-detail-page .hh-nav .dropdown-menu {
        position: static !important;
        float: none !important;
        width: auto !important;
        margin: 0 0 4px 12px !important;
        box-shadow: none !important;
        background: rgba(0,0,0,.08) !important;
    }
}
\n\n/* Common pages v1.0.85 — About / Contact / News use the exact News-detail menu header */
body.hh-menu-only-page .hh-site-header {
    background: #0f6f5d !important;
    border: 0 !important;
    box-shadow: 0 3px 12px rgba(8,72,60,.12) !important;
}
body.hh-menu-only-page .hh-topbar,
body.hh-menu-only-page .hh-header-main {
    display: none !important;
}
body.hh-menu-only-page .hh-nav-wrap {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #0f6f5d !important;
    border: 0 !important;
    box-shadow: none !important;
}
body.hh-menu-only-page .hh-nav-wrap > .hh-container {
    width: 100% !important;
    max-width: 1500px !important;
    margin: 0 auto !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    display: flex !important;
    justify-content: center !important;
}
body.hh-menu-only-page .hh-nav {
    width: auto !important;
    margin: 0 auto !important;
}
body.hh-menu-only-page .hh-nav .navbar {
    margin: 0 !important;
    min-height: 54px !important;
    border: 0 !important;
    background: transparent !important;
}
body.hh-menu-only-page .hh-nav .navbar-header {
    background: transparent !important;
}
body.hh-menu-only-page .hh-nav .navbar-collapse {
    padding-left: 0 !important;
    padding-right: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}
body.hh-menu-only-page .hh-nav .navbar-nav {
    float: none !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 2px !important;
    margin: 0 !important;
}
body.hh-menu-only-page .hh-nav .navbar-nav > li {
    float: none !important;
}
body.hh-menu-only-page .hh-nav .navbar-nav > li > a {
    min-height: 54px !important;
    padding: 0 17px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    background: transparent !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    letter-spacing: .035em !important;
    text-shadow: none !important;
}
body.hh-menu-only-page .hh-nav .navbar-nav > li > a .caret {
    border-top-color: rgba(255,255,255,.85) !important;
    border-bottom-color: rgba(255,255,255,.85) !important;
}
body.hh-menu-only-page .hh-nav .navbar-nav > li.active > a,
body.hh-menu-only-page .hh-nav .navbar-nav > li > a:hover,
body.hh-menu-only-page .hh-nav .navbar-nav > li > a:focus,
body.hh-menu-only-page .hh-nav .navbar-nav > li.open > a {
    color: #ffd166 !important;
    background: rgba(255,255,255,.08) !important;
}
body.hh-menu-only-page .hh-nav .navbar-nav > li.active > a:after {
    left: 14px !important;
    right: 14px !important;
    bottom: 0 !important;
    height: 2px !important;
    background: #ffd166 !important;
}
body.hh-menu-only-page .hh-nav .dropdown-menu {
    margin-top: 0 !important;
    border: 0 !important;
    border-radius: 0 0 8px 8px !important;
    background: #0f6f5d !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.16) !important;
}
body.hh-menu-only-page .hh-nav .dropdown-menu > li > a {
    color: #fff !important;
    background: transparent !important;
    text-transform: uppercase !important;
    font-size: 12px !important;
    font-weight: 650 !important;
}
body.hh-menu-only-page .hh-nav .dropdown-menu > li > a:hover,
body.hh-menu-only-page .hh-nav .dropdown-menu > li > a:focus {
    color: #ffd166 !important;
    background: rgba(255,255,255,.08) !important;
}
@media (max-width: 767px) {
    body.hh-menu-only-page .hh-nav-wrap > .hh-container {
        display: block !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    body.hh-menu-only-page .hh-nav {
        width: 100% !important;
    }
    body.hh-menu-only-page .hh-nav .navbar {
        min-height: 50px !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-header {
        min-height: 50px !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-toggle {
        margin: 8px 0 0 auto !important;
        border-color: rgba(255,255,255,.55) !important;
        background: transparent !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-toggle:hover,
    body.hh-menu-only-page .hh-nav .navbar-toggle:focus {
        background: rgba(255,255,255,.08) !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-toggle .icon-bar {
        background: #fff !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-collapse {
        width: 100% !important;
        border-top: 1px solid rgba(255,255,255,.16) !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-nav {
        display: block !important;
        width: 100% !important;
        padding: 6px 0 10px !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-nav > li > a {
        min-height: 42px !important;
        justify-content: flex-start !important;
        padding: 0 12px !important;
    }
    body.hh-menu-only-page .hh-nav .dropdown-menu {
        position: static !important;
        float: none !important;
        width: auto !important;
        margin: 0 0 4px 12px !important;
        box-shadow: none !important;
        background: rgba(0,0,0,.08) !important;
    }
}
\n\n
/* Tour v1.0.84 — smaller, more balanced detail title */\nbody.hh-tour-page .hh-main h1 {\n    margin-top: 10px !important;\n    margin-bottom: 18px !important;\n    max-width: 980px;\n    font-size: 30px !important;\n    line-height: 1.22 !important;\n    letter-spacing: -0.015em !important;\n    font-weight: 700 !important;\n}\n@media (max-width: 1100px) {\n    body.hh-tour-page .hh-main h1 {\n        font-size: 27px !important;\n        line-height: 1.24 !important;\n    }\n}\n@media (max-width: 767px) {\n    body.hh-tour-page .hh-main h1 {\n        margin-bottom: 14px !important;\n        font-size: 23px !important;\n        line-height: 1.28 !important;\n        letter-spacing: -0.01em !important;\n    }\n}\n
/* v1.0.87 — Breadcrumb text uppercase */
.hh-breadcrumbs,
.hh-breadcrumbs a,
.hh-breadcrumbs li,
.breadcrumb,
.breadcrumb a,
.breadcrumb li,
.breadcrumbs,
.breadcrumbs a,
.breadcrumbs li {
    text-transform: uppercase !important;
}

/* =========================================================
   Homepage v1.0.88 — tablet navigation readability
   Keep desktop and phone layouts unchanged.
   ========================================================= */
@media (min-width:768px) and (max-width:1100px){
    .hh-home-photo-hero .hh-nav-wrap{
        top:18px !important;
        left:50% !important;
        right:auto !important;
        width:300px !important;
        max-width:calc(100vw - 40px) !important;
        transform:translateX(-50%) !important;
    }
    .hh-home-photo-hero .hh-nav-wrap > .hh-container{
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        padding:0 !important;
    }
    .hh-home-photo-hero .hh-nav .navbar{
        width:100% !important;
        min-height:44px !important;
        margin:0 !important;
        background:transparent !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-header{
        float:none !important;
        display:flex !important;
        justify-content:center !important;
        width:100% !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-toggle{
        display:block !important;
        float:none !important;
        width:44px !important;
        height:42px !important;
        margin:0 auto !important;
        padding:9px 10px !important;
        border:1px solid rgba(255,255,255,.38) !important;
        border-radius:11px !important;
        background:rgba(8,72,62,.96) !important;
        box-shadow:0 8px 22px rgba(0,0,0,.22) !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-toggle:hover,
    .hh-home-photo-hero .hh-nav .navbar-toggle:focus{
        background:rgba(7,91,77,.98) !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-toggle .icon-bar{
        width:22px !important;
        height:2px !important;
        margin-left:auto !important;
        margin-right:auto !important;
        background:#fff !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-collapse{
        float:none !important;
        width:100% !important;
        margin:9px 0 0 !important;
        padding:8px 12px !important;
        border:1px solid rgba(255,255,255,.14) !important;
        border-radius:14px !important;
        background:rgba(8,72,62,.96) !important;
        box-shadow:0 14px 34px rgba(0,0,0,.26) !important;
        backdrop-filter:blur(8px);
        -webkit-backdrop-filter:blur(8px);
    }
    .hh-home-photo-hero .hh-nav .navbar-collapse.collapse{
        display:none !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-collapse.collapse.in,
    .hh-home-photo-hero .hh-nav .navbar-collapse.collapsing{
        display:block !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-nav{
        float:none !important;
        display:block !important;
        width:100% !important;
        margin:0 !important;
        white-space:normal !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-nav > li{
        float:none !important;
        display:block !important;
        width:100% !important;
        margin:0 !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-height:44px !important;
        padding:0 14px !important;
        border-bottom:1px solid rgba(255,255,255,.12) !important;
        color:#fff !important;
        font-size:14px !important;
        line-height:1.2 !important;
        font-weight:800 !important;
        letter-spacing:.035em !important;
        text-align:center !important;
        text-shadow:none !important;
        background:transparent !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-nav > li:last-child > a{
        border-bottom:0 !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-nav > li.active > a,
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a:hover,
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a:focus{
        color:#ffd36f !important;
        background:rgba(255,255,255,.08) !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-nav > li.active > a:after{
        display:none !important;
    }
}

/* =========================================================
   v1.0.89 — align hamburger with expanded menu on tablet
   Button left edge = expanded menu left edge.
   ========================================================= */
@media (min-width: 768px) and (max-width: 1100px) {
    /* Homepage overlay navigation */
    .hh-home-photo-hero .hh-nav .navbar-header {
        justify-content: flex-start !important;
    }
    .hh-home-photo-hero .hh-nav .navbar-toggle {
        margin: 0 !important;
    }

    /* Compact green menu used by About / Contact / News and News detail */
    body.hh-menu-only-page .hh-nav-wrap > .hh-container,
    body.hh-news-detail-page .hh-nav-wrap > .hh-container {
        display: block !important;
        width: 100% !important;
        max-width: 1500px !important;
        margin: 0 auto !important;
        padding-left: 18px !important;
        padding-right: 18px !important;
    }
    body.hh-menu-only-page .hh-nav,
    body.hh-news-detail-page .hh-nav {
        width: min(640px, calc(100vw - 36px)) !important;
        margin: 0 auto !important;
    }
    body.hh-menu-only-page .hh-nav .navbar,
    body.hh-news-detail-page .hh-nav .navbar {
        width: 100% !important;
        margin: 0 !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-header,
    body.hh-news-detail-page .hh-nav .navbar-header {
        float: none !important;
        display: flex !important;
        justify-content: flex-start !important;
        width: 100% !important;
        min-height: 52px !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-toggle,
    body.hh-news-detail-page .hh-nav .navbar-toggle {
        display: block !important;
        float: none !important;
        width: 44px !important;
        height: 42px !important;
        margin: 5px 0 5px 0 !important;
        padding: 9px 10px !important;
        border-radius: 10px !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-collapse,
    body.hh-news-detail-page .hh-nav .navbar-collapse {
        float: none !important;
        width: 100% !important;
        margin: 8px 0 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media (max-width: 767px) {
    /* Keep the same visual axis on phones when the collapsed menu is used. */
    body.hh-menu-only-page .hh-nav .navbar-header,
    body.hh-news-detail-page .hh-nav .navbar-header {
        display: flex !important;
        justify-content: flex-start !important;
        width: 100% !important;
    }
    body.hh-menu-only-page .hh-nav .navbar-toggle,
    body.hh-news-detail-page .hh-nav .navbar-toggle {
        float: none !important;
        margin: 8px 0 0 0 !important;
    }
}

/* =========================================================
   v1.0.90 — tablet: hamburger + expanded menu on ONE row
   ========================================================= */
@media (min-width: 768px) and (max-width: 991px) {
    /* Menu-only pages: News / About / Contact / News detail */
    body.hh-menu-only-page .hh-nav .navbar,
    body.hh-news-detail-page .hh-nav .navbar,
    .hh-home-photo-hero .hh-nav .navbar {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        min-height: 58px !important;
        width: 100% !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-header,
    body.hh-news-detail-page .hh-nav .navbar-header,
    .hh-home-photo-hero .hh-nav .navbar-header {
        flex: 0 0 auto !important;
        width: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-toggle,
    body.hh-news-detail-page .hh-nav .navbar-toggle,
    .hh-home-photo-hero .hh-nav .navbar-toggle {
        flex: 0 0 44px !important;
        width: 44px !important;
        height: 42px !important;
        margin: 0 !important;
    }

    /* Closed: only hamburger is visible. */
    body.hh-menu-only-page .hh-nav .navbar-collapse.collapse,
    body.hh-news-detail-page .hh-nav .navbar-collapse.collapse,
    .hh-home-photo-hero .hh-nav .navbar-collapse.collapse {
        display: none !important;
    }

    /* Open: menu stays on the SAME horizontal row as hamburger. */
    body.hh-menu-only-page .hh-nav .navbar-collapse.collapse.in,
    body.hh-news-detail-page .hh-nav .navbar-collapse.collapse.in,
    .hh-home-photo-hero .hh-nav .navbar-collapse.collapse.in,
    body.hh-menu-only-page .hh-nav .navbar-collapse.collapsing,
    body.hh-news-detail-page .hh-nav .navbar-collapse.collapsing,
    .hh-home-photo-hero .hh-nav .navbar-collapse.collapsing {
        display: flex !important;
        align-items: center !important;
        flex: 1 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 0 0 0 12px !important;
        padding: 0 !important;
        border-top: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
        transition: none !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-nav,
    body.hh-news-detail-page .hh-nav .navbar-nav,
    .hh-home-photo-hero .hh-nav .navbar-nav {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
        gap: 2px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-nav > li,
    body.hh-news-detail-page .hh-nav .navbar-nav > li,
    .hh-home-photo-hero .hh-nav .navbar-nav > li {
        float: none !important;
        flex: 0 0 auto !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-nav > li > a,
    body.hh-news-detail-page .hh-nav .navbar-nav > li > a,
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a {
        min-height: 46px !important;
        padding: 0 10px !important;
        font-size: 12px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        white-space: nowrap !important;
    }
}

/* =========================================================
   v1.0.91 — homepage tablet menu: restore clean dropdown
   Keep v1.0.90 one-row behavior only for menu-only pages.
   ========================================================= */
@media (min-width: 768px) and (max-width: 991px) {
    .hh-home-photo-hero .hh-nav-wrap {
        top: 18px !important;
        left: 50% !important;
        right: auto !important;
        width: 300px !important;
        max-width: calc(100vw - 40px) !important;
        transform: translateX(-50%) !important;
    }

    .hh-home-photo-hero .hh-nav-wrap > .hh-container {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .hh-home-photo-hero .hh-nav .navbar {
        display: block !important;
        width: 100% !important;
        min-height: 44px !important;
        margin: 0 !important;
        background: transparent !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-header {
        float: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 44px !important;
        margin: 0 !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-toggle {
        display: block !important;
        float: none !important;
        flex: none !important;
        width: 44px !important;
        height: 42px !important;
        margin: 0 auto !important;
        padding: 9px 10px !important;
        border: 1px solid rgba(255,255,255,.38) !important;
        border-radius: 11px !important;
        background: rgba(8,72,62,.96) !important;
        box-shadow: 0 8px 22px rgba(0,0,0,.22) !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-collapse.collapse {
        display: none !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-collapse.collapse.in,
    .hh-home-photo-hero .hh-nav .navbar-collapse.collapsing {
        display: block !important;
        float: none !important;
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 9px 0 0 !important;
        padding: 8px 12px !important;
        border: 1px solid rgba(255,255,255,.14) !important;
        border-radius: 14px !important;
        background: rgba(8,72,62,.96) !important;
        box-shadow: 0 14px 34px rgba(0,0,0,.26) !important;
        overflow: hidden !important;
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
    }

    .hh-home-photo-hero .hh-nav .navbar-nav {
        float: none !important;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: normal !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-nav > li {
        float: none !important;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-nav > li > a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 44px !important;
        padding: 0 14px !important;
        border-bottom: 1px solid rgba(255,255,255,.12) !important;
        color: #fff !important;
        font-size: 14px !important;
        line-height: 1.2 !important;
        font-weight: 800 !important;
        letter-spacing: .035em !important;
        text-align: center !important;
        white-space: normal !important;
        background: transparent !important;
        text-shadow: none !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-nav > li:last-child > a {
        border-bottom: 0 !important;
    }

    .hh-home-photo-hero .hh-nav .navbar-nav > li.active > a,
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a:hover,
    .hh-home-photo-hero .hh-nav .navbar-nav > li > a:focus {
        color: #ffd36f !important;
        background: rgba(255,255,255,.08) !important;
    }
}

/* =========================================================
   v1.0.92 — keep hamburger + menu on ONE row for non-home
   tablet widths up to 1100px. Homepage remains unchanged.
   ========================================================= */
@media (min-width: 768px) and (max-width: 1100px) {
    body.hh-menu-only-page .hh-nav .navbar,
    body.hh-news-detail-page .hh-nav .navbar {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        min-height: 58px !important;
        width: 100% !important;
        margin: 0 !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-header,
    body.hh-news-detail-page .hh-nav .navbar-header {
        float: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        flex: 0 0 auto !important;
        width: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-toggle,
    body.hh-news-detail-page .hh-nav .navbar-toggle {
        display: block !important;
        float: none !important;
        flex: 0 0 44px !important;
        width: 44px !important;
        height: 42px !important;
        margin: 0 !important;
        padding: 9px 10px !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-collapse.collapse,
    body.hh-news-detail-page .hh-nav .navbar-collapse.collapse {
        display: none !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-collapse.collapse.in,
    body.hh-news-detail-page .hh-nav .navbar-collapse.collapse.in,
    body.hh-menu-only-page .hh-nav .navbar-collapse.collapsing,
    body.hh-news-detail-page .hh-nav .navbar-collapse.collapsing {
        display: flex !important;
        align-items: center !important;
        flex: 1 1 auto !important;
        float: none !important;
        width: auto !important;
        min-width: 0 !important;
        height: auto !important;
        margin: 0 0 0 12px !important;
        padding: 0 !important;
        border-top: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
        transition: none !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-nav,
    body.hh-news-detail-page .hh-nav .navbar-nav {
        float: none !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
        gap: 2px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-nav > li,
    body.hh-news-detail-page .hh-nav .navbar-nav > li {
        float: none !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin: 0 !important;
    }

    body.hh-menu-only-page .hh-nav .navbar-nav > li > a,
    body.hh-news-detail-page .hh-nav .navbar-nav > li > a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 46px !important;
        padding: 0 10px !important;
        font-size: 12px !important;
        white-space: nowrap !important;
    }
}

/* =========================================================
   v1.0.93 — footer responsive repair for tablet and mobile
   Desktop >= 1101 keeps the approved 3-column layout.
   Tablet uses 2 columns with statistics full-width below.
   Mobile stacks cleanly and prevents counter overlap.
   ========================================================= */
@media (min-width: 821px) and (max-width: 1100px) {
    .hh-footer__grid {
        grid-template-columns: minmax(0, 1.35fr) minmax(220px, .65fr) !important;
        column-gap: 42px !important;
        row-gap: 30px !important;
        align-items: start !important;
    }

    .hh-footer__brand {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: 520px !important;
        justify-self: start !important;
    }

    .hh-footer__nav {
        grid-column: 2 !important;
        width: max-content !important;
        max-width: 100% !important;
        justify-self: center !important;
    }

    .hh-footer__stats {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: none !important;
        justify-self: stretch !important;
        padding-top: 4px !important;
    }

    .hh-footer-stats h3 {
        margin-bottom: 10px !important;
    }

    .hh-footer-stats__list {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 0 22px !important;
    }

    .hh-footer-stats__item {
        min-width: 0 !important;
        gap: 10px !important;
        padding: 8px 0 !important;
    }

    .hh-footer-stats__item span {
        min-width: 0 !important;
        white-space: normal !important;
    }

    .hh-footer-stats__item strong {
        white-space: nowrap !important;
    }
}

@media (max-width: 820px) {
    .hh-footer > .hh-container {
        width: calc(100% - 24px) !important;
    }

    .hh-footer__grid {
        grid-template-columns: 1fr !important;
        column-gap: 0 !important;
        row-gap: 24px !important;
        padding: 34px 0 24px !important;
    }

    .hh-footer__brand,
    .hh-footer__nav,
    .hh-footer__stats {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: none !important;
        justify-self: stretch !important;
        text-align: left !important;
    }

    .hh-footer__nav {
        padding-top: 2px !important;
    }

    .hh-footer__nav ul {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 24px !important;
        row-gap: 0 !important;
    }

    .hh-footer__nav li {
        margin-bottom: 8px !important;
        min-width: 0 !important;
    }

    .hh-footer-stats__list {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 0 20px !important;
    }

    .hh-footer-stats__item {
        min-width: 0 !important;
        gap: 10px !important;
        padding: 8px 0 !important;
    }

    .hh-footer-stats__item span {
        min-width: 0 !important;
        white-space: normal !important;
    }

    .hh-footer-stats__item strong {
        white-space: nowrap !important;
    }

    .hh-footer__bottom {
        min-height: 84px !important;
        padding: 14px 48px 14px 8px !important;
    }
}

@media (max-width: 520px) {
    .hh-footer > .hh-container {
        width: calc(100% - 20px) !important;
    }

    .hh-footer__grid {
        row-gap: 22px !important;
        padding-top: 28px !important;
    }

    .hh-footer-brand__logo img {
        max-width: min(100%, 300px) !important;
        height: auto !important;
    }

    .hh-footer__nav ul {
        grid-template-columns: 1fr !important;
    }

    .hh-footer-stats__list {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }

    .hh-footer-stats__item {
        width: 100% !important;
    }

    .hh-footer__bottom {
        min-height: 96px !important;
        padding: 14px 46px 14px 0 !important;
    }

    .hh-footer-copyright__main {
        display: block !important;
        line-height: 1.55 !important;
    }
}

/* =========================================================
   v1.0.94 — footer responsive hard reset
   Uses isolated hhf-* layout classes so older footer rules
   cannot collide on tablet/mobile.
   ========================================================= */
.hh-footer.hhf-footer > .hhf-container {
    width: min(1420px, calc(100% - 32px)) !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
.hhf-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 48px !important;
    align-items: start !important;
    padding: 42px 0 30px !important;
}
.hhf-col {
    min-width: 0 !important;
    width: 100% !important;
}
.hhf-brand {
    justify-self: start !important;
    text-align: left !important;
}
.hhf-nav {
    justify-self: center !important;
    width: max-content !important;
    max-width: 100% !important;
    text-align: left !important;
}
.hhf-nav > ul,
.hhf-nav > .menu {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
.hhf-nav li {
    margin: 0 0 9px !important;
    padding: 0 !important;
}
.hhf-nav a {
    display: inline-block !important;
    line-height: 1.45 !important;
}
.hhf-stats {
    justify-self: end !important;
    max-width: 390px !important;
}
.hhf-counter__title {
    margin: 0 0 12px !important;
    color: #fff !important;
    font-family: Cambria, Georgia, "Times New Roman", serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}
.hhf-counter__grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    width: 100% !important;
}
.hhf-counter__item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
    min-width: 0 !important;
    padding: 8px 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.10) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}
.hhf-counter__label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    color: rgba(255,255,255,.78) !important;
    white-space: normal !important;
}
.hhf-counter__label i {
    flex: 0 0 14px !important;
    width: 14px !important;
    color: #f2c66d !important;
    text-align: center !important;
}
.hhf-counter__value {
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums !important;
    white-space: nowrap !important;
}
.hhf-bottom {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 72px !important;
    padding: 14px 54px !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
    text-align: center !important;
    font-size: 13px !important;
}
.hhf-copyright {
    width: 100% !important;
    text-align: center !important;
}
.hhf-backtop {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Tablet: brand + menu on top, statistics full width below. */
@media (min-width: 641px) and (max-width: 1100px) {
    .hh-footer.hhf-footer > .hhf-container {
        width: min(100% - 28px, 980px) !important;
    }
    .hhf-grid {
        grid-template-columns: minmax(0, 1.35fr) minmax(200px, .65fr) !important;
        column-gap: 36px !important;
        row-gap: 30px !important;
        padding: 34px 0 26px !important;
    }
    .hhf-brand {
        grid-column: 1 !important;
        max-width: 520px !important;
    }
    .hhf-nav {
        grid-column: 2 !important;
        justify-self: start !important;
        width: 100% !important;
    }
    .hhf-stats {
        grid-column: 1 / -1 !important;
        justify-self: stretch !important;
        width: 100% !important;
        max-width: none !important;
    }
    .hhf-counter__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 30px !important;
    }
}

/* Phone: all three clusters stack; no cramped four-column counters. */
@media (max-width: 640px) {
    .hh-footer.hhf-footer > .hhf-container {
        width: calc(100% - 24px) !important;
    }
    .hhf-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
        padding: 28px 0 22px !important;
    }
    .hhf-brand,
    .hhf-nav,
    .hhf-stats {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: none !important;
        justify-self: stretch !important;
        text-align: left !important;
    }
    .hhf-nav > ul,
    .hhf-nav > .menu {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 24px !important;
    }
    .hhf-counter__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 18px !important;
    }
    .hhf-counter__item {
        gap: 8px !important;
    }
    .hhf-bottom {
        min-height: 88px !important;
        padding: 14px 46px 14px 0 !important;
        font-size: 12px !important;
    }
}

@media (max-width: 460px) {
    .hhf-nav > ul,
    .hhf-nav > .menu,
    .hhf-counter__grid {
        grid-template-columns: 1fr !important;
        column-gap: 0 !important;
    }
    .hhf-counter__item {
        grid-template-columns: minmax(0, 1fr) auto !important;
    }
    .hhf-bottom {
        padding-right: 44px !important;
    }
    .hh-footer-copyright__main {
        display: block !important;
        line-height: 1.55 !important;
    }
}


/* =========================================================
   v1.0.95 — unified News category design
   Shared by every News category template.
   ========================================================= */
body.hh-news-category-page,
body.hh-news-category-page .hh-page-shell,
body.hh-news-category-page .hh-content-grid,
body.hh-news-category-page .hh-main,
body.hh-news-category-page .hh-ng-side {
    background:#fdfaed !important;
}
body.hh-news-category-page .hh-content-grid--right {
    width:min(1500px, calc(100% - 24px)) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:28px 0 64px !important;
    grid-template-columns:minmax(0,1fr) 355px !important;
    gap:34px !important;
    align-items:start !important;
}
body.hh-news-category-page .hh-main {
    min-width:0 !important;
    padding:0 !important;
}
body.hh-news-category-page .hh-zone--top,
body.hh-news-category-page .hh-zone--bottom {
    margin:0 !important;
}
.hh-catx,
.hh-catx * { box-sizing:border-box; }
.hh-catx { display:grid; gap:26px; min-width:0; }
.hh-catx-head {
    position:relative;
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:28px;
    align-items:center;
    min-height:178px;
    padding:24px 28px;
    overflow:hidden;
    border:0;
    border-radius:0;
    background:linear-gradient(135deg,#eef8f3 0%,#fdfaed 72%);
    box-shadow:inset 0 -3px 0 #0c8174;
}
.hh-catx-head:before {
    content:"";
    position:absolute;
    right:-70px;
    top:-95px;
    width:230px;
    height:230px;
    border-radius:50%;
    background:rgba(12,129,116,.07);
    pointer-events:none;
}
.hh-catx-head__media {
    position:relative;
    z-index:1;
    overflow:hidden;
    width:220px;
    aspect-ratio:16/10;
    background:#dfeae5;
}
.hh-catx-head__media img { width:100%; height:100%; object-fit:cover; display:block; }
.hh-catx-head__copy { position:relative; z-index:1; min-width:0; }
.hh-catx-kicker {
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#d49624;
    font-size:11px;
    line-height:1.2;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.hh-catx-kicker:before { content:""; width:24px; height:2px; background:#d49624; }
.hh-catx-head h1 {
    margin:9px 0 9px;
    color:#123d35;
    font-family:Cambria,Georgia,"Times New Roman",serif;
    font-size:clamp(30px,3.1vw,44px);
    line-height:1.08;
    font-weight:700;
    letter-spacing:-.02em;
}
.hh-catx-head p {
    max-width:820px;
    margin:0;
    color:#5d716c;
    font-size:14px;
    line-height:1.65;
}
.hh-catx-head--compact { min-height:150px; }

.hh-catx-feed {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
}
.hh-catx-feature {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
    min-height:360px;
    overflow:hidden;
    background:#fff;
    border:1px solid #dfe8e3;
    box-shadow:0 12px 34px rgba(19,61,53,.07);
}
.hh-catx-feature__media {
    display:block;
    min-height:360px;
    overflow:hidden;
    background:#e7efeb;
}
.hh-catx-feature__media img {
    display:block;
    width:100%;
    height:100%;
    min-height:360px;
    object-fit:cover;
    transition:transform .35s ease;
}
.hh-catx-feature:hover .hh-catx-feature__media img { transform:scale(1.018); }
.hh-catx-feature__copy {
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
    padding:32px;
}
.hh-catx-feature .hh-catx-title { margin:9px 0 11px; font-size:clamp(25px,2.6vw,36px); line-height:1.16; }
.hh-catx-title { font-family:Cambria,Georgia,"Times New Roman",serif; font-weight:700; }
.hh-catx-title a { color:#123d35 !important; text-decoration:none !important; }
.hh-catx-title a:hover { color:#0c8174 !important; }
.hh-catx-meta { display:flex; flex-wrap:wrap; gap:8px 16px; color:#7b8e88; font-size:11px; line-height:1.4; }
.hh-catx-meta i { margin-right:4px; color:#0c8174; }
.hh-catx-excerpt {
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    margin:13px 0 0;
    color:#60736e;
    font-size:13px;
    line-height:1.65;
}
.hh-catx-read {
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:max-content;
    margin-top:16px;
    color:#0c8174 !important;
    font-size:12px;
    font-weight:850;
    text-decoration:none !important;
}
.hh-catx-read:hover { gap:10px; }

.hh-catx-card {
    display:grid;
    grid-template-rows:auto 1fr;
    min-width:0;
    overflow:hidden;
    background:#fff;
    border:1px solid #e0e8e4;
    box-shadow:0 7px 24px rgba(19,61,53,.045);
}
.hh-catx-card__media { display:block; aspect-ratio:16/9; overflow:hidden; background:#e7efeb; }
.hh-catx-card__media img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.hh-catx-card:hover .hh-catx-card__media img { transform:scale(1.025); }
.hh-catx-card__copy { display:flex; flex-direction:column; min-width:0; padding:18px 19px 20px; }
.hh-catx-card .hh-catx-title {
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    min-height:48px;
    margin:0 0 9px;
    font-size:20px;
    line-height:1.2;
}
.hh-catx-card .hh-catx-excerpt { -webkit-line-clamp:2; margin-top:10px; }
.hh-catx-card .hh-catx-read { margin-top:auto; padding-top:13px; }

.hh-catx-older { padding-top:4px; }
.hh-catx-older > h2 { margin:0 0 10px; color:#123d35; font-family:Cambria,Georgia,"Times New Roman",serif; font-size:21px; }
.hh-catx-older__list { border-top:3px solid #0c8174; }
.hh-catx-older__list > a {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:11px 2px;
    border-bottom:1px solid #dfe7e3;
    color:#123d35 !important;
    text-decoration:none !important;
}
.hh-catx-older__list > a:hover span { color:#0c8174; }
.hh-catx-older__list span { min-width:0; font-weight:700; }
.hh-catx-older__list small { color:#86958f; font-style:italic; white-space:nowrap; }

.hh-catx-simple-list { border-top:3px solid #0c8174; background:#fff; }
.hh-catx-simple-item {
    display:grid;
    grid-template-columns:34px minmax(0,1fr) 20px;
    gap:12px;
    align-items:center;
    min-height:58px;
    padding:10px 14px;
    border-bottom:1px solid #e2e9e5;
    color:#123d35 !important;
    text-decoration:none !important;
}
.hh-catx-simple-item:hover { background:#f4faf7; }
.hh-catx-simple-num { color:#d49624; font-weight:900; }
.hh-catx-simple-title { font-family:Cambria,Georgia,"Times New Roman",serif; font-size:17px; font-weight:700; line-height:1.25; }
.hh-catx-simple-item i { color:#0c8174; }

.hh-catx-pagination { margin:4px 0 0; padding-top:10px; }
.hh-catx-pagination .pagination { margin:0; }
.hh-catx-pagination .pagination > li > a,
.hh-catx-pagination .pagination > li > span { border-radius:0 !important; color:#0c8174; border-color:#dbe5e0; }
.hh-catx-pagination .pagination > .active > a,
.hh-catx-pagination .pagination > .active > span { color:#fff !important; background:#0c8174 !important; border-color:#0c8174 !important; }

body.hh-news-category-page .hh-news-category-side { width:355px !important; min-width:355px !important; }
body.hh-news-category-page .hh-news-category-side .hh-ng-sticky { top:6px; }

@media (max-width:1100px) {
    body.hh-news-category-page .hh-content-grid--right {
        width:calc(100% - 20px) !important;
        grid-template-columns:minmax(0,1fr) !important;
        gap:0 !important;
        padding-top:18px !important;
    }
    body.hh-news-category-page .hh-news-category-side { display:none !important; }
    .hh-catx-head { grid-template-columns:180px minmax(0,1fr); gap:22px; padding:22px; }
    .hh-catx-head__media { width:180px; }
    .hh-catx-feature { grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr); }
}
@media (max-width:767px) {
    body.hh-news-category-page .hh-content-grid--right { width:calc(100% - 16px) !important; padding-top:12px !important; padding-bottom:42px !important; }
    .hh-catx { gap:18px; }
    .hh-catx-head { grid-template-columns:1fr; gap:14px; min-height:0; padding:18px 16px 20px; }
    .hh-catx-head__media { width:100%; aspect-ratio:16/8.8; }
    .hh-catx-head h1 { margin-top:8px; font-size:29px; }
    .hh-catx-head p { font-size:13px; }
    .hh-catx-feed { grid-template-columns:1fr; gap:16px; }
    .hh-catx-feature { grid-template-columns:1fr; min-height:0; }
    .hh-catx-feature__media,
    .hh-catx-feature__media img { min-height:0; aspect-ratio:16/9; }
    .hh-catx-feature__copy { padding:20px 17px 22px; }
    .hh-catx-feature .hh-catx-title { font-size:25px; }
    .hh-catx-card .hh-catx-title { min-height:0; font-size:19px; }
    .hh-catx-card__copy { padding:16px; }
    .hh-catx-older__list > a { grid-template-columns:1fr; gap:2px; }
    .hh-catx-simple-item { grid-template-columns:28px minmax(0,1fr) 18px; padding-left:10px; padding-right:10px; }
    .hh-catx-simple-title { font-size:16px; }
}


/* =========================================================
   v1.0.96 — News categories: clean site-matched layout.
   Menu deliberately uses the existing hh-menu-only-page rules unchanged.
   ========================================================= */
body.hh-news-category-page .hh-content-grid--right{
    width:min(1500px,calc(100% - 24px)) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:24px 0 60px !important;
    grid-template-columns:minmax(0,1fr) 355px !important;
    gap:34px !important;
    align-items:start !important;
}
body.hh-news-category-page .hh-main{min-width:0 !important;padding:0 !important;background:#fdfaed !important;}
.hh-catclean,.hh-catclean *{box-sizing:border-box;}
.hh-catclean{display:grid;gap:22px;min-width:0;color:#173d36;}
.hh-catclean-head{padding:0 0 6px;background:transparent;border:0;}
.hh-catclean-head__line{display:flex;align-items:center;gap:0;margin:0 0 12px;border-bottom:3px solid #0c8174;}
.hh-catclean-head__line span{display:inline-flex;padding:9px 16px 8px;background:#0c8174;color:#fff;font-family:Arial,sans-serif;font-size:15px;line-height:1.1;font-weight:800;text-transform:uppercase;letter-spacing:.02em;}
.hh-catclean-head p{max-width:900px;margin:0;color:#62766f;font-size:14px;line-height:1.65;}
.hh-catclean-feature{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(300px,.78fr);min-height:300px;border-bottom:1px solid #d8e3de;background:transparent;}
.hh-catclean-feature__media{display:block;min-height:300px;overflow:hidden;background:#e6eee9;}
.hh-catclean-feature__media img{display:block;width:100%;height:100%;min-height:300px;object-fit:cover;transition:transform .3s ease;}
.hh-catclean-feature:hover .hh-catclean-feature__media img{transform:scale(1.018);}
.hh-catclean-feature__body{display:flex;flex-direction:column;justify-content:center;padding:24px 4px 24px 28px;min-width:0;}
.hh-catclean-kicker{color:#d19525;font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;}
.hh-catclean-feature h2{margin:8px 0 10px;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:30px;line-height:1.18;font-weight:700;}
.hh-catclean-feature h2 a,.hh-catclean-item h3 a,.hh-catclean-simple a{color:#123d35 !important;text-decoration:none !important;}
.hh-catclean-feature h2 a:hover,.hh-catclean-item h3 a:hover,.hh-catclean-simple a:hover{color:#0c8174 !important;}
.hh-catclean-meta{display:flex;flex-wrap:wrap;gap:8px 16px;color:#84938e;font-size:11px;line-height:1.4;}
.hh-catclean-meta i{margin-right:4px;color:#0c8174;}
.hh-catclean-feature__body>p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;margin:12px 0 0;color:#5d706a;font-size:13px;line-height:1.65;}
.hh-catclean-feed{display:grid;gap:0;border-top:3px solid #0c8174;}
.hh-catclean-feature + .hh-catclean-feed{margin-top:2px;}
.hh-catclean-item{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start;padding:18px 0;border-bottom:1px dashed #88aaa1;background:transparent;}
.hh-catclean-item__media{display:block;width:220px;aspect-ratio:16/10;overflow:hidden;background:#e6eee9;}
.hh-catclean-item__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .28s ease;}
.hh-catclean-item:hover .hh-catclean-item__media img{transform:scale(1.02);}
.hh-catclean-item__body{min-width:0;padding:1px 0;}
.hh-catclean-item h3{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:0 0 7px;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:20px;line-height:1.25;font-weight:700;}
.hh-catclean-item__body>p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;margin:9px 0 0;color:#63766f;font-size:13px;line-height:1.58;}
.hh-catclean-related{padding-top:4px;}
.hh-catclean-related h2{margin:0 0 8px;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:20px;color:#123d35;}
.hh-catclean-related>div{border-top:3px solid #0c8174;}
.hh-catclean-related a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;padding:10px 0;border-bottom:1px solid #dbe5e0;color:#123d35 !important;text-decoration:none !important;}
.hh-catclean-related a:hover span{color:#0c8174;}.hh-catclean-related small{color:#899791;font-style:italic;white-space:nowrap;}
.hh-catclean-simple{border-top:3px solid #0c8174;}
.hh-catclean-simple>a{display:grid;grid-template-columns:36px minmax(0,1fr) 18px;gap:10px;align-items:center;min-height:54px;padding:9px 4px;border-bottom:1px solid #dbe5e0;font-family:Cambria,Georgia,"Times New Roman",serif;font-size:17px;font-weight:700;}
.hh-catclean-simple>a:hover{background:rgba(12,129,116,.035);}
.hh-catclean-simple__num{color:#d19525;font-family:Arial,sans-serif;font-size:13px;font-weight:900;}
.hh-catclean-simple i{color:#0c8174;}
.hh-catclean-pagination{padding-top:8px;}.hh-catclean-pagination .pagination{margin:0;}
.hh-catclean-pagination .pagination>li>a,.hh-catclean-pagination .pagination>li>span{color:#0c8174;border-color:#d7e2dd;border-radius:0 !important;}
.hh-catclean-pagination .pagination>.active>a,.hh-catclean-pagination .pagination>.active>span{color:#fff !important;background:#0c8174 !important;border-color:#0c8174 !important;}
body.hh-news-category-page .hh-news-category-side{width:355px !important;min-width:355px !important;}
@media(max-width:1100px){
 body.hh-news-category-page .hh-content-grid--right{width:calc(100% - 20px) !important;grid-template-columns:1fr !important;gap:0 !important;padding-top:18px !important;}
 body.hh-news-category-page .hh-news-category-side{display:none !important;}
 .hh-catclean-feature{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);}
 .hh-catclean-feature h2{font-size:27px;}
}
@media(max-width:767px){
 body.hh-news-category-page .hh-content-grid--right{width:calc(100% - 16px) !important;padding-top:12px !important;padding-bottom:40px !important;}
 .hh-catclean{gap:16px;}
 .hh-catclean-head__line span{font-size:13px;padding:8px 11px 7px;}
 .hh-catclean-feature{grid-template-columns:1fr;min-height:0;border-bottom:1px solid #d8e3de;}
 .hh-catclean-feature__media,.hh-catclean-feature__media img{min-height:0;aspect-ratio:16/9;}
 .hh-catclean-feature__body{padding:17px 0 19px;}
 .hh-catclean-feature h2{font-size:24px;}
 .hh-catclean-item{grid-template-columns:120px minmax(0,1fr);gap:12px;padding:13px 0;}
 .hh-catclean-item__media{width:120px;aspect-ratio:4/3;}
 .hh-catclean-item h3{font-size:17px;line-height:1.24;}
 .hh-catclean-item__body>p{display:none;}
 .hh-catclean-meta{font-size:10px;gap:5px 10px;}
 .hh-catclean-related a{grid-template-columns:1fr;gap:2px;}
 .hh-catclean-simple>a{grid-template-columns:30px minmax(0,1fr) 16px;font-size:16px;}
}

/* =========================================================
   v1.0.97 — News category layout inspired by editorial portals
   One large lead + one side story + three cards + article feed.
   Keeps the exact existing menu/header and shared News sidebar.
   ========================================================= */
body.hh-news-category-page .hh-content-grid--right{
    width:min(1500px,calc(100% - 24px)) !important;
    max-width:none !important;
    margin:0 auto !important;
    padding:26px 0 64px !important;
    grid-template-columns:minmax(0,1fr) 355px !important;
    gap:34px !important;
    align-items:start !important;
}
body.hh-news-category-page .hh-main{
    min-width:0 !important;
    padding:0 !important;
    background:#fdfaed !important;
}

.hh-catclean{
    display:grid !important;
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    gap:24px 20px !important;
    min-width:0 !important;
    color:#173d36 !important;
}
.hh-catclean > .hh-catclean-head,
.hh-catclean > .hh-catclean-related,
.hh-catclean > .hh-catclean-pagination,
.hh-catclean > .hh-catclean-simple{
    grid-column:1 / -1 !important;
}

/* Category heading: clean editorial title, no boxed card. */
.hh-catclean-head{
    margin:0 !important;
    padding:0 0 14px !important;
    border:0 !important;
    border-bottom:1px solid #cfdcd6 !important;
    background:transparent !important;
}
.hh-catclean-head__line{
    display:flex !important;
    align-items:flex-end !important;
    margin:0 0 8px !important;
    border:0 !important;
    position:relative !important;
}
.hh-catclean-head__line:after{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    bottom:-15px !important;
    width:74px !important;
    height:3px !important;
    background:#0c8174 !important;
}
.hh-catclean-head__line span{
    display:block !important;
    padding:0 !important;
    background:transparent !important;
    color:#123d35 !important;
    font-family:Cambria,Georgia,"Times New Roman",serif !important;
    font-size:34px !important;
    line-height:1.12 !important;
    font-weight:700 !important;
    letter-spacing:-.015em !important;
    text-transform:none !important;
}
.hh-catclean-head p{
    max-width:920px !important;
    margin:13px 0 0 !important;
    color:#687a74 !important;
    font-size:13px !important;
    line-height:1.65 !important;
}

/* Let the articles become direct grid children. */
.hh-catclean-feed{
    display:contents !important;
    border:0 !important;
    margin:0 !important;
    padding:0 !important;
}

/* Main lead story: large image with title underneath. */
.hh-catclean-feature{
    grid-column:1 / 5 !important;
    display:block !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 0 18px !important;
    border:0 !important;
    border-bottom:1px solid #d9e3de !important;
    background:transparent !important;
}
.hh-catclean-feature__media{
    display:block !important;
    width:100% !important;
    min-height:0 !important;
    aspect-ratio:16/9 !important;
    overflow:hidden !important;
    background:#e3ebe7 !important;
}
.hh-catclean-feature__media img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    object-fit:cover !important;
    transition:transform .3s ease !important;
}
.hh-catclean-feature:hover .hh-catclean-feature__media img{transform:scale(1.015) !important;}
.hh-catclean-feature__body{
    display:block !important;
    padding:13px 0 0 !important;
    min-width:0 !important;
}
.hh-catclean-kicker{
    display:none !important;
}
.hh-catclean-feature h2{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    margin:0 0 7px !important;
    font-family:Cambria,Georgia,"Times New Roman",serif !important;
    font-size:29px !important;
    line-height:1.19 !important;
    font-weight:700 !important;
    letter-spacing:-.012em !important;
}
.hh-catclean-feature__body > p{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    margin:8px 0 0 !important;
    color:#5e716a !important;
    font-size:13px !important;
    line-height:1.6 !important;
}
.hh-catclean-meta{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:6px 14px !important;
    color:#8a9993 !important;
    font-size:10px !important;
    line-height:1.35 !important;
}

/* Common article reset before assigning editorial positions. */
.hh-catclean-item{
    min-width:0 !important;
    margin:0 !important;
    background:transparent !important;
}
.hh-catclean-item__media img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}
.hh-catclean-item h3 a,
.hh-catclean-feature h2 a{
    color:#123d35 !important;
    text-decoration:none !important;
}
.hh-catclean-item h3 a:hover,
.hh-catclean-feature h2 a:hover{color:#0c8174 !important;}

/* Story #2: right-hand vertical story beside the lead. */
.hh-catclean-item:nth-child(1){
    grid-column:5 / 7 !important;
    display:block !important;
    padding:0 0 16px !important;
    border:0 !important;
    border-bottom:1px solid #d9e3de !important;
}
.hh-catclean-item:nth-child(1) .hh-catclean-item__media{
    display:block !important;
    width:100% !important;
    aspect-ratio:16/10 !important;
    overflow:hidden !important;
    background:#e3ebe7 !important;
}
.hh-catclean-item:nth-child(1) .hh-catclean-item__body{padding:11px 0 0 !important;}
.hh-catclean-item:nth-child(1) h3{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:3 !important;
    overflow:hidden !important;
    margin:0 0 6px !important;
    font-family:Cambria,Georgia,"Times New Roman",serif !important;
    font-size:21px !important;
    line-height:1.24 !important;
    font-weight:700 !important;
}
.hh-catclean-item:nth-child(1) .hh-catclean-item__body > p{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    margin:7px 0 0 !important;
    color:#667a73 !important;
    font-size:12px !important;
    line-height:1.55 !important;
}

/* Stories #3–5: three image cards in one row. */
.hh-catclean-item:nth-child(2),
.hh-catclean-item:nth-child(3),
.hh-catclean-item:nth-child(4){
    display:block !important;
    padding:0 0 16px !important;
    border:0 !important;
    border-bottom:1px solid #d9e3de !important;
}
.hh-catclean-item:nth-child(2){grid-column:1 / 3 !important;}
.hh-catclean-item:nth-child(3){grid-column:3 / 5 !important;}
.hh-catclean-item:nth-child(4){grid-column:5 / 7 !important;}
.hh-catclean-item:nth-child(2) .hh-catclean-item__media,
.hh-catclean-item:nth-child(3) .hh-catclean-item__media,
.hh-catclean-item:nth-child(4) .hh-catclean-item__media{
    display:block !important;
    width:100% !important;
    aspect-ratio:16/9.4 !important;
    overflow:hidden !important;
    background:#e3ebe7 !important;
}
.hh-catclean-item:nth-child(2) .hh-catclean-item__body,
.hh-catclean-item:nth-child(3) .hh-catclean-item__body,
.hh-catclean-item:nth-child(4) .hh-catclean-item__body{padding:10px 0 0 !important;}
.hh-catclean-item:nth-child(2) h3,
.hh-catclean-item:nth-child(3) h3,
.hh-catclean-item:nth-child(4) h3{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    min-height:0 !important;
    margin:0 !important;
    font-family:Cambria,Georgia,"Times New Roman",serif !important;
    font-size:18px !important;
    line-height:1.27 !important;
    font-weight:700 !important;
}
.hh-catclean-item:nth-child(2) .hh-catclean-meta,
.hh-catclean-item:nth-child(3) .hh-catclean-meta,
.hh-catclean-item:nth-child(4) .hh-catclean-meta,
.hh-catclean-item:nth-child(2) .hh-catclean-item__body > p,
.hh-catclean-item:nth-child(3) .hh-catclean-item__body > p,
.hh-catclean-item:nth-child(4) .hh-catclean-item__body > p{
    display:none !important;
}

/* Remaining stories: clean article feed, image left / text right. */
.hh-catclean-item:nth-child(n+5){
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:230px minmax(0,1fr) !important;
    gap:18px !important;
    align-items:start !important;
    padding:16px 0 !important;
    border:0 !important;
    border-bottom:1px solid #dbe4df !important;
}
.hh-catclean-item:nth-child(5){
    border-top:3px solid #0c8174 !important;
    margin-top:2px !important;
    padding-top:18px !important;
}
.hh-catclean-item:nth-child(n+5) .hh-catclean-item__media{
    display:block !important;
    width:230px !important;
    aspect-ratio:16/10 !important;
    overflow:hidden !important;
    background:#e3ebe7 !important;
}
.hh-catclean-item:nth-child(n+5) .hh-catclean-item__body{padding:1px 0 0 !important;}
.hh-catclean-item:nth-child(n+5) h3{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    margin:0 0 7px !important;
    font-family:Cambria,Georgia,"Times New Roman",serif !important;
    font-size:20px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
}
.hh-catclean-item:nth-child(n+5) .hh-catclean-item__body > p{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    margin:8px 0 0 !important;
    color:#63766f !important;
    font-size:13px !important;
    line-height:1.58 !important;
}

/* Related and pagination remain full-width below the feed. */
.hh-catclean-related,
.hh-catclean-pagination,
.hh-catclean-simple{
    grid-column:1 / -1 !important;
}
.hh-catclean-related{padding-top:2px !important;}
.hh-catclean-related h2{
    margin:0 0 8px !important;
    color:#123d35 !important;
    font-family:Cambria,Georgia,"Times New Roman",serif !important;
    font-size:21px !important;
}
.hh-catclean-related > div{border-top:3px solid #0c8174 !important;}

/* Tablet: keep the editorial hierarchy but use the full content width. */
@media (max-width:1100px){
    body.hh-news-category-page .hh-content-grid--right{
        width:calc(100% - 20px) !important;
        grid-template-columns:minmax(0,1fr) !important;
        gap:0 !important;
        padding-top:18px !important;
    }
    body.hh-news-category-page .hh-news-category-side{display:none !important;}
    .hh-catclean{gap:20px 16px !important;}
    .hh-catclean-head__line span{font-size:31px !important;}
    .hh-catclean-feature h2{font-size:27px !important;}
    .hh-catclean-item:nth-child(1) h3{font-size:19px !important;}
    .hh-catclean-item:nth-child(2) h3,
    .hh-catclean-item:nth-child(3) h3,
    .hh-catclean-item:nth-child(4) h3{font-size:17px !important;}
}

/* Phone: lead first, then two-column compact cards, then the normal feed. */
@media (max-width:767px){
    body.hh-news-category-page .hh-content-grid--right{
        width:calc(100% - 16px) !important;
        padding-top:12px !important;
        padding-bottom:42px !important;
    }
    .hh-catclean{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:16px 12px !important;
    }
    .hh-catclean > .hh-catclean-head,
    .hh-catclean > .hh-catclean-related,
    .hh-catclean > .hh-catclean-pagination,
    .hh-catclean > .hh-catclean-simple,
    .hh-catclean-feature{
        grid-column:1 / -1 !important;
    }
    .hh-catclean-head{padding-bottom:12px !important;}
    .hh-catclean-head__line:after{bottom:-13px !important;width:58px !important;}
    .hh-catclean-head__line span{font-size:27px !important;}
    .hh-catclean-head p{font-size:12px !important;margin-top:11px !important;}
    .hh-catclean-feature{padding-bottom:14px !important;}
    .hh-catclean-feature h2{font-size:23px !important;}
    .hh-catclean-feature__body > p{-webkit-line-clamp:2 !important;font-size:12px !important;}

    .hh-catclean-item:nth-child(1),
    .hh-catclean-item:nth-child(2),
    .hh-catclean-item:nth-child(3),
    .hh-catclean-item:nth-child(4){
        grid-column:auto !important;
        display:block !important;
        padding:0 0 13px !important;
    }
    .hh-catclean-item:nth-child(1) .hh-catclean-item__media,
    .hh-catclean-item:nth-child(2) .hh-catclean-item__media,
    .hh-catclean-item:nth-child(3) .hh-catclean-item__media,
    .hh-catclean-item:nth-child(4) .hh-catclean-item__media{
        width:100% !important;
        aspect-ratio:4/3 !important;
    }
    .hh-catclean-item:nth-child(1) h3,
    .hh-catclean-item:nth-child(2) h3,
    .hh-catclean-item:nth-child(3) h3,
    .hh-catclean-item:nth-child(4) h3{
        -webkit-line-clamp:2 !important;
        margin:0 !important;
        font-size:16px !important;
        line-height:1.28 !important;
    }
    .hh-catclean-item:nth-child(1) .hh-catclean-item__body > p,
    .hh-catclean-item:nth-child(1) .hh-catclean-meta{
        display:none !important;
    }

    .hh-catclean-item:nth-child(n+5){
        grid-column:1 / -1 !important;
        grid-template-columns:118px minmax(0,1fr) !important;
        gap:12px !important;
        padding:13px 0 !important;
    }
    .hh-catclean-item:nth-child(n+5) .hh-catclean-item__media{
        width:118px !important;
        aspect-ratio:4/3 !important;
    }
    .hh-catclean-item:nth-child(n+5) h3{font-size:16px !important;line-height:1.26 !important;}
    .hh-catclean-item:nth-child(n+5) .hh-catclean-item__body > p{display:none !important;}
    .hh-catclean-meta{font-size:9px !important;gap:4px 8px !important;}
}

@media (max-width:420px){
    .hh-catclean{grid-template-columns:1fr !important;}
    .hh-catclean-item:nth-child(1),
    .hh-catclean-item:nth-child(2),
    .hh-catclean-item:nth-child(3),
    .hh-catclean-item:nth-child(4){grid-column:1 !important;}
    .hh-catclean-item:nth-child(1) .hh-catclean-item__media,
    .hh-catclean-item:nth-child(2) .hh-catclean-item__media,
    .hh-catclean-item:nth-child(3) .hh-catclean-item__media,
    .hh-catclean-item:nth-child(4) .hh-catclean-item__media{aspect-ratio:16/9 !important;}
}

/* =========================================================
   v1.0.98 — unified FAIVO-inspired News category renderer
   4 editorial cards -> local CTA -> 2-column stories + recommendation
   ========================================================= */
body.hh-news-category-page,
body.hh-news-category-page .hh-page-shell,
body.hh-news-category-page .hh-page-shell > .hh-container,
body.hh-news-category-page .hh-main{
    background:#fff !important;
}
body.hh-news-category-page .hh-main{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 0 64px !important;
}
body.hh-news-category-page .hh-zone--top,
body.hh-news-category-page .hh-zone--bottom{
    display:none !important;
}
body.hh-news-category-page .hh-breadcrumbs{
    margin-bottom:22px !important;
}
.hh-catfaivo{
    width:100%;
    color:#173d36;
}
.hh-catfaivo a{
    text-decoration:none !important;
}
.hh-catfaivo-top{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    align-items:start;
    gap:0;
    margin:0 0 40px;
}
.hh-catfaivo-topcard{
    min-width:0;
    padding:0 18px;
    text-align:center;
    border-right:1px solid #aebbb7;
}
.hh-catfaivo-topcard:first-child{padding-left:0;}
.hh-catfaivo-topcard:last-child{padding-right:0;border-right:0;}
.hh-catfaivo-topcard__img{
    display:block;
    width:100%;
    aspect-ratio:1.18/1;
    overflow:hidden;
    background:#eef2ef;
}
.hh-catfaivo-topcard__img img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}
.hh-catfaivo-topcard:hover .hh-catfaivo-topcard__img img{transform:scale(1.025);}
.hh-catfaivo-topcard h2{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    min-height:66px;
    margin:12px 8px 7px;
    font-family:Cambria,Georgia,"Times New Roman",serif;
    font-size:18px;
    line-height:1.12;
    font-weight:700;
}
.hh-catfaivo-topcard h2 a{color:#173d36 !important;}
.hh-catfaivo-topcard h2 a:hover{color:#087e70 !important;}
.hh-catfaivo-meta{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:7px;
    font-size:10px;
    line-height:1.2;
    text-transform:uppercase;
}
.hh-catfaivo-meta a{
    color:#00867a !important;
    font-weight:900;
}
.hh-catfaivo-meta span{
    padding-left:8px;
    border-left:1px solid #bfc8c5;
    color:#5f716c;
    font-weight:700;
}
.hh-catfaivo-cta{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:22px;
    width:min(860px,78%);
    margin:0 auto 46px;
    padding:20px 26px;
    color:#fff;
    background:linear-gradient(90deg,#0b5f55,#0d8174);
    box-shadow:0 8px 24px rgba(7,72,63,.12);
}
.hh-catfaivo-cta__label{
    padding-right:22px;
    border-right:1px solid rgba(255,255,255,.34);
    color:#fff5bd;
    font-size:11px;
    line-height:1.35;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
    white-space:nowrap;
}
.hh-catfaivo-cta__copy h2{
    margin:0 0 4px;
    color:#fff;
    font-family:Cambria,Georgia,"Times New Roman",serif;
    font-size:20px;
    line-height:1.15;
    font-weight:700;
}
.hh-catfaivo-cta__copy p{
    margin:0;
    color:rgba(255,255,255,.84);
    font-size:11px;
    line-height:1.45;
}
.hh-catfaivo-cta > a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 15px;
    border:1px solid rgba(255,255,255,.7);
    color:#fff !important;
    font-size:11px;
    font-weight:800;
    white-space:nowrap;
}
.hh-catfaivo-cta > a:hover{background:#fff;color:#0b6e62 !important;}
.hh-catfaivo-lower{
    display:grid;
    grid-template-columns:minmax(0,1fr) 300px;
    align-items:start;
    gap:34px;
}
.hh-catfaivo-stories{min-width:0;}
.hh-catfaivo-sectiontitle{
    display:flex;
    align-items:center;
    gap:16px;
    margin:0 0 20px;
}
.hh-catfaivo-sectiontitle h1{
    flex:0 0 auto;
    margin:0;
    color:#173d36;
    font-family:Cambria,Georgia,"Times New Roman",serif;
    font-size:22px;
    line-height:1.2;
    font-weight:700;
}
.hh-catfaivo-sectiontitle span{
    height:1px;
    flex:1 1 auto;
    background:#99aaa5;
}
.hh-catfaivo-storygrid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:28px;
    row-gap:0;
}
.hh-catfaivo-story{
    display:grid;
    grid-template-columns:170px minmax(0,1fr);
    gap:15px;
    min-width:0;
    padding:0 0 16px;
    margin:0 0 16px;
    border-bottom:1px dashed #8ea49e;
}
.hh-catfaivo-story__img{
    display:block;
    width:170px;
    height:102px;
    overflow:hidden;
    background:#eef2ef;
}
.hh-catfaivo-story__img img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .3s ease;
}
.hh-catfaivo-story:hover .hh-catfaivo-story__img img{transform:scale(1.025);}
.hh-catfaivo-story__body{min-width:0;}
.hh-catfaivo-story h2{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    margin:0 0 7px;
    font-family:Cambria,Georgia,"Times New Roman",serif;
    font-size:17px;
    line-height:1.12;
    font-weight:700;
}
.hh-catfaivo-story h2 a{color:#173d36 !important;}
.hh-catfaivo-story h2 a:hover{color:#087e70 !important;}
.hh-catfaivo-story .hh-catfaivo-meta{
    justify-content:flex-start;
    margin-bottom:7px;
    font-size:9px;
}
.hh-catfaivo-story p{
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    margin:0;
    color:#6d7f7a;
    font-size:11px;
    line-height:1.48;
}
.hh-catfaivo-recommend{
    min-width:0;
}
.hh-catfaivo-recommend > h2{
    margin:0 0 12px;
    color:#173d36;
    font-family:Cambria,Georgia,"Times New Roman",serif;
    font-size:22px;
    line-height:1.2;
    font-weight:700;
}
.hh-catfaivo-tourcard{
    border:1px solid #e0d7c6;
    background:#fffaf1;
    padding:15px;
}
.hh-catfaivo-tourcard > a{
    display:block;
    aspect-ratio:16/10;
    overflow:hidden;
    margin-bottom:14px;
}
.hh-catfaivo-tourcard > a img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.hh-catfaivo-tourcard span{
    display:block;
    margin-bottom:5px;
    color:#00867a;
    font-size:10px;
    font-weight:900;
    letter-spacing:.05em;
}
.hh-catfaivo-tourcard h3{
    margin:0 0 8px;
    font-family:Cambria,Georgia,"Times New Roman",serif;
    font-size:19px;
    line-height:1.28;
}
.hh-catfaivo-tourcard h3 a{color:#007d72 !important;}
.hh-catfaivo-tourcard p{
    margin:0 0 12px;
    color:#6d7f7a;
    font-size:12px;
    line-height:1.55;
}
.hh-catfaivo-tourcard__btn{
    display:inline-flex;
    padding:8px 12px;
    color:#fff !important;
    background:#0b7d70;
    font-size:11px;
    font-weight:800;
}
.hh-catfaivo-pagination{margin-top:24px;text-align:center;}
.hh-catfaivo-empty,
.hh-catfaivo-emptylist{
    padding:28px;
    text-align:center;
    color:#687a75;
}

@media (max-width:1180px){
    .hh-catfaivo-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 0;}
    .hh-catfaivo-topcard:nth-child(2){border-right:0;padding-right:0;}
    .hh-catfaivo-topcard:nth-child(3){padding-left:0;}
    .hh-catfaivo-cta{width:92%;}
    .hh-catfaivo-lower{grid-template-columns:1fr;}
    .hh-catfaivo-recommend{display:none;}
}
@media (max-width:820px){
    body.hh-news-category-page .hh-main{padding-bottom:42px !important;}
    .hh-catfaivo-top{grid-template-columns:1fr 1fr;gap:18px 0;margin-bottom:28px;}
    .hh-catfaivo-topcard{padding:0 10px;}
    .hh-catfaivo-topcard h2{min-height:54px;margin:9px 4px 6px;font-size:15px;-webkit-line-clamp:3;}
    .hh-catfaivo-topcard__img{aspect-ratio:1.25/1;}
    .hh-catfaivo-cta{grid-template-columns:1fr;width:100%;gap:9px;padding:18px 20px;margin-bottom:30px;text-align:center;}
    .hh-catfaivo-cta__label{padding:0 0 9px;border-right:0;border-bottom:1px solid rgba(255,255,255,.3);white-space:normal;}
    .hh-catfaivo-cta > a{justify-self:center;}
    .hh-catfaivo-storygrid{grid-template-columns:1fr;}
    .hh-catfaivo-sectiontitle h1{font-size:20px;}
}
@media (max-width:560px){
    body.hh-news-category-page .hh-breadcrumbs{margin-bottom:14px !important;}
    .hh-catfaivo-top{grid-template-columns:1fr;gap:20px;}
    .hh-catfaivo-topcard,
    .hh-catfaivo-topcard:first-child,
    .hh-catfaivo-topcard:nth-child(2),
    .hh-catfaivo-topcard:nth-child(3),
    .hh-catfaivo-topcard:last-child{padding:0;border-right:0;}
    .hh-catfaivo-topcard__img{aspect-ratio:16/10;}
    .hh-catfaivo-topcard h2{min-height:0;font-size:18px;-webkit-line-clamp:2;}
    .hh-catfaivo-story{grid-template-columns:118px minmax(0,1fr);gap:11px;}
    .hh-catfaivo-story__img{width:118px;height:78px;}
    .hh-catfaivo-story h2{font-size:15px;}
    .hh-catfaivo-story p{display:none;}
    .hh-catfaivo-story .hh-catfaivo-meta{font-size:8px;}
}

/* =========================================================
   v1.0.99 — News category reference-match pass
   Match the FAIVO category reference more literally and make
   category routing resilient to NukeViet op/viewcat differences.
   ========================================================= */
body.hh-news-category-page .hh-page-shell > .hh-container{
    width:min(1460px, calc(100% - 36px)) !important;
    max-width:1460px !important;
    margin:0 auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
}
body.hh-news-category-page .hh-main{
    padding-top:0 !important;
}
body.hh-news-category-page .hh-breadcrumbs{
    max-width:1460px !important;
    margin:20px auto 26px !important;
    padding:0 !important;
}
.hh-catfaivo{
    max-width:1460px !important;
    margin:0 auto !important;
}
.hh-catfaivo-top{
    margin-bottom:42px !important;
}
.hh-catfaivo-topcard{
    padding:0 16px !important;
}
.hh-catfaivo-topcard:first-child{padding-left:0 !important;}
.hh-catfaivo-topcard:last-child{padding-right:0 !important;}
.hh-catfaivo-topcard__img{
    aspect-ratio:1.22 / 1 !important;
}
.hh-catfaivo-topcard h2{
    min-height:62px !important;
    margin:10px 8px 6px !important;
    font-size:17px !important;
    line-height:1.08 !important;
    -webkit-line-clamp:3 !important;
}
.hh-catfaivo-meta{
    font-size:9px !important;
}
.hh-catfaivo-cta{
    width:min(850px, 72%) !important;
    margin-bottom:48px !important;
    padding:18px 24px !important;
}
.hh-catfaivo-lower{
    grid-template-columns:minmax(0,1fr) 320px !important;
    gap:30px !important;
}
.hh-catfaivo-sectiontitle{
    margin-bottom:18px !important;
}
.hh-catfaivo-sectiontitle h1{
    font-size:21px !important;
}
.hh-catfaivo-storygrid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    column-gap:28px !important;
}
.hh-catfaivo-story{
    grid-template-columns:165px minmax(0,1fr) !important;
    gap:14px !important;
    padding-bottom:14px !important;
    margin-bottom:14px !important;
}
.hh-catfaivo-story__img{
    width:165px !important;
    height:96px !important;
}
.hh-catfaivo-story h2{
    font-size:16px !important;
    line-height:1.12 !important;
}
.hh-catfaivo-story p{
    font-size:10.5px !important;
    line-height:1.42 !important;
}
.hh-catfaivo-recommend > h2{
    font-size:21px !important;
}
.hh-catfaivo-tourcard{
    padding:14px !important;
}
.hh-catfaivo-tourcard h3{
    font-size:17px !important;
    line-height:1.3 !important;
}
@media (max-width:1180px){
    body.hh-news-category-page .hh-page-shell > .hh-container{
        width:calc(100% - 28px) !important;
    }
    .hh-catfaivo-cta{width:92% !important;}
    .hh-catfaivo-lower{grid-template-columns:1fr !important;}
    .hh-catfaivo-recommend{display:none !important;}
}
@media (max-width:820px){
    .hh-catfaivo-top{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    .hh-catfaivo-storygrid{grid-template-columns:1fr !important;}
}
@media (max-width:560px){
    body.hh-news-category-page .hh-page-shell > .hh-container{
        width:calc(100% - 20px) !important;
    }
    .hh-catfaivo-top{grid-template-columns:1fr !important;}
    .hh-catfaivo-cta{width:100% !important;}
}


/* =========================================================
   v1.0.100 — category lower list: 5 stories per column,
   10 stories per page, then pagination.
   ========================================================= */
.hh-catfaivo-storygrid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    column-gap:28px !important;
    row-gap:0 !important;
    align-items:start !important;
}
.hh-catfaivo-storycol{
    min-width:0;
}
.hh-catfaivo-storycol > .hh-catfaivo-story:last-child{
    margin-bottom:0 !important;
}
.hh-catfaivo-pagination{
    clear:both;
    margin:28px 0 0 !important;
    text-align:center !important;
}
.hh-catfaivo-pagination .pagination{
    display:inline-flex;
    flex-wrap:wrap;
    gap:5px;
    margin:0 !important;
    padding:0;
}
.hh-catfaivo-pagination .pagination > li{
    display:block;
}
.hh-catfaivo-pagination .pagination > li > a,
.hh-catfaivo-pagination .pagination > li > span{
    min-width:36px;
    height:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 !important;
    padding:0 10px !important;
    border:1px solid #d5dfdb !important;
    border-radius:3px !important;
    color:#0b6e62 !important;
    background:#fff !important;
    font-weight:700;
    line-height:1 !important;
}
.hh-catfaivo-pagination .pagination > .active > span,
.hh-catfaivo-pagination .pagination > li > a:hover{
    border-color:#0b7d70 !important;
    color:#fff !important;
    background:#0b7d70 !important;
}
.hh-catfaivo-pagination .pagination > .disabled > span{
    color:#91a29d !important;
    background:#f6f8f7 !important;
}
@media (max-width:820px){
    .hh-catfaivo-storygrid{
        grid-template-columns:1fr !important;
        row-gap:0 !important;
    }
    .hh-catfaivo-storycol + .hh-catfaivo-storycol{
        margin-top:0 !important;
    }
}


/* =========================================================
   v1.0.103 — Tour detail visually matches News detail
   Same wide yellow canvas, seamless content, shared right sidebar.
   ========================================================= */
body.hh-tour-detail-page,
body.hh-tour-detail-page .hh-page-shell,
body.hh-tour-detail-page .hh-page-shell > .hh-container,
body.hh-tour-detail-page .hh-content-grid,
body.hh-tour-detail-page .hh-main,
body.hh-tour-detail-page .hh-news-detail-side {
    background: #fdfaed !important;
}

body.hh-tour-detail-page .hh-page-shell > .hh-container {
    width: min(calc(100% - 32px), 1500px) !important;
    max-width: none !important;
}

body.hh-tour-detail-page .hh-content-grid--right {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 340px) !important;
    gap: clamp(28px, 2.5vw, 42px) !important;
    align-items: start !important;
}

body.hh-tour-detail-page .hh-main {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 0 !important;
}

body.hh-tour-detail-page .hh-tour-detail-content {
    --hh-tour-detail-gutter: clamp(18px, 2.5vw, 32px);
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 4px var(--hh-tour-detail-gutter) 30px !important;
    color: #263a33 !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

/* Remove the legacy white rounded card/panel look. */
body.hh-tour-detail-page .hh-tour-detail-content .panel,
body.hh-tour-detail-page .hh-tour-detail-content .panel-default,
body.hh-tour-detail-page .hh-tour-detail-content .well,
body.hh-tour-detail-page .hh-tour-detail-content .thumbnail {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    overflow: visible !important;
}
body.hh-tour-detail-page .hh-tour-detail-content .panel > .panel-body,
body.hh-tour-detail-page .hh-tour-detail-content .panel-default > .panel-body {
    padding-left: 0 !important;
    padding-right: 0 !important;
    background: transparent !important;
}
body.hh-tour-detail-page .hh-tour-detail-content .panel-heading,
body.hh-tour-detail-page .hh-tour-detail-content .panel-footer {
    border: 0 !important;
    background: transparent !important;
}

/* Typography follows the article-detail visual language. */
body.hh-tour-detail-page .hh-tour-detail-content h1 {
    max-width: 980px !important;
    margin: 4px 0 20px !important;
    color: #163d35 !important;
    font-family: Cambria, Georgia, "Times New Roman", serif !important;
    font-size: clamp(30px, 2.55vw, 38px) !important;
    line-height: 1.16 !important;
    letter-spacing: -.012em !important;
    font-weight: 700 !important;
    text-transform: none !important;
}
body.hh-tour-detail-page .hh-tour-detail-content p,
body.hh-tour-detail-page .hh-tour-detail-content li,
body.hh-tour-detail-page .hh-tour-detail-content td,
body.hh-tour-detail-page .hh-tour-detail-content div {
    line-height: 1.8;
}
body.hh-tour-detail-page .hh-tour-detail-content p,
body.hh-tour-detail-page .hh-tour-detail-content li {
    font-size: clamp(16px, 1.12vw, 18px);
}
body.hh-tour-detail-page .hh-tour-detail-content h2,
body.hh-tour-detail-page .hh-tour-detail-content h3,
body.hh-tour-detail-page .hh-tour-detail-content h4 {
    color: #163d35 !important;
    font-family: Cambria, Georgia, "Times New Roman", serif !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}
body.hh-tour-detail-page .hh-tour-detail-content h2 { font-size: clamp(24px, 2vw, 31px) !important; }
body.hh-tour-detail-page .hh-tour-detail-content h3 { font-size: clamp(21px, 1.7vw, 27px) !important; }
body.hh-tour-detail-page .hh-tour-detail-content h4 { font-size: clamp(18px, 1.4vw, 23px) !important; }

/* Media stays inside the article column and is centered like News detail. */
body.hh-tour-detail-page .hh-tour-detail-content img {
    max-width: 100% !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
body.hh-tour-detail-page .hh-tour-detail-content iframe,
body.hh-tour-detail-page .hh-tour-detail-content video {
    display: block !important;
    width: min(100%, 760px) !important;
    max-width: 100% !important;
    aspect-ratio: 16 / 9;
    height: auto !important;
    margin: 24px auto !important;
    border: 0 !important;
}

@media (max-width: 1100px) {
    body.hh-tour-detail-page .hh-page-shell > .hh-container {
        width: min(calc(100% - 24px), 1500px) !important;
    }
    body.hh-tour-detail-page .hh-content-grid--right {
        grid-template-columns: 1fr !important;
    }
    body.hh-tour-detail-page .hh-news-detail-side {
        display: none !important;
    }
}

@media (max-width: 640px) {
    body.hh-tour-detail-page .hh-page-shell > .hh-container {
        width: calc(100% - 16px) !important;
    }
    body.hh-tour-detail-page .hh-tour-detail-content {
        --hh-tour-detail-gutter: 8px;
        padding-top: 2px !important;
        padding-bottom: 24px !important;
    }
    body.hh-tour-detail-page .hh-tour-detail-content h1 {
        margin-bottom: 15px !important;
        font-size: 25px !important;
        line-height: 1.22 !important;
    }
}


/* v1.0.104 — Tour detail: remove reader comments completely */
body.hh-tour-detail-page #idcomment,
body.hh-tour-detail-page .comment-form,
body.hh-tour-detail-page .comment-list {
    display: none !important;
}

/* =========================================================
   v1.0.105 — remove click/focus ring from navigation items
   Keep active/hover text color only; no outline, border, box shadow,
   background frame or underline around clicked menu items.
   ========================================================= */
.hh-nav .navbar-nav > li > a,
.hh-nav .navbar-nav > li > a:hover,
.hh-nav .navbar-nav > li > a:focus,
.hh-nav .navbar-nav > li > a:active,
.hh-nav .navbar-nav > li.active > a,
.hh-nav .navbar-nav > li.active > a:hover,
.hh-nav .navbar-nav > li.active > a:focus,
.hh-nav .navbar-nav > li.open > a,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a:hover,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a:focus,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a:active,
.hh-home-photo-hero .hh-nav .navbar-nav > li.active > a {
    outline: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

.hh-nav .navbar-nav > li.active > a:after,
.hh-home-photo-hero .hh-nav .navbar-nav > li.active > a:after,
body.hh-menu-only-page .hh-nav .navbar-nav > li.active > a:after,
body.hh-news-detail-page .hh-nav .navbar-nav > li.active > a:after,
body.hh-tour-page .hh-nav .navbar-nav > li.active > a:after {
    display: none !important;
    content: none !important;
}

/* Keep the current item readable without a frame. */
.hh-home-photo-hero .hh-nav .navbar-nav > li.active > a,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a:hover,
.hh-home-photo-hero .hh-nav .navbar-nav > li > a:focus {
    color: #ffd07b !important;
}
body.hh-menu-only-page .hh-nav .navbar-nav > li.active > a,
body.hh-menu-only-page .hh-nav .navbar-nav > li > a:hover,
body.hh-menu-only-page .hh-nav .navbar-nav > li > a:focus,
body.hh-news-detail-page .hh-nav .navbar-nav > li.active > a,
body.hh-news-detail-page .hh-nav .navbar-nav > li > a:hover,
body.hh-news-detail-page .hh-nav .navbar-nav > li > a:focus,
body.hh-tour-page .hh-nav .navbar-nav > li.active > a,
body.hh-tour-page .hh-nav .navbar-nav > li > a:hover,
body.hh-tour-page .hh-nav .navbar-nav > li > a:focus {
    color: #ffd166 !important;
}
