@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,400&family=Cormorant:wght@300;400;500&display=swap');
:root{
  --black:#080705; --deep:#130805; --gold:#CC9966; --gold2:#E7C985;
  --cream:#F4E5B7; --ivory:#FFF7E4; --bronze:#996633; --muted:#BFAE8A;
  --line:rgba(204,153,102,.22);
  --serif:'Cormorant Garamond',Georgia,serif; --serif-d:'Cormorant',Georgia,serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--ivory);font-family:var(--serif);font-weight:300;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
p{color:#d8c6a1;line-height:1.75;font-size:17px}
::selection{background:var(--gold);color:var(--deep)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:200;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:16px 6vw;background:rgba(8,7,5,.78);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
nav .brand{display:flex;align-items:center;gap:12px}
/* WORDMARK: tinggi tetap, lebar auto, tidak distorsi */
nav .brand .wm{height:24px;width:auto;display:block}
/* Logogram (bloom symbol) di navbar */
nav .brand .logogram{height:30px;width:auto;display:block;transition:.3s}
nav .brand:hover .logogram{opacity:.82}
.bloom{width:18px;height:23px}
.bloom path{fill:var(--gold2)}
.navlink{display:flex;gap:24px;font-family:var(--serif-d);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.navlink a{transition:.3s}.navlink a:hover{color:var(--gold2)}
.lang{display:flex;gap:2px;border:1px solid var(--line);border-radius:999px;overflow:hidden;font-family:var(--serif-d);font-size:11px;letter-spacing:.14em}
.lang button{background:transparent;border:0;color:var(--muted);padding:8px 14px;cursor:pointer;transition:.3s;font:inherit;letter-spacing:inherit}
.lang button.active{background:linear-gradient(135deg,var(--gold),#8a5b2b);color:#110804;font-weight:700}
@media(max-width:880px){.navlink{display:none}}

.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 26px;border-radius:999px;border:1px solid rgba(204,153,102,.5);color:var(--gold2);font-family:var(--serif-d);font-size:12px;letter-spacing:.18em;text-transform:uppercase;transition:.4s;cursor:pointer}
.btn:hover{border-color:var(--gold);color:var(--ivory)}
.btn.gold{background:linear-gradient(135deg,var(--gold),#8a5b2b);color:#110804;font-weight:700;border:0}
.btn.gold:hover{filter:brightness(1.08);color:#110804}
.btn.wa{background:#1f7a3f;border:0;color:#fff}
.btn.wa:hover{filter:brightness(1.1);color:#fff}

.reveal{opacity:0;transform:translateY(38px);transition:1.1s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.22s}.d3{transition-delay:.34s}.d4{transition-delay:.46s}

.hero{min-height:100vh;display:grid;place-items:center;text-align:center;padding:150px 6vw 90px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 32%,rgba(204,153,102,.14),transparent 28%),linear-gradient(180deg,#080705 0%,#1a0f08 70%,#080705 100%)}
.hero .sg{position:absolute;inset:0;opacity:.10;background-position:center 46%;background-size:min(560px,76vw);background-repeat:no-repeat;filter:sepia(1) saturate(2) hue-rotate(-8deg)}
/* Saat background hero diisi FOTO via CMS: tampil full-cover + overlay gelap */
.hero.hero-photo .sg{opacity:1;background-size:cover;background-position:center;filter:none}
.hero.hero-photo::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,7,5,.72),rgba(8,7,5,.55) 45%,rgba(8,7,5,.85))}
.hero.hero-photo .hero-inner{position:relative;z-index:2}
.hero-inner{position:relative;z-index:2;max-width:1000px}
/* HERO logo lockup: bloom mungil di atas wordmark, proporsi seperti PDF */
.hero-lockup{display:flex;flex-direction:column;align-items:center;gap:14px;margin:0 auto 36px}
.hero-lockup .bloomtop{width:clamp(20px,2.4vw,30px);height:auto}
.hero-lockup .bloomtop path{fill:var(--cream)}
.hero-logo{height:clamp(52px,7.5vw,86px);width:auto;max-width:64vw;display:block}
.eyebrow{font-family:var(--serif-d);color:var(--gold);letter-spacing:.34em;text-transform:uppercase;font-size:12px;margin-bottom:20px}
.hero h1{font-family:var(--serif-d);font-weight:300;font-size:clamp(40px,7vw,90px);line-height:1.02;margin-bottom:24px;color:var(--cream)}
.hero h1 em{font-style:italic;color:var(--gold)}
.hero-sub{max-width:680px;margin:0 auto 38px;font-size:18px;color:#e6d4ad}
.cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

section{padding:clamp(90px,11vw,165px) 6vw;border-top:1px solid var(--line);position:relative;overflow:hidden}
.kicker{font-family:var(--serif-d);color:var(--gold);letter-spacing:.26em;text-transform:uppercase;font-size:12px;margin-bottom:18px;display:flex;align-items:center;gap:14px}
.kicker.center{justify-content:center}
.kicker::before{content:"";width:32px;height:1px;background:var(--gold);opacity:.6}
.section-title{font-family:var(--serif-d);font-weight:300;font-size:clamp(34px,5vw,68px);line-height:1.06;margin-bottom:22px;color:var(--cream)}
.section-title em{font-style:italic;color:var(--gold)}
.lead{font-size:18px;color:var(--muted);max-width:52ch}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:center}
@media(max-width:860px){.split{grid-template-columns:1fr;gap:46px}}
.fig{border-radius:24px;overflow:hidden;position:relative;aspect-ratio:4/3;box-shadow:0 40px 90px rgba(0,0,0,.5);border:1px solid var(--line)}
.fig img{width:100%;height:100%;object-fit:cover;display:block;transition:1.4s cubic-bezier(.16,1,.3,1)}
.fig:hover img{transform:scale(1.05)}
.fig::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 70px 10px rgba(8,7,5,.5)}
.gold-rule{width:70px;height:1px;background:var(--gold);opacity:.5;margin:30px 0}

.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:54px}
.step{border-top:1px solid var(--line);padding-top:24px}
.step b{font-family:var(--serif-d);font-style:italic;font-size:14px;color:var(--gold);letter-spacing:.08em}
.step h3{font-family:var(--serif-d);font-weight:400;font-size:23px;color:var(--cream);margin:10px 0 8px}
.step p{font-size:14px}
@media(max-width:760px){.steps{grid-template-columns:1fr 1fr;gap:30px}}

.texband{padding:0;height:58vh;min-height:400px;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden}
.texband .bg{position:absolute;inset:0}
.texband .bg img{width:100%;height:100%;object-fit:cover}
.texband .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,7,5,.85),rgba(8,7,5,.2),rgba(8,7,5,.85))}
.texband .txt{position:relative;z-index:2;padding:0 6vw}

.story-big{min-height:78vh;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 50%,rgba(204,153,102,.12),transparent 30%),#080705}
.story-big .section-title{max-width:18ch;margin:0 auto}
.quote{font-family:var(--serif-d);font-style:italic;font-size:clamp(28px,4.4vw,58px);line-height:1.1;color:var(--cream);max-width:16ch;margin:0 auto}
.story-big .credit{margin-top:26px;font-family:var(--serif-d);color:var(--gold);font-size:18px;letter-spacing:.04em}

.footer{padding:78px 6vw 56px;text-align:center;border-top:1px solid var(--line);background:var(--deep)}
.footer .fwm{height:34px;width:auto;margin:0 auto 16px;display:block}
.footer .fl{font-family:var(--serif-d);font-style:italic;color:var(--gold);font-size:16px;margin-bottom:24px}
.footer .cta{margin-bottom:30px}
.footer .meta{font-family:var(--serif-d);text-transform:uppercase;letter-spacing:.22em;font-size:10px;color:var(--muted)}

[data-en]{display:none}
html[lang="en"] [data-id]{display:none}
html[lang="en"] [data-en]{display:initial}

/* ---- Partnership form page ---- */
.form-wrap{max-width:760px;margin:0 auto}
.field{margin-bottom:22px}
.field label{display:block;font-family:var(--serif-d);letter-spacing:.12em;text-transform:uppercase;font-size:11px;color:var(--gold);margin-bottom:8px}
.field input,.field select,.field textarea{width:100%;background:rgba(255,247,228,.04);border:1px solid var(--line);border-radius:12px;padding:14px 16px;color:var(--ivory);font-family:var(--serif);font-size:16px;transition:.3s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);background:rgba(255,247,228,.07)}
.field textarea{min-height:120px;resize:vertical}
.field select option{background:#1a1109;color:var(--ivory)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:620px){.grid2{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px}
.form-msg{padding:16px;border-radius:12px;margin-bottom:20px;display:none;font-size:15px}
.form-msg.ok{display:block;background:rgba(31,122,63,.18);border:1px solid #1f7a3f;color:#c9f0d4}
.form-msg.err{display:block;background:rgba(160,40,40,.18);border:1px solid #a02828;color:#f3c9c9}
.or-line{display:flex;align-items:center;gap:16px;color:var(--muted);font-family:var(--serif-d);letter-spacing:.2em;font-size:11px;text-transform:uppercase;margin:30px 0}
.or-line::before,.or-line::after{content:"";flex:1;height:1px;background:var(--line)}
