/* v5 site skin (29/10/2026): the inner pages (projects, project, land, contact, privacy, posts) follow the v5 home —
   Noto Serif Display headings, navy instead of black, gold gradient buttons with rounded corners, white/sand surfaces,
   no giant footer slogan, sticky quick-contact dock on phones. Loaded after ppi2.css on every page. */
:root{
  --black:#121A24; --char:#121A24; --char-2:#1A2430; --char-line:rgba(255,255,255,.12);
  --paper:#FFFFFF; --ivory:#F4EEE3; --ivory-2:#EAE1D1; --line:#E6DFD2;
  --text:#171512; --muted:#5B564C;
  --gold:#C9A646; --gold-lt:#E3C56C; --gold-ink:#8C6F1D; --gold-soft:rgba(201,166,70,.14);
  --serif:'Noto Serif Display',Georgia,'Times New Roman',serif;
  --v5-wa:#1F8A4C;
}
html{background:#121A24}
body.ppi2 h1,body.ppi2 h2,body.ppi2 h3,body.ppi2 h4,body.ppi2 .elementor-heading-title,body.ppi2 .h1p,body.ppi2 .h2,body.ppi2 .h3,body.ppi2 .big{font-weight:400}
body.ppi2 .h1p{font-size:clamp(40px,6vw,88px);letter-spacing:-.01em}
body.ppi2 .h2{font-size:clamp(34px,4.8vw,72px);letter-spacing:-.01em}
.ft-big{display:none}
.ft{padding-top:clamp(56px,6vw,88px)}
.ptop::after{display:none}

/* buttons: pills, gold gradient */
.btn,body.ppi2 .lx-btn .elementor-button{border-radius:999px;font-weight:800;letter-spacing:.06em;padding:0 26px}
.btn-gold,body.ppi2 .lx-btn-gold .elementor-button{background:linear-gradient(135deg,#E3C56C,#C9A646);color:#1A1508;border-color:transparent;box-shadow:0 10px 26px rgba(201,166,70,.3)}
.btn-gold:hover,body.ppi2 .lx-btn-gold .elementor-button:hover{background:linear-gradient(135deg,#E9CE7C,#D2AE4F);color:#1A1508}
.btn-ink,body.ppi2 .lx-btn-ink .elementor-button{background:#121A24;border-color:#121A24;color:#fff}
.btn-ink:hover,body.ppi2 .lx-btn-ink .elementor-button:hover{background:#1A2430}
body.ppi2 .hdr-cta{border-radius:999px;border-width:1.5px}
.menu-btn{border-radius:999px}
.chip{border-radius:999px}
.pj-card .pc-media,.ph-frame,.pcard .pc-media,.gal a,.diary img,.fig-plain img{border-radius:16px;overflow:hidden}
.pj-card .pc-media img{border-radius:16px}
.pj-filter button,.filters button{border-radius:999px}

/* forms: softer fields */
body.ppi2 .lx-form .elementor-field-group .elementor-field,body.ppi2 .lx-form .elementor-field-textual{border-radius:12px}
body.ppi2 .lx-form .elementor-button{border-radius:999px;background:linear-gradient(135deg,#E3C56C,#C9A646);color:#1A1508}
body.ppi2 .lx-form .elementor-field-type-radio .elementor-field-option label{border-radius:999px}

/* ppi2_join() output: non-wrapping parts with a soft separator */
.nw{white-space:nowrap}
.sep{margin:0 .3em;opacity:.55}

/* mobile menu: each phone on its own line */
.mnav .m-tel a{display:block}
.mnav .m-tel .m-hours{display:block;margin-top:6px}

/* sticky quick-contact dock (phones) */
.ppi-dock{display:none}
@media (max-width:900px){
  body.ppi2{padding-bottom:calc(62px + env(safe-area-inset-bottom,0px))}
  .ppi-dock{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:8px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:8px max(8px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}
  .ppi-dock a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:999px;background:#121A24;color:#fff;text-decoration:none;font:800 12px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase}
  .ppi-dock a .ic{width:16px;height:16px}
  .ppi-dock a.d-wa{background:var(--v5-wa)}
  .ppi-dock a.d-gold{background:linear-gradient(135deg,#E3C56C,#C9A646);color:#1A1508}
  .mnav.open~.site .ppi-dock{display:none}
  .toast{bottom:calc(74px + env(safe-area-inset-bottom,0px))}
}
/* the v5 home renders its own dock */
body.home-v5 .ppi-dock{display:none!important}
