/* Four Jakarta time palettes. Layout and content stay constant. */
:root, :root[data-kancil-time="morning"] {
 --forest-art:url("../images/hero-forest-morning.webp");
 color-scheme:light;
 --green:#4d761d;--green-dark:#355512;--green-soft:#e8efd9;--green-mist:#f7f4e9;--ink:#182616;--text:#384831;--muted:#53634b;--line:#d6dfc7;--white:#fffdf7;--surface:#f8f5e9;
 --sky-top:#f3c88e;--sky-bottom:#fff3ce;--hero-base:#fffbef;--shade:255,251,239;--forest-filter:saturate(1.07) sepia(.12);--cloud:#fff8e9;--cloud-opacity:.85;--badge-bg:rgba(255,253,244,.96);--badge-ink:#203019;--deer:#426411;--header-bg:rgba(255,253,247,.97);--accent-light:#dbedaa;
}
:root[data-kancil-time="day"] {
 --forest-art:url("../images/hero-forest-day.webp");
 --green:#47711b;--green-dark:#2c4e10;--green-soft:#e3efd7;--green-mist:#eff7e9;--ink:#14241b;--text:#32473a;--muted:#506557;--line:#cbdcc6;--white:#fff;--surface:#f2f7ee;
 --sky-top:#70c4ee;--sky-bottom:#eaf7f8;--hero-base:#fff;--shade:255,255,255;--forest-filter:saturate(1.12);--cloud:#fff;--cloud-opacity:.9;--badge-bg:rgba(255,255,255,.97);--badge-ink:#142b1d;--deer:#456714;--header-bg:rgba(255,255,255,.97);--accent-light:#d5ee9c;
}
:root[data-kancil-time="evening"] {
 --forest-art:url("../images/hero-forest-evening.webp");
 --green:#4e6f22;--green-dark:#354d14;--green-soft:#f1e4cf;--green-mist:#fff0df;--ink:#332719;--text:#514132;--muted:#685743;--line:#e4ceb4;--white:#fff8ef;--surface:#f9ebdb;
 --sky-top:#e8a07e;--sky-bottom:#ffe7b8;--hero-base:#fff1df;--shade:255,241,223;--forest-filter:sepia(.3) saturate(1.15) brightness(.93);--cloud:#ffdbc1;--cloud-opacity:.8;--badge-bg:rgba(255,247,232,.96);--badge-ink:#342c1c;--deer:#4d6120;--header-bg:rgba(255,248,239,.97);--accent-light:#eed797;
}
:root[data-kancil-time="night"] {
 --forest-art:url("../images/hero-forest-night.webp");
 --green:#d3e991;--green-dark:#e2f4b2;--green-soft:#24443a;--green-mist:#0c302c;--ink:#f4f5e7;--text:#d5e1d5;--muted:#b4c9bc;--line:#3a574d;--white:#102e29;--surface:#0b2623;
 --sky-top:#08272f;--sky-bottom:#173e3e;--hero-base:#092522;--shade:9,37,34;--forest-filter:brightness(.65) saturate(.8);--cloud:#476b6b;--cloud-opacity:.3;--badge-bg:rgba(13,44,39,.97);--badge-ink:#eef5de;--deer:#ecf1aa;--header-bg:rgba(9,37,34,.98);--accent-light:#d3e991;
 color-scheme:dark;
}
body { background:var(--white); }
.site-header { background:var(--header-bg); border-color:var(--line); }
.primary-navigation a { color:var(--ink); }
.header-search { background:var(--white); }
.search-field { background:var(--white);color:var(--ink); }
.custom-logo-link { background:#fff; border-radius:8px; padding:3px; }
:root[data-kancil-time="night"] .site-header .brand-mark img { filter:grayscale(1) invert(1) brightness(3) contrast(4);mix-blend-mode:screen; }
:root[data-kancil-time="night"] .site-header .brand-mark { isolation:auto; }
.button { color:#fff; background:#4d761d; border-color:#4d761d; }
.button:hover { color:#fff; background:#355512; border-color:#355512; }
.button--outline { color:var(--green-dark); background:transparent; border-color:var(--green); }
.button--outline:hover { color:#fff; background:#4d761d; }
:root[data-kancil-time="night"] .button { background:#d3e991; border-color:#d3e991; color:#192a16; }
:root[data-kancil-time="night"] .button:hover { background:#e5f4ba; border-color:#e5f4ba; }
:root[data-kancil-time="night"] .button--outline { background:transparent; color:#e5f4ba; }
:root[data-kancil-time="night"] .button--outline:hover { background:#24443a; }
.section--projects,.section--approach { background:var(--white); }
.section--solutions { background:var(--green-mist); }
.section--insights,.section--cta { background:var(--surface); }
.project-card,.insight-card,.solution-card,.sidebar-box { background:var(--white); border-color:var(--line); }
.project-thumb,.insight-thumb { background:var(--green-soft); }
.project-preview-empty { background:var(--green-soft); }
.project-preview-empty .solution-icon,.solution-icon { background:var(--green-soft); color:var(--green-dark); border-color:var(--line); }
.solution-number { color:var(--muted); }
.approach-steps article { background:var(--surface); }
.approach-steps span { background:#4d761d; color:#fff; }
.cta-panel { background:linear-gradient(110deg,#294b1b,#4d761d 65%,#6d932e); }
.cta-panel .button,.cta-panel .button--light { color:#355512; background:#f5f8e9; border-color:#f5f8e9; }
.page-hero { background:var(--green-mist); }
.sidebar-box--cta,.outcome-panel { background:var(--green-soft); }
.reservation-page { background:var(--surface); }
.reservation-intro { background:var(--green-mist); }
.reservation-guide { background:var(--white); border-color:var(--line); }
.reservation-panel { background:var(--white); }
/* Production 3D artwork: one scene in four lighting variants. All copy stays HTML. */
.hero-section { position:relative;isolation:isolate;background:var(--hero-base);border-color:var(--line); }
.hero-section > .container,.site-header > .container { width:min(calc(100% - 64px),1680px); }
.hero-grid { position:relative;z-index:2;min-height:620px;grid-template-columns:1.02fr .98fr;gap:36px; }
.hero-copy { padding:44px 0; }
.hero-copy h1 { font-family:Arial,Helvetica,sans-serif;font-weight:600;font-size:clamp(2.5rem,3.55vw,3.45rem);max-width:800px;line-height:1.12;text-wrap:initial; }
.hero-lead { max-width:610px; }
.forest-scene { position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none; }
.forest-landscape { position:absolute;inset:0;background-image:var(--forest-art);background-size:cover;background-position:right center;background-repeat:no-repeat; }
.forest-copy-shade { position:absolute;inset:0;background:linear-gradient(90deg,rgba(var(--shade),.94) 0%,rgba(var(--shade),.86) 27%,rgba(var(--shade),.60) 39%,rgba(var(--shade),.12) 52%,transparent 65%); }
:root[data-kancil-time="night"] .forest-copy-shade { background:linear-gradient(90deg,rgba(4,30,27,.50),rgba(4,30,27,.35) 33%,transparent 59%); }
.forest-cloud { position:absolute;background:url("../images/forest-cloud.webp") center/contain no-repeat;width:30%;height:23%;opacity:.33;animation:forest-cloud-drift 65s ease-in-out infinite alternate; }
.forest-cloud--one { right:5%;top:1%; }
.forest-cloud--two { right:26%;top:3%;width:25%;opacity:.22;animation-duration:85s;animation-delay:-35s; }
.forest-cloud--three { right:13%;top:15%;width:20%;height:15%;opacity:.16;animation-duration:100s;animation-delay:-50s; }
.forest-cloud--four { right:37%;top:-4%;width:24%;opacity:.20;animation-duration:75s;animation-delay:-20s; }
:root[data-kancil-time="night"] .forest-cloud { filter:brightness(.52) sepia(.2) hue-rotate(120deg);opacity:.22; }
:root[data-kancil-time="evening"] .forest-cloud { filter:sepia(.4);opacity:.22; }
.forest-canopy { position:absolute;right:-2%;top:-6%;width:19%;height:34%;background:url("../images/forest-canopy.webp") right top/contain no-repeat;transform-origin:100% 0;animation:forest-canopy-sway 9s ease-in-out infinite; }
:root[data-kancil-time="night"] .forest-canopy { filter:brightness(.8); }
.forest-solutions { position:relative;min-height:500px;align-self:center; }
.forest-badge { position:absolute;display:flex;align-items:center;gap:9px;padding:13px 16px;border-radius:14px;border:1px solid var(--line);background:var(--badge-bg);color:var(--badge-ink);font-size:.85rem;font-weight:750;box-shadow:0 8px 24px rgba(5,31,24,.14); }
.forest-badge:hover { color:var(--badge-ink);transform:translateY(-3px);box-shadow:0 12px 30px rgba(5,31,24,.2); }
.forest-badge .solution-icon { width:30px;height:30px;border:0;background:transparent; }
.forest-badge .solution-icon svg { width:29px;height:29px; }
.forest-badge--1 { left:1%;top:33%; }
.forest-badge--2 { right:0;top:38%; }
.forest-badge--3 { right:21%;top:7%; }
.forest-badge--4 { left:3%;bottom:4%; }
.forest-badge--5 { right:0;bottom:10%; }
@keyframes forest-cloud-drift { from { translate:-24px 0; } to { translate:32px 0; } }
@keyframes forest-canopy-sway { 0%,100% { rotate:-.7deg; } 50% { rotate:1.2deg; } }
@media (min-width:1600px) {
 .header-inner { min-height:88px; }
 .brand-fallback__text strong { font-size:1.4rem; }
 .brand-fallback__text small { font-size:.8rem; }
 .hero-grid { min-height:clamp(660px,42.4vw,820px); }
 .hero-copy h1 { font-size:clamp(3.45rem,3.65vw,4.4rem); }
 .hero-lead { font-size:1.2rem;max-width:780px; }
 .forest-solutions { min-height:570px; }
 .forest-badge { font-size:1rem;padding:16px 20px; }
}
@media (max-width:1100px) and (min-width:821px) {
 .hero-grid { gap:20px;min-height:590px; }
 .hero-copy h1 { font-size:2.65rem; }
 .forest-badge { font-size:.74rem;padding:8px;gap:5px; }
 .forest-landscape { background-position:78% center; }
}
@media (max-width:820px) {
 .hero-section > .container,.site-header > .container { width:calc(100% - 28px); }
 .hero-grid { grid-template-columns:1fr;gap:0; }
 .hero-copy { padding:34px 0 12px; }
 .hero-copy h1 { font-size:clamp(2.1rem,5vw,3rem);max-width:720px; }
 .forest-landscape { height:390px;top:auto;bottom:0;background-position:80% bottom; }
 .forest-copy-shade { background:linear-gradient(180deg,rgba(var(--shade),1) 0%,rgba(var(--shade),1) calc(100% - 395px),rgba(var(--shade),.90) calc(100% - 360px),transparent calc(100% - 280px)); }
 :root[data-kancil-time="night"] .forest-copy-shade { background:linear-gradient(180deg,#092522 0%,#092522 calc(100% - 395px),rgba(9,37,34,.85) calc(100% - 360px),transparent calc(100% - 280px)); }
 .forest-solutions { min-height:370px;margin:0 0 18px; }
 .forest-canopy { width:26%;height:130px;top:auto;bottom:250px; }
 .forest-cloud { width:40%;height:85px;top:auto;bottom:295px; }
 .forest-cloud--two { right:29%;bottom:260px; }
 .forest-cloud--three { right:7%;bottom:235px; }
 .forest-cloud--four { right:52%;bottom:302px; }
 .forest-badge--1 { left:2%;top:30%; }
 .forest-badge--2 { right:1%;top:24%; }
 .forest-badge--3 { right:23%;top:2%; }
 .forest-badge--4 { left:2%;bottom:7%; }
 .forest-badge--5 { right:1%;bottom:7%; }
}
@media (max-width:560px) {
 .hero-copy h1 { font-size:clamp(2rem,8.6vw,2.8rem); }
 .forest-solutions { min-height:350px; }
 .forest-landscape { height:370px;background-position:82% bottom; }
 .forest-badge { font-size:.68rem;padding:8px 9px;gap:5px;border-radius:11px; }
 .forest-badge .solution-icon,.forest-badge .solution-icon svg { width:23px;height:23px; }
 .forest-badge--1 { top:27%;left:0; }
 .forest-badge--2 { top:26%;right:0; }
 .forest-badge--3 { top:2%;right:22%; }
 .forest-badge--4 { bottom:5%;left:0; }
 .forest-badge--5 { bottom:5%;right:0; }
}
@media (prefers-reduced-motion:reduce) {
 .forest-cloud,.forest-canopy { animation:none; }
}

.project-card__body,.insight-card__body { background:var(--white); }
:root[data-kancil-time="night"] .search-form .search-submit,:root[data-kancil-time="night"] .page-numbers.current { color:#192a16; }
