/* ═══════════ Zhobai Hotel Furniture — Combined CSS ═══════════
   Extracted from: header.php + index.php + footer.php
   Prefixes: nav- (nav) | pg- (page) | ft- (footer) | zb- (modal/toast)
   Version: 2025-07-17
════════════════════════════════════════════════════════════════ */

/* ── 自托管字体（消除 Google Fonts 网络依赖链，字体与 HTML 同步加载）── */

/* Cormorant Garamond — 正常体 300 & 600（共用同一字体文件） */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('/fonts/cg-normal-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
                 U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,
                 U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('/fonts/cg-normal-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Cormorant Garamond — 斜体 300 */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/cg-italic-300-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
                 U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,
                 U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('/fonts/cg-italic-300-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Montserrat — 300 / 400 / 600（共用同一字体文件） */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('/fonts/montserrat-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF,
                 U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF,
                 U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300 600;
  font-display: swap;
  src: url('/fonts/montserrat-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
                 U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122,
                 U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ══ HEADER / NAVIGATION ══ */

/* CSS变量 */
:root {
  --gold:       #B8953F;
  --gold-light: #D4AF6A;
  --dark:       #0E0E0E;
  --dark-2:     #181818;
  --dark-3:     #222222;
  --cream:      #F5F0E8;
  --text-muted: #888888;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Montserrat', sans-serif;
  background: #0E0E0E;
  color: #F5F0E8;
  overflow-x: hidden;
}
img { display: block; max-width: 100%; }
::-webkit-scrollbar { width: 4px; }
::-webkit-scrollbar-track { background: #0E0E0E; }
::-webkit-scrollbar-thumb { background: #B8953F; }

/* nav styles moved to header.php inline */

/* ══ MODAL ══ */
#zb-modal-overlay {
  display: none; position: fixed; inset: 0; z-index: 9998;
  background: rgba(0,0,0,0.75); backdrop-filter: blur(4px);
  align-items: center; justify-content: center; padding: 20px;
}
#zb-modal-overlay.open { display: flex; }
#zb-modal {
  background: #181818; border: 1px solid rgba(184,149,63,0.2);
  width: 100%; max-width: 640px; max-height: 90vh;
  overflow-y: auto; position: relative;
  animation: zb-modal-in 0.3s ease;
}
@keyframes zb-modal-in {
  from { opacity: 0; transform: translateY(-24px); }
  to   { opacity: 1; transform: translateY(0); }
}
#zb-modal-header {
  background: #0E0E0E; padding: 28px 36px;
  display: flex; align-items: center; justify-content: space-between;
  border-bottom: 1px solid rgba(184,149,63,0.15);
}
#zb-modal-header h3 {
  font-family: 'Cormorant Garamond', serif;
  font-size: 24px; font-weight: 300; color: #F5F0E8; margin: 0;
}
#zb-modal-close {
  background: none; border: none; color: rgba(245,240,232,0.5);
  font-size: 24px; cursor: pointer; line-height: 1; padding: 4px 8px;
  transition: color 0.2s;
}
#zb-modal-close:hover { color: #B8953F; }
#zb-modal-body { padding: 36px; }
#zb-modal-body .zb-row {
  display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px;
}
#zb-modal-body .zb-full { margin-bottom: 16px; }
#zb-modal-body label {
  display: block; font-size: 9px; letter-spacing: 2.5px;
  text-transform: uppercase; color: #B8953F; margin-bottom: 8px;
  font-family: 'Montserrat', sans-serif; font-weight: 600;
}
#zb-modal-body input,
#zb-modal-body select,
#zb-modal-body textarea {
  width: 100%; background: #0E0E0E; border: 1px solid rgba(255,255,255,0.1);
  color: #F5F0E8; padding: 12px 16px; font-size: 13px;
  font-family: 'Montserrat', sans-serif; font-weight: 300;
  transition: border-color 0.3s; outline: none;
}
#zb-modal-body input:focus,
#zb-modal-body select:focus,
#zb-modal-body textarea:focus { border-color: rgba(184,149,63,0.5); }
#zb-modal-body select option { background: #181818; }
#zb-modal-body textarea { height: 100px; resize: vertical; }
#zb-modal-submit {
  width: 100%; background: #B8953F; color: #0E0E0E;
  border: none; padding: 16px; font-size: 11px; letter-spacing: 2.5px;
  text-transform: uppercase; font-weight: 700; cursor: pointer;
  font-family: 'Montserrat', sans-serif; transition: background 0.3s;
  margin-top: 8px;
}
#zb-modal-submit:hover { background: #D4AF6A; }
#zb-modal-submit:disabled { background: #555; cursor: not-allowed; }
@media (max-width: 600px) {
  #zb-modal-body .zb-row { grid-template-columns: 1fr; }
  #zb-modal-header, #zb-modal-body { padding: 24px; }
}

/* ══ WHATSAPP FLOAT ══ */
#zb-wa-float {
  position: fixed; bottom: 28px; right: 28px; z-index: 9990;
  width: 56px; height: 56px; border-radius: 50%;
  background: #25D366; border: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 20px rgba(37,211,102,0.4);
  transition: transform 0.3s, box-shadow 0.3s;
}
#zb-wa-float:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 28px rgba(37,211,102,0.6);
}
#zb-wa-float svg { width: 30px; height: 30px; }
#zb-wa-tooltip {
  position: fixed; bottom: 96px; right: 28px; z-index: 9990;
  background: #181818; border: 1px solid rgba(184,149,63,0.2);
  color: #F5F0E8; font-size: 11px; font-family: 'Montserrat', sans-serif;
  padding: 8px 14px; white-space: nowrap; pointer-events: none;
  opacity: 0; transition: opacity 0.3s;
}
#zb-wa-float:hover + #zb-wa-tooltip { opacity: 1; }


/* ══ INDEX PAGE SECTIONS ══ */

.pg-section{padding:120px 60px}
.pg-gold-line{width:60px;height:1px;background:#B8953F;margin:24px 0}
.pg-tag{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:#B8953F;margin-bottom:16px;display:flex;align-items:center;gap:12px}
.pg-tag::before{content:'';width:24px;height:1px;background:#B8953F}
.pg-title{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,5vw,64px);font-weight:300;line-height:1.1;margin-bottom:16px}
.pg-sub{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#B8953F;opacity:.6;margin-bottom:20px}

.pg-btn-primary{background:#B8953F;color:#0E0E0E;padding:14px 36px;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;text-decoration:none;border:1px solid #B8953F;display:inline-block;transition:background .3s,color .3s;font-family:'Montserrat',sans-serif}
.pg-btn-primary:hover{background:transparent;color:#B8953F}
.pg-btn-outline{border:1px solid rgba(245,240,232,.35);color:#F5F0E8;padding:14px 36px;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:500;text-decoration:none;display:inline-block;transition:border-color .3s,color .3s;font-family:'Montserrat',sans-serif}
.pg-btn-outline:hover{border-color:#B8953F;color:#B8953F}
.pg-btn-dark{background:#0E0E0E;color:#F5F0E8;padding:14px 36px;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;text-decoration:none;display:inline-block;border:1px solid #0E0E0E;transition:background .3s,border-color .3s,color .3s;font-family:'Montserrat',sans-serif}
.pg-btn-dark:hover{background:#B8953F;border-color:#B8953F;color:#0E0E0E}
.pg-btn-gold{background:#B8953F;color:#0E0E0E;padding:16px 48px;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;border:none;cursor:pointer;transition:background .3s;width:100%;margin-top:12px;font-family:'Montserrat',sans-serif;display:block}
.pg-btn-gold:hover{background:#D4AF6A}

.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}
.reveal-delay-4{transition-delay:.4s}
.reveal-delay-5{transition-delay:.5s}

.pg-hero{height:100vh;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.pg-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#0a0a0a 0%,#1a1208 50%,#0E0E0E 100%)}
.pg-hero-img{position:absolute;inset:0}
.pg-hero-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.pg-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(14,14,14,.97) 0%,rgba(14,14,14,.8) 50%,rgba(14,14,14,.65) 100%)}
.pg-hero-line{position:absolute;left:60px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,#B8953F 30%,#B8953F 70%,transparent);opacity:.4}
.pg-hero-content{position:relative;z-index:2;padding:0 60px 100px 100px;max-width:820px}
.pg-hero-tag{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:#B8953F;margin-bottom:24px;display:flex;align-items:center;gap:12px;animation:pg-up .8s .3s ease forwards}
.pg-hero-tag::before{content:'';width:32px;height:1px;background:#B8953F}
.pg-hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(52px,7vw,96px);font-weight:300;line-height:1.05;margin-bottom:28px;animation:pg-up .8s .5s ease forwards}
.pg-hero-h1 em{font-style:italic;color:#B8953F}
.pg-hero-p{font-size:13px;line-height:2;color:rgba(245,240,232,.65);max-width:460px;margin-bottom:48px;font-weight:300;animation:pg-up .8s .7s ease forwards}
.pg-hero-btns{display:flex;gap:20px;animation:pg-up .8s .9s ease forwards}
.pg-hero-stats{position:absolute;right:60px;bottom:100px;z-index:2;display:flex;flex-direction:column;gap:32px;animation:pg-up 1s 1.1s ease forwards}
.pg-stat-item{text-align:right}
.pg-stat-num{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:300;color:#B8953F;line-height:1}
.pg-stat-label{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:rgba(245,240,232,.5);margin-top:4px}
@keyframes pg-up{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

.pg-services{background:#0E0E0E}
.pg-services-header{text-align:center;margin-bottom:80px}
.pg-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-bottom:60px}
.pg-service-card{background:#181818;padding:48px 36px;border:1px solid rgba(184,149,63,.08);transition:background .4s,transform .4s;position:relative;overflow:hidden}
.pg-service-card::before{content:'';position:absolute;bottom:0;left:0;height:2px;width:0;background:#B8953F;transition:width .4s}
.pg-service-card:hover{background:#222;transform:translateY(-4px)}
.pg-service-card:hover::before{width:100%}
.pg-service-icon{font-size:28px;margin-bottom:24px;display:block;color:#B8953F}
.pg-service-h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;margin-bottom:16px;color:#F5F0E8}
.pg-service-p{font-size:12px;line-height:1.9;color:#888;font-weight:300}
.pg-services-footer{text-align:center}

.pg-about{display:grid;grid-template-columns:1fr 1fr;background:#F5F0E8}
.pg-about-img{position:relative;overflow:hidden;min-height:600px}
.pg-about-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.pg-about-img:hover img{transform:scale(1.05)}
.pg-about-content{padding:100px 80px;display:flex;flex-direction:column;justify-content:center;background:#F5F0E8}
.pg-about-tag{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:#B8953F;margin-bottom:16px;display:flex;align-items:center;gap:12px}
.pg-about-tag::before{content:'';width:24px;height:1px;background:#B8953F}
.pg-about-title{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,4vw,56px);font-weight:300;line-height:1.1;color:#0E0E0E;margin-bottom:16px}
.pg-about-p{font-size:13px;line-height:2;color:#555;font-weight:300;margin-bottom:48px}
.pg-feature-list{list-style:none;margin-bottom:48px}
.pg-feature-item{display:flex;align-items:flex-start;gap:16px;padding:18px 0;border-bottom:1px solid rgba(0,0,0,.08)}
.pg-feature-item:last-child{border-bottom:none}
.pg-feature-icon{width:36px;height:36px;background:#0E0E0E;color:#B8953F;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px}
.pg-feature-h4{font-size:13px;font-weight:600;margin-bottom:4px;letter-spacing:1px;color:#0E0E0E}
.pg-feature-desc{font-size:11px;color:#777;margin:0}

.pg-form-wrap{display:grid;grid-template-columns:1fr 1fr;background:#181818}
.pg-form-side{padding:100px 60px;border-right:1px solid rgba(184,149,63,.1)}
.pg-form-desc-side{padding:100px 60px;display:flex;flex-direction:column;justify-content:center}
.pg-form-title{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:300;margin-bottom:16px;color:#F5F0E8}
.pg-form-desc-p{font-size:12px;line-height:2;color:#888;font-weight:300;margin-bottom:48px}
.pg-checklist{list-style:none}
.pg-checklist li{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:12px;color:rgba(245,240,232,.7);border-bottom:1px solid rgba(255,255,255,.05)}
.pg-checklist li::before{content:'✦';color:#B8953F;font-size:8px;flex-shrink:0}
.pg-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.pg-form-group{display:flex;flex-direction:column;gap:8px}
.pg-form-group label{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:#B8953F;font-family:'Montserrat',sans-serif}
.pg-form-group input,.pg-form-group select,.pg-form-group textarea{background:rgba(255,255,255,.04);border:1px solid rgba(184,149,63,.2);color:#F5F0E8;padding:14px 16px;font-size:12px;font-family:'Montserrat',sans-serif;outline:none;transition:border-color .3s;appearance:none;width:100%}
.pg-form-group input:focus,.pg-form-group select:focus,.pg-form-group textarea:focus{border-color:#B8953F}
.pg-form-group select option{background:#181818}
.pg-form-group textarea{resize:vertical;min-height:100px}
.pg-form-full{grid-column:1/-1}

.pg-why{background:#0E0E0E;content-visibility:auto;contain-intrinsic-size:0 700px}
.pg-why-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.pg-why-imgs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pg-why-imgs img{width:100%;object-fit:cover;transition:transform .5s}
.pg-why-imgs img:hover{transform:scale(1.03)}
.pg-why-imgs img:first-child{grid-column:1/-1;height:280px}
.pg-why-imgs img:nth-child(2),.pg-why-imgs img:nth-child(3){height:180px}
.pg-why-points{display:grid;gap:24px;margin-bottom:48px}
.pg-why-point{display:flex;gap:20px}
.pg-why-num{font-family:'Cormorant Garamond',serif;font-size:48px;font-weight:300;color:rgba(184,149,63,.2);line-height:1;flex-shrink:0;width:48px}
.pg-why-h4{font-size:13px;font-weight:600;letter-spacing:1px;margin-bottom:8px;color:#F5F0E8}
.pg-why-p{font-size:12px;line-height:1.9;color:#888;font-weight:300}

.pg-portfolio{background:#181818;padding:120px 0;content-visibility:auto;contain-intrinsic-size:0 600px}
.pg-portfolio-header{padding:0 60px;margin-bottom:60px;display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:24px}
.pg-portfolio-controls{display:flex;align-items:center;gap:12px}
.pg-portfolio-arrow{width:48px;height:48px;border:1px solid rgba(184,149,63,.4);background:none;color:#B8953F;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s,color .3s,border-color .3s;flex-shrink:0}
.pg-portfolio-arrow:hover{background:#B8953F;color:#0E0E0E;border-color:#B8953F}
.pg-portfolio-viewmore{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:#B8953F;text-decoration:none;border:1px solid rgba(184,149,63,.4);padding:14px 28px;transition:background .3s,color .3s,border-color .3s;font-family:'Montserrat',sans-serif;font-weight:500;white-space:nowrap}
.pg-portfolio-viewmore:hover{background:#B8953F;color:#0E0E0E;border-color:#B8953F}
.pg-portfolio-scroll{display:flex;gap:2px;overflow-x:auto;padding:0 60px;scrollbar-width:none;scroll-behavior:smooth}
.pg-portfolio-scroll::-webkit-scrollbar{display:none}
.pg-portfolio-item{flex-shrink:0;width:380px;height:500px;position:relative;overflow:hidden;cursor:pointer;text-decoration:none;display:block;color:inherit}
.pg-portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s;filter:brightness(.7)}
.pg-portfolio-item:hover img{transform:scale(1.06);filter:brightness(.5)}
.pg-portfolio-info{position:absolute;bottom:0;left:0;right:0;padding:40px 32px;background:linear-gradient(to top,rgba(14,14,14,.9),transparent);transform:translateY(20px);opacity:.7;transition:transform .4s,opacity .4s}
.pg-portfolio-item:hover .pg-portfolio-info{transform:translateY(0);opacity:1}
.pg-portfolio-cat{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:#B8953F;margin-bottom:8px}
.pg-portfolio-name{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;color:#F5F0E8}

.pg-stats{background:#B8953F;display:grid;grid-template-columns:repeat(4,1fr)}
.pg-stat-block{padding:60px 40px;text-align:center;border-right:1px solid rgba(14,14,14,.15)}
.pg-stat-block:last-child{border:none}
.pg-stat-block-num{font-family:'Cormorant Garamond',serif;font-size:56px;font-weight:300;color:#0E0E0E;line-height:1}
.pg-stat-block-unit{font-size:28px}
.pg-stat-block-lbl{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(14,14,14,.6);margin-top:8px;font-family:'Montserrat',sans-serif}

.pg-testi{background:#0E0E0E;content-visibility:auto;contain-intrinsic-size:0 600px}
.pg-testi-header{text-align:center;margin-bottom:80px}
.pg-testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.pg-testi-card{background:#181818;padding:48px 40px;border:1px solid rgba(184,149,63,.06);transition:border-color .3s}
.pg-testi-card:hover{border-color:rgba(184,149,63,.3)}
.pg-testi-stars{color:#B8953F;font-size:12px;letter-spacing:3px;margin-bottom:24px}
.pg-testi-text{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;line-height:1.7;color:#F5F0E8;margin-bottom:32px;font-weight:300}
.pg-testi-author{display:flex;align-items:center;gap:16px}
.pg-testi-avatar{width:48px;height:48px;border-radius:50%;border:2px solid #B8953F;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:16px;font-weight:600;color:#B8953F;background:#0E0E0E;letter-spacing:1px;flex-shrink:0}
.pg-testi-avatar--jt{background:#1a1208;color:#D4AF6A}
.pg-testi-avatar--sl{background:#0a1a1a;color:#6ABFD4}
.pg-testi-avatar--ar{background:#1a0a0a;color:#D46A6A}
.pg-testi-name{font-size:12px;font-weight:600;letter-spacing:1px;color:#F5F0E8}
.pg-testi-role{font-size:10px;color:#888;letter-spacing:1px;margin-top:2px}

.pg-cta{position:relative;padding:180px 60px;text-align:center;overflow:hidden;content-visibility:auto;contain-intrinsic-size:0 500px}
.pg-cta-bg{position:absolute;inset:0;background:url('/img/index/hotel-bg.webp') center/cover;opacity:.25}
.pg-cta-overlay{position:absolute;inset:0;background:rgba(14,14,14,.7)}
.pg-cta-inner{position:relative;z-index:2}
.pg-cta-tag{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:#B8953F;margin-bottom:20px}
.pg-cta-h2{font-family:'Cormorant Garamond',serif;font-size:clamp(42px,6vw,80px);font-weight:300;margin-bottom:24px;line-height:1.1}
.pg-cta-p{font-size:13px;color:rgba(245,240,232,.6);max-width:480px;margin:0 auto 48px;line-height:2;font-weight:300}
.pg-cta-btns{display:flex;gap:20px;justify-content:center}

@media(max-width:900px){
  .pg-section{padding:80px 24px}
  .pg-hero-content{padding:0 24px 80px}
  .pg-hero-stats{display:none}
  .pg-hero-line{display:none}
  .pg-services{padding:80px 24px}
  .pg-services-grid{grid-template-columns:1fr}
  .pg-about{grid-template-columns:1fr}
  .pg-about-content{padding:60px 32px}
  .pg-form-wrap{grid-template-columns:1fr}
  .pg-form-side,.pg-form-desc-side{padding:60px 32px}
  .pg-form-grid{grid-template-columns:1fr}
  .pg-why{padding:80px 24px}
  .pg-why-layout{grid-template-columns:1fr}
  .pg-portfolio{padding:80px 0}
  .pg-portfolio-scroll,.pg-portfolio-header{padding:0 24px}
  .pg-portfolio-header{flex-direction:column;align-items:flex-start}
  .pg-stats{grid-template-columns:1fr 1fr}
  .pg-testi{padding:80px 24px}
  .pg-testi-grid{grid-template-columns:1fr}
  .pg-cta{padding:100px 24px}
  .pg-cta-btns{flex-direction:column;align-items:center}
  .pg-why-imgs{display:none}
  .pg-why-layout{grid-template-columns:1fr}
}

/* ══ TOAST + SCROLL REVEAL ══ */

#zb-toast{position:fixed;top:28px;right:28px;z-index:9999;min-width:320px;max-width:440px;background:#0f1f14;border-left:3px solid #4a9e6a;color:#a3d4b5;border-radius:2px;padding:20px 52px 20px 24px;font-family:'Montserrat',sans-serif;font-size:13px;font-weight:400;line-height:1.6;box-shadow:0 12px 40px rgba(0,0,0,.55);opacity:0;transform:translateY(-16px);transition:opacity .35s ease,transform .35s ease;pointer-events:none}
#zb-toast.show{opacity:1;transform:translateY(0);pointer-events:auto}
#zb-toast.zb-success{background:#0f1f14;border-left-color:#4a9e6a;color:#a3d4b5}
#zb-toast.zb-error{background:#1f0e0e;border-left-color:#c0392b;color:#e8918a}
#zb-toast-close{position:absolute;top:12px;right:16px;background:none;border:none;cursor:pointer;font-size:18px;line-height:1;color:inherit;opacity:.5;transition:opacity .2s;padding:2px 4px}
#zb-toast-close:hover{opacity:1}
#zb-toast-title{font-weight:700;letter-spacing:1px;margin-bottom:5px;font-size:11px;text-transform:uppercase}
#zb-toast-body{font-size:13px;opacity:.9}
.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* ══ FOOTER ══ */

.ft-footer {
  background: #080808;
  border-top: 1px solid rgba(184,149,63,0.15);
  font-family: 'Montserrat', sans-serif;
}
.ft-top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
  gap: 60px;
  padding: 80px 60px 60px;
}
.ft-brand-logo {
  font-family: 'Cormorant Garamond', serif;
  font-size: 20px; font-weight: 600; letter-spacing: 6px;
  color: #B8953F; text-transform: uppercase; text-decoration: none;
  display: block; margin-bottom: 20px; line-height: 1;
}
.ft-brand-logo-light { color: #F5F0E8; font-weight: 300; }
.ft-brand-desc {
  font-size: 11px; line-height: 2;
  color: #888888; font-weight: 300; max-width: 240px; margin: 0 0 28px;
}
.ft-socials { display: flex; gap: 12px; }
.ft-social-link {
  width: 36px; height: 36px;
  border: 1px solid rgba(184,149,63,0.3);
  display: flex; align-items: center; justify-content: center;
  color: #B8953F; font-size: 11px; font-weight: 600;
  text-decoration: none; transition: all 0.3s;
  font-family: 'Montserrat', sans-serif;
}
.ft-social-link:hover { background: #B8953F; color: #0E0E0E; }
.ft-col-title {
  font-size: 10px; letter-spacing: 3px; text-transform: uppercase;
  color: #B8953F; margin: 0 0 24px; font-weight: 600;
  font-family: 'Montserrat', sans-serif;
}
.ft-col-list { list-style: none; }
.ft-col-list li { padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,0.04); }
.ft-col-list li:last-child { border-bottom: none; }
.ft-col-list a {
  font-size: 11px; color: #888888;
  text-decoration: none; transition: color 0.3s; font-weight: 300;
  font-family: 'Montserrat', sans-serif;
}
.ft-col-list a:hover { color: #B8953F; }
.ft-bottom {
  padding: 24px 60px;
  border-top: 1px solid rgba(255,255,255,0.05);
  display: flex; justify-content: space-between; align-items: center;
}
.ft-copy {
  font-size: 10px; color: rgba(255,255,255,0.2);
  letter-spacing: 1px; margin: 0;
  font-family: 'Montserrat', sans-serif;
}
.ft-legal { display: flex; gap: 24px; }
.ft-legal-link {
  font-size: 10px; color: rgba(255,255,255,0.2);
  text-decoration: none; letter-spacing: 1px; transition: color 0.3s;
  font-family: 'Montserrat', sans-serif;
}
.ft-legal-link:hover { color: #B8953F; }

@media (max-width: 900px) {
  .ft-top { grid-template-columns: 1fr 1fr; gap: 40px; padding: 60px 24px 40px; }
  .ft-bottom { flex-direction: column; gap: 16px; padding: 24px; text-align: center; }
  .ft-legal { flex-wrap: wrap; justify-content: center; }
}
/* ══ BLOG SECTION (homepage) ══ */
.pg-blog { padding: 120px 60px; background: #0E0E0E; }
.pg-blog-header { text-align: center; margin-bottom: 72px; }
.pg-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  max-width: 1300px;
  margin: 0 auto;
}
.pg-blog-card {
  display: flex; flex-direction: column;
  background: #111111;
  text-decoration: none; color: inherit;
  border: 1px solid rgba(184,149,63,0.08);
  transition: border-color 0.3s, transform 0.3s, opacity 0.8s ease;
  overflow: hidden;
  opacity: 1 !important;
  transform: none !important;
}
.pg-blog-card:hover {
  border-color: rgba(184,149,63,0.3);
  transform: translateY(-4px);
}
.pg-blog-card-img {
  width: 100%; aspect-ratio: 16/9; overflow: hidden;
}
.pg-blog-card-img img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform 0.5s ease;
}
.pg-blog-card:hover .pg-blog-card-img img { transform: scale(1.04); }
.pg-blog-card-body {
  padding: 32px 36px; flex: 1; display: flex; flex-direction: column; gap: 14px;
}
.pg-blog-cat {
  font-family: 'Montserrat', sans-serif;
  font-size: 10px; letter-spacing: 2.5px; text-transform: uppercase;
  color: #B8953F; font-weight: 600;
}
.pg-blog-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 22px; font-weight: 400; color: #F5F0E8;
  line-height: 1.35; margin: 0;
}
.pg-blog-excerpt {
  font-size: 12px; line-height: 1.9; color: rgba(245,240,232,0.55);
  font-weight: 300; flex: 1;
}
.pg-blog-read {
  font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase;
  color: #B8953F; font-weight: 500; margin-top: 8px;
}
.pg-blog-footer { text-align: center; margin-top: 60px; }

@media (max-width: 900px) {
  .pg-blog-grid { grid-template-columns: 1fr 1fr; }
  .pg-blog-grid .pg-blog-card:nth-child(3) { display: none; }
}
@media (max-width: 600px) {
  .pg-blog { padding: 80px 24px; }
  .pg-blog-grid { grid-template-columns: 1fr; }
  .pg-blog-grid .pg-blog-card:nth-child(3) { display: flex; }
  .pg-blog-card-body { padding: 24px; }
}