@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--g:#123f32;--g2:#1c5a47;--cream:#f7f5ee;--paper:#fffdf8;--ink:#17251f;--muted:#69756e;--line:#e3e5dc;--gold:#c9a96a;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 var(--sans)}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 48px));margin:auto}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:10px;z-index:999;background:white}.site-header{position:sticky;top:0;z-index:10;background:#fffdf8ed;backdrop-filter:blur(15px);border-bottom:1px solid transparent;transition:.25s}.site-header.scrolled{box-shadow:0 8px 28px #17251f0b;border-color:var(--line)}.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--g);color:#f8f3df;font:17px var(--serif);border:1px solid var(--gold);box-shadow:inset 0 0 0 3px var(--g),inset 0 0 0 4px var(--gold)}.brand strong,.brand small{display:block}.brand strong{font:18px var(--serif)}.brand small{font-size:10px;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:28px}.main-nav>a{font-size:12px;font-weight:700;color:#4c5b53}.main-nav>a:hover,.main-nav>a.active{color:var(--g2)}.main-nav .nav-cta{padding:12px 18px;background:var(--g);color:white}.menu-toggle{display:none}.hero{background:var(--cream);padding:70px 0 0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:55px}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:700;color:var(--g2)}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.035em;line-height:1.16}h1 em,h2 em{color:var(--g2)}.hero h1{font-size:clamp(44px,5vw,67px);margin:20px 0}.hero-copy>p,.page-hero p{max-width:470px;color:var(--muted);font-size:14px;line-height:1.9}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:13px 18px;border:1px solid transparent;font-size:12px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--g);color:white}.btn-primary:hover{background:var(--g2)}.btn-ghost{border-color:#d5d9cf;color:var(--g)}.btn-light{background:var(--paper);color:var(--g)}.hero-proof{display:flex;align-items:center;gap:12px;margin-top:35px}.hero-proof strong,.hero-proof small{display:block}.hero-proof strong{font-size:11px}.hero-proof small{font-size:10px;color:var(--muted)}.hero-visual{position:relative;min-height:450px;display:grid;place-items:center}.hero-photo{width:77%;height:420px;overflow:hidden;border-radius:48% 48% 3px 3px;position:relative;z-index:1;box-shadow:0 20px 50px #233d2e20}.hero-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.orbit{position:absolute;width:94%;height:85%;border:1px solid #c6cfc2;border-radius:50%;transform:rotate(-20deg)}.floating-note{position:absolute;z-index:2;background:var(--paper);padding:14px;display:flex;align-items:center;gap:12px;box-shadow:0 10px 35px #1d39221a;animation:float 5s ease-in-out infinite}.floating-note span strong,.floating-note small{display:block}.floating-note strong{font-size:11px}.floating-note small{font-size:10px;color:var(--muted)}.note-top{top:65px;left:0}.note-bottom{right:0;bottom:55px;animation-delay:-2.5s}.hero-bottom{display:flex;justify-content:space-between;padding:25px 0 18px;border-top:1px solid #dfe2d7;font-size:9px;letter-spacing:.14em;font-weight:700;color:#778177}.section-pad{padding:95px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:38px}.section-heading h2,.program-copy h2,.content-layout h2,.cta-inner h2{font-size:clamp(34px,4vw,48px);margin:14px 0}.section-heading>p{max-width:370px;color:var(--muted);font-size:13px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.value-card{padding:27px;background:#faf9f4;border:1px solid #e9e9e0;transition:transform .25s,box-shadow .25s}.value-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #173e2b0c}.value-card.featured{background:var(--g);color:white}.card-index{font-size:9px;letter-spacing:.14em;color:#7a857a}.featured .card-index{color:#b5c6b8}.value-icon{font-size:30px;color:var(--gold);margin:17px 0 8px}.value-card h3,.steps h3{font:22px var(--serif);margin:0 0 8px}.value-card p{font-size:12px;color:var(--muted)}.featured p{color:#c4d1c8}.program-section{background:#f0f1e9}.program-layout,.content-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:75px}.program-image{position:relative}.program-image>img,.content-photo{width:100%;height:450px;object-fit:cover;filter:saturate(.75)}.image-stamp{position:absolute;bottom:-15px;right:-10px;background:var(--g);color:#f3e7c8;width:115px;height:115px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;font:22px var(--serif);border:5px solid #f0f1e9}.image-stamp small{font:9px var(--sans)}.program-copy>p,.content-layout p{font-size:13px;color:var(--muted);line-height:2}.program-list{margin:25px 0;border-top:1px solid #d9ddd2}.program-list>div{display:grid;grid-template-columns:35px 1fr 20px;padding:14px 0;border-bottom:1px solid #d9ddd2;gap:10px;font-size:12px}.program-list span{color:#899188}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-image{height:220px;display:block;position:relative;overflow:hidden;background:#eee}.news-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.news-card:hover img,.gallery-item:hover img{transform:scale(1.045)}.news-image span{position:absolute;right:12px;bottom:12px;background:var(--paper);padding:7px 12px}.news-meta{font-size:9px;letter-spacing:.1em;color:#7b857c;margin-top:15px}.news-card h3{font:22px/1.35 var(--serif);margin:7px 0}.news-card p{font-size:12px;color:var(--muted)}.cta-section{background:var(--g);color:white}.cta-inner{padding:65px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}.cta-inner .eyebrow{color:#c6d5c9}.cta-inner h2 em{color:#d6c08e}.site-footer{background:#0d2f25;color:#e6ede6;padding-top:55px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .9fr;gap:60px;padding-bottom:45px}.brand-light strong{color:white}.brand-light small{color:#a8b9ae}.footer-grid p,.footer-grid a:not(.brand){font-size:11px;color:#b4c4b8}.footer-grid h3{font-size:11px;color:#e4d3a8}.footer-grid>div>a:not(.brand){display:block;margin:8px 0}.copyright{border-top:1px solid #ffffff1c;padding:16px 0;font-size:10px;color:#9fb1a4}.page-hero{padding:75px 0;background:var(--cream)}.page-hero h1{font-size:clamp(42px,5vw,62px);margin:18px 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{margin:0;overflow:hidden;background:#eee}.gallery-item img{width:100%;height:275px;object-fit:cover;transition:transform .5s}.gallery-item figcaption{padding:12px;background:#f6f5ef;font-size:11px}.article-container{max-width:800px}.article-head{text-align:center;margin:28px 0}.article-head h1{font-size:clamp(36px,5vw,56px)}.article-head p{color:var(--muted)}.article-cover{width:100%;max-height:450px;object-fit:cover}.article-body{max-width:680px;margin:35px auto;line-height:2}.psb-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.steps>div{display:grid;grid-template-columns:45px 1fr;gap:12px;padding:18px 0;border-top:1px solid var(--line)}.steps>div>span{font:24px var(--serif);color:var(--gold)}.steps p,.psb-panel p{font-size:12px;color:var(--muted)}.psb-panel{padding:28px;background:#f2f2e9;border:1px solid var(--line)}.psb-panel h3{font:26px var(--serif)}.btn-full{width:100%}.empty-state{grid-column:1/-1;text-align:center;padding:45px;background:#f7f6ef}.admin-login-wrap{padding:60px 20px;background:var(--cream);min-height:60vh;display:grid;place-items:center}.admin-login{width:min(100%,440px);background:white;padding:32px;border:1px solid var(--line)}.admin-login h1{font:39px var(--serif)}.admin-form{display:grid;gap:15px}.admin-form label{display:grid;gap:6px;font-size:11px;font-weight:700}.admin-form input,.admin-form textarea,.admin-form select{width:100%;padding:12px;border:1px solid #dfe2d8;background:#fffefa;font:13px var(--sans)}.admin-form textarea{resize:vertical}.muted{font-size:10px;color:var(--muted)}.alert{padding:12px;background:#e9f2e8;color:#245b37;font-size:12px;margin:12px 0}.alert-error{background:#fbebea;color:#8a2d25}.admin-area{background:#fbfaf5;min-height:60vh}.admin-top{display:flex;justify-content:space-between;align-items:center;margin:22px 0}.admin-top h1{font-size:38px}.admin-stats{display:grid;grid-template-columns:1fr 1fr;gap:15px}.admin-stats>div,.admin-editor{background:white;border:1px solid var(--line);padding:23px;margin-bottom:20px}.admin-stats span,.admin-stats strong{display:block}.admin-stats strong{font:34px var(--serif);color:var(--g)}.admin-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0}.admin-actions>a{background:white;border:1px solid var(--line);padding:20px}.admin-actions strong,.admin-actions small{display:block}.admin-actions small{font-size:10px;color:var(--muted)}.admin-table{width:100%;border-collapse:collapse;background:white;font-size:12px}.admin-table td,.admin-table th{padding:12px;border-bottom:1px solid var(--line);text-align:left}.admin-table-wrap{overflow:auto}.inline{display:inline}.link-danger{border:0;background:none;color:#a23e32;cursor:pointer}.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.delay-1{transition-delay:.13s}.delay-2{transition-delay:.25s}@keyframes float{50%{transform:translateY(-8px)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}@media(max-width:760px){.container{width:calc(100% - 36px)}.nav-wrap{height:72px}.menu-toggle{display:block;background:none;border:0;padding:9px}.menu-toggle span{display:block;width:23px;height:2px;background:var(--g);margin:5px}.main-nav{position:fixed;inset:72px 0 auto;background:var(--paper);padding:18px 22px 24px;display:flex;flex-direction:column;align-items:stretch;gap:0;transform:translateY(-130%);opacity:0;visibility:hidden;transition:.25s;box-shadow:0 20px 35px #122d2010}.main-nav.is-open{transform:translateY(0);opacity:1;visibility:visible}.main-nav>a{padding:12px 4px;border-bottom:1px solid var(--line)}.main-nav .nav-cta{text-align:center;margin-top:10px}.hero{padding-top:45px}.hero-grid,.program-layout,.content-layout,.psb-layout{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(43px,11vw,57px)}.hero-visual{min-height:350px}.hero-photo{height:330px}.note-top{top:35px}.note-bottom{bottom:30px}.hero-bottom{font-size:8px}.section-pad{padding:70px 0}.section-heading{display:block}.section-heading>p{margin-top:16px}.value-grid,.news-grid{grid-template-columns:1fr}.program-image>img,.content-photo{height:330px}.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.gallery-item img{height:220px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.cta-inner{align-items:flex-start;flex-direction:column}.admin-actions{grid-template-columns:1fr}.admin-editor{padding:18px}}@media(max-width:420px){.gallery-grid,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.gallery-item img{height:250px}.hero h1{font-size:41px}.hero-visual{min-height:310px}.hero-photo{height:290px}}


/* Logo, pengaturan admin, dan halaman profil lengkap */
.brand-mark{overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.brand-mark img{display:block;width:100%;height:100%;max-width:54px;max-height:54px;object-fit:contain;border-radius:inherit}
.admin-form h2{font-family:inherit;font-size:1.1rem;margin:1.5rem 0 .25rem;padding-top:1rem;border-top:1px solid var(--line,#e4e8e3)}
.admin-form h2:first-of-type{margin-top:0;padding-top:0;border-top:0}
.logo-preview{display:flex;align-items:center;gap:14px;margin:12px 0 18px;padding:14px;border:1px solid #e3e8e2;border-radius:12px;background:#fff}
.logo-preview img{width:88px;height:88px;object-fit:contain;border-radius:8px;background:#f7f8f5}
.logo-preview span,.muted{color:#66736b;font-size:.92rem}
.alert-error{background:#fff0ef;color:#9b2525;border:1px solid #f1c9c5;padding:12px 14px;border-radius:10px;margin:16px 0}
.profile-copy{line-height:1.85;color:var(--muted,#53635a);white-space:normal}
.profile-fact{padding:.55rem 0;border-bottom:1px solid #e8ece7;line-height:1.6}
.profile-section{background:#f7f8f4}
.profile-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.profile-info-card{background:#fff;border:1px solid #e5e9e2;border-radius:18px;padding:clamp(22px,4vw,38px);box-shadow:0 12px 36px rgba(20,50,35,.045)}
.profile-info-card h2{margin:.6rem 0 1rem}
.profile-contact{background:#123f32;color:#fff}
.profile-contact .profile-copy,.profile-contact p{color:#e0e9e2;line-height:1.8}
.profile-contact h2{margin:.5rem 0 1rem}
.profile-contact .eyebrow{color:#b8d5b9}
.contact-list{margin:1rem 0 1.5rem}
@media(max-width:700px){.profile-columns{grid-template-columns:1fr}.logo-preview img{width:68px;height:68px}}


/* Logo uploaded: remove the decorative circular badge behind the image */
.brand-mark.has-logo{width:54px;height:54px;min-width:54px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;padding:0}
.brand-mark.has-logo img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;border-radius:0;background:transparent}
@media(max-width:760px){.brand-mark.has-logo{width:48px;height:48px;min-width:48px}}
