/* Photonema Core: tampilan dasar situs. Font di-host sendiri (lisensi OFL, lihat assets/fonts). */
@font-face{font-family:"DM Sans";src:url(../fonts/dm-sans.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(../fonts/fraunces-italic.woff2) format("woff2");font-weight:400 700;font-style:italic;font-display:swap}

/* Satu sistem lebar utk header, footer, halaman daftar & detail.
   Mengikuti lebar konten Elementor (Site Settings > Layout), default 1140px. */
:root{--pc-gutter:20px;--pc-wrap:calc(var(--container-max-width,1140px) + 2 * var(--pc-gutter))}
body{--pc-wrap:calc(var(--container-max-width,1140px) + 2 * var(--pc-gutter))}
/* Halaman bukan-Elementor (detail paket, spot, crew, dll) ikut garis tepi yg sama. */
body.pc-base:not(.elementor-page) .site-main{box-sizing:border-box;max-width:var(--pc-wrap);padding-inline:var(--pc-gutter);margin-inline:auto;width:100%}

/* Font utama: juga menimpa font global bawaan Elementor (Roboto). */
body.pc-font-dmsans{
  --pc-font:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --e-global-typography-primary-font-family:"DM Sans";
  --e-global-typography-secondary-font-family:"DM Sans";
  --e-global-typography-text-font-family:"DM Sans";
  --e-global-typography-accent-font-family:"DM Sans";
  font-family:var(--pc-font);
}
body.pc-font-dmsans :is(h1,h2,h3,h4,h5,h6,button,input,select,textarea),
body.pc-font-dmsans .elementor-widget :is(.elementor-heading-title,.elementor-button,.elementor-widget-container){font-family:var(--pc-font)}

/* Kata beraksen: <span class="pc-accent">kata</span>, [pc_accent]kata[/pc_accent], atau *kata* di judul beranda. */
.pc-accent{color:var(--pc-accent,#B4480A)}
.pc-accent-serif .pc-accent{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;letter-spacing:0}
.pc-accent-bold .pc-accent{font-weight:800}

/* Skala huruf: nyaman di HP, tdk berlebihan di desktop. */
body.pc-base{font-size:16px;line-height:1.6;color:#1C1917;-webkit-font-smoothing:antialiased}
body.pc-base :is(h1,h2,h3,h4){line-height:1.2;letter-spacing:-.015em;font-weight:700;color:#1C1917}
body.pc-base h1{font-size:clamp(28px,1.4vw + 20px,40px)}
body.pc-base h2{font-size:clamp(22px,.8vw + 17px,30px)}
body.pc-base h3{font-size:clamp(18px,.4vw + 15px,22px)}
body.pc-base h4{font-size:18px}
/* Hanya link teks biasa (tanpa class), agar tombol & chip tdk ikut berubah warna. */
:where(body.pc-base) a:not([class]){color:var(--pc-accent,#B4480A)}
:where(body.pc-base) a:not([class]):hover{color:#8A3606}

/* Header bawaan Hello Elementor: rapi & netral (tanpa pink bawaan). */
body.pc-base .site-header{padding-block:16px}
body.pc-base .site-header .site-title{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0}
body.pc-base .site-header .site-title a{color:#1C1917;text-decoration:none}
body.pc-base .site-header .site-description{font-size:14px;color:#57534E;margin:2px 0 0}
body.pc-base .site-header .site-navigation a{color:#1C1917;font-weight:600;font-size:15px;text-decoration:none}
body.pc-base .site-header .site-navigation a:hover{color:var(--pc-accent,#B4480A)}
body.pc-base .page-header .entry-title,body.pc-base .entry-title{margin-bottom:8px}

/* Footer plugin (tampil di semua halaman) */
.pc-footer,.pc.pc-footer{background:#1C1917;color:#D6D3D1;margin-top:64px;font-size:15px;line-height:1.6}
.pc-footer a,.pc-footer a:not([class]){color:#F5F5F4;text-decoration:none}
.pc-footer a:hover{color:#F4B183}
.pc-footer__inner{box-sizing:border-box;max-width:var(--pc-wrap);margin:0 auto;padding:48px var(--pc-gutter) 32px;display:grid;grid-template-columns:1fr;gap:32px}
@media(min-width:768px){.pc-footer__inner{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}}
.pc-footer__name{font-size:22px;font-weight:700;letter-spacing:-.01em}
.pc-footer__brand p{margin:10px 0 16px;color:#A8A29E;max-width:36ch}
.pc-footer__social{display:flex;gap:8px}
.pc-footer__social a{width:44px;height:44px;border-radius:12px;border:1px solid #44403C;display:flex;align-items:center;justify-content:center}
.pc-footer__social a:hover{border-color:#F4B183}
.pc-footer .pc-footer__col h2{font-size:13px!important;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#A8A29E!important;margin:0 0 12px}
.pc-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pc-footer__col a,.pc-footer__col span{display:inline-flex;align-items:center;gap:8px;min-height:32px}
.pc-footer__bottom{max-width:calc(var(--pc-wrap) - 2 * var(--pc-gutter));width:calc(100% - 2 * var(--pc-gutter));margin:0 auto;padding:18px 0 28px;border-top:1px solid #292524;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;font-size:13px;color:#A8A29E}
.pc-footer__bottom p{margin:0}
.pc-footer .pc-lang{background:transparent;border-color:#44403C}
.pc-footer .pc-lang a{color:#D6D3D1}
.pc-footer .pc-lang a[aria-current="true"]{background:#F5F5F4;color:#1C1917}
.pc-footer .pc-ic{flex-shrink:0}
.pc-lang{display:inline-flex;border:1px solid var(--pc-line);border-radius:999px;padding:3px;gap:2px;background:#fff}
.pc-lang a{min-width:40px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:13px;font-weight:700;color:var(--pc-muted);text-decoration:none}
.pc-lang a[aria-current="true"]{background:var(--pc-ink);color:#fff}
.pc-lang a:focus-visible{outline:3px solid var(--pc-primary);outline-offset:2px}

/* Tanpa garis bawah di tombol/kartu/chip (theme memberi underline ke semua link di konten). */
body .pc a[class],body .pc .pc-card__title a,body .pc .pc-crumb a,body .pc-header a,body .pc-footer a{text-decoration:none}

/* v1.4: header plugin */
.pc-header{background:#fff;border-bottom:1px solid transparent;position:relative;z-index:50;transition:box-shadow .2s ease,border-color .2s ease}
.pc-header.is-sticky{position:sticky;top:var(--wp-admin--admin-bar--height,0)}
.pc-header.is-scrolled{border-color:#E7E5E4;box-shadow:0 6px 20px rgba(28,25,23,.06)}
.pc-header__inner{box-sizing:border-box;max-width:var(--pc-wrap);margin:0 auto;padding:10px var(--pc-gutter);min-height:64px;display:flex;align-items:center;gap:12px}
.pc-header__brand{display:flex;align-items:center;margin-right:auto;flex-shrink:0;min-height:44px}
.pc-header__logo{display:block;height:var(--pc-logo-h,34px);width:auto;max-width:60vw;object-fit:contain}
.pc-header__name{font-size:20px;font-weight:700;letter-spacing:-.01em;color:#1C1917}
.pc-header__tools{display:flex;align-items:center;gap:10px}
.pc-nav ul{list-style:none;margin:0;padding:0}
.pc-nav a{display:flex;align-items:center;color:#1C1917;font-weight:600;font-size:15px;border-radius:10px;transition:background .2s ease,color .2s ease}
.pc-nav a:hover,.pc-nav a:focus-visible{background:#F5F5F4;color:#1C1917}
.pc-nav :is(.current-menu-item,.current_page_item)>a{color:var(--pc-accent,#B4480A)}
.pc-header a:focus-visible,.pc-burger:focus-visible{outline:3px solid var(--pc-accent,#B4480A);outline-offset:2px}

/* Hamburger */
.pc-header .pc-burger,.pc-header .pc-burger:hover,.pc-header .pc-burger:focus{width:44px;height:44px;border-radius:12px;border:1px solid #E7E5E4;background:#fff;color:#1C1917;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:none}
.pc-burger__bar,.pc-burger__bar::before,.pc-burger__bar::after{display:block;width:18px;height:2px;border-radius:2px;background:#1C1917;transition:transform .25s ease,opacity .2s ease;content:""}
.pc-burger__bar{position:relative}
.pc-burger__bar::before{position:absolute;top:-6px;left:0}
.pc-burger__bar::after{position:absolute;top:6px;left:0}
.pc-header.is-open .pc-burger__bar{background:transparent}
.pc-header.is-open .pc-burger__bar::before{transform:translateY(6px) rotate(45deg)}
.pc-header.is-open .pc-burger__bar::after{transform:translateY(-6px) rotate(-45deg)}

/* HP & tablet: menu jadi panel di bawah header, urutan kanan: bahasa lalu hamburger */
@media (max-width:1023px){
  .pc-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid #E7E5E4;box-shadow:0 18px 30px rgba(28,25,23,.12);padding:8px 20px 20px;max-height:calc(100dvh - 64px);overflow-y:auto}
  .pc-header.is-open .pc-nav{display:block}
  .pc-nav a{min-height:52px;padding:0 4px;font-size:17px;border-bottom:1px solid #F5F5F4;border-radius:0}
  .pc-nav .sub-menu a{padding-left:20px;font-size:16px;font-weight:500}
  html.pc-nav-open{overflow:hidden}
}
/* Desktop: logo kiri, menu kanan, bahasa paling kanan dgn pemisah tipis */
@media (min-width:1024px){
  .pc-header .pc-burger{display:none}
  .pc-nav>ul{display:flex;align-items:center;gap:2px}
  .pc-nav a{padding:10px 12px;min-height:44px}
  .pc-nav li{position:relative}
  .pc-nav .sub-menu{position:absolute;top:100%;left:0;min-width:220px;background:#fff;border:1px solid #E7E5E4;border-radius:14px;box-shadow:0 14px 30px rgba(28,25,23,.10);padding:6px;opacity:0;visibility:hidden;transform:translateY(4px);transition:all .18s ease}
  .pc-nav li:hover>.sub-menu,.pc-nav li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
  .pc-header__tools{padding-left:14px;margin-left:6px;border-left:1px solid #E7E5E4}
}

/* Gaya tombol bahasa */
.pc-lang.pc-lang--soft{background:#F5F5F4;border:0;padding:3px;gap:2px}
.pc-lang.pc-lang--soft a{min-width:38px;min-height:32px;font-size:12px;letter-spacing:.04em;color:#57534E}
.pc-lang.pc-lang--soft a[aria-current="true"]{background:#fff;color:#1C1917;box-shadow:0 1px 3px rgba(28,25,23,.14)}
.pc-lang.pc-lang--text{background:none;border:0;padding:0;gap:0}
.pc-lang.pc-lang--text a{min-width:34px;min-height:44px;font-size:13px;color:#78716C}
.pc-lang.pc-lang--text a+a::before{content:"\00b7";margin-right:10px;color:#A8A29E}
.pc-lang.pc-lang--text a[aria-current="true"]{background:none;color:#1C1917;text-decoration:underline;text-decoration-color:var(--pc-accent,#B4480A);text-decoration-thickness:2px;text-underline-offset:6px}
