/* =====================================================================
   360 HOTEL SOLUTIONS — guest-crm.css
   Page-specific styles for the Guest CRM solution page.
   Reuses the global theme (tokens, header, footer, .flow-step, .why,
   .results, .final-cta). Responsive rules live at the bottom.
   ===================================================================== */

/* ===== GENERIC SUB-PAGE SECTION ===== */
.gc-section{padding:90px 0;background:var(--white);}
.gc-section.tint-cyan{background:var(--tint-cyan);}
.gc-section.tint-purple{background:var(--tint-purple);}

/* ===== HERO — guest profile card ===== */
.gc-hero .hero-sub{max-width:500px;}
/* feature pills as a 2x2 grid on desktop (mobile.css already makes them 2x2) */
.gc-hero .hero-pills{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:440px;}

.gc-visual{position:relative;display:flex;align-items:center;justify-content:center;min-height:480px;padding:0 30px;}
.gc-profile{width:100%;max-width:380px;background:#fff;border-radius:20px;border:1px solid var(--gray);box-shadow:0 44px 90px -32px rgba(2,15,77,0.45);overflow:hidden;position:relative;z-index:2;}
.gc-profile-top{background:var(--navy);padding:22px 22px 24px;color:#fff;}
.gc-pf-head{display:flex;align-items:center;gap:13px;}
.gc-pf-avatar{width:52px;height:52px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:800;color:#fff;flex-shrink:0;}
.gc-pf-name{font-size:16px;font-weight:800;}
.gc-pf-meta{font-size:11.5px;color:var(--muted-light);margin-top:3px;display:flex;align-items:center;gap:7px;}
.gc-pf-vip{font-size:9px;font-weight:800;color:var(--navy);background:var(--cyan);padding:2px 7px;border-radius:5px;letter-spacing:.04em;}
.gc-pf-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;}
.gc-pf-stat{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:10px;padding:10px 6px;text-align:center;}
.gc-pf-stat .v{font-size:15px;font-weight:800;color:#fff;}
.gc-pf-stat .l{font-size:8px;color:var(--muted-light);font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin-top:3px;}
.gc-profile-body{padding:16px 20px 20px;}
.gc-pf-row{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);padding:5px 0;}
.gc-pf-row svg{width:13px;height:13px;color:var(--blue);flex-shrink:0;}
.gc-pf-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 14px;}
.gc-pf-tag{font-size:10px;font-weight:700;padding:4px 9px;border-radius:6px;background:var(--tint-blue);color:var(--blue);}
.gc-pf-tag.g{background:var(--tint-green);color:#16a34a;}
.gc-pf-tag.p{background:var(--tint-purple);color:var(--purple);}
.gc-pf-campaign{background:var(--tint-green);border:1px dashed #16a34a;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:11px;}
.gc-pf-campaign .ico{width:28px;height:28px;border-radius:8px;background:rgba(22,163,74,0.14);color:#16a34a;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.gc-pf-campaign .ico svg{width:15px;height:15px;}
.gc-pf-campaign .t{font-size:11.5px;font-weight:800;color:#16a34a;}
.gc-pf-campaign .d{font-size:10px;color:var(--muted);margin-top:1px;}

/* floating stat badges over the profile — reuse global float-in keyframe */
.gc-badge{position:absolute;z-index:3;background:#fff;border-radius:14px;padding:10px 14px;box-shadow:0 16px 36px -12px rgba(2,15,77,0.26);display:flex;align-items:center;gap:9px;white-space:nowrap;opacity:0;animation:float-in .6s ease forwards;}
.gc-badge .i{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.gc-badge .i svg{width:15px;height:15px;}
.gc-badge .num{font-size:14px;font-weight:800;line-height:1.1;}
.gc-badge .lbl{font-size:10px;color:var(--muted);font-weight:600;margin-top:2px;}
.gc-badge.b1{top:10%;left:-8px;animation-delay:.5s;} .gc-badge.b1 .i{background:rgba(123,46,255,0.1);color:var(--purple);}
.gc-badge.b2{bottom:9%;right:-8px;animation-delay:.9s;} .gc-badge.b2 .i{background:rgba(37,211,102,0.12);color:#16a34a;}

/* ===== NAVY RELATIONSHIP BAND — guest lifecycle timeline (reuses .why) ===== */
.gc-timeline{display:flex;flex-direction:column;}
.gc-tl-item{display:flex;gap:14px;position:relative;padding-bottom:20px;}
.gc-tl-item:last-child{padding-bottom:0;}
.gc-tl-item:not(:last-child)::before{content:'';position:absolute;left:16px;top:36px;bottom:0;width:2px;background:rgba(255,255,255,0.14);}
.gc-tl-dot{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.14);display:flex;align-items:center;justify-content:center;color:var(--cyan);flex-shrink:0;position:relative;z-index:1;}
.gc-tl-dot svg{width:16px;height:16px;}
.gc-tl-body .t{font-size:13.5px;font-weight:700;color:#fff;}
.gc-tl-body .d{font-size:11.5px;color:var(--muted-light);margin-top:2px;line-height:1.45;}

/* ===== FEATURE GRID (reuses .flow-step card styling) ===== */
.gc-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}

/* ===== CAMPAIGNS — composer mock + campaign types ===== */
.gc-camp-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,60px);align-items:center;}
.gc-camp-text h3{font-size:clamp(22px,2.6vw,28px);line-height:1.25;margin-bottom:14px;}
.gc-camp-text p{color:var(--muted);font-size:15.5px;line-height:1.7;}
.gc-camp-text .fr-list{display:flex;flex-direction:column;gap:11px;margin-top:20px;}
.gc-camp-text .fr-list li{display:flex;align-items:flex-start;gap:11px;font-size:14.5px;color:var(--navy);font-weight:500;}
.gc-camp-text .fr-list .ck{width:22px;height:22px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.gc-camp-text .fr-list .ck svg{width:12px;height:12px;color:#fff;}

.gc-composer{background:#fff;border:1px solid var(--gray);border-radius:18px;box-shadow:0 40px 80px -32px rgba(2,15,77,0.4);overflow:hidden;}
.gc-comp-head{background:var(--bg);border-bottom:1px solid var(--gray);padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:8px;}
.gc-comp-title{font-size:13px;font-weight:700;color:var(--navy);}
.gc-comp-tabs{display:flex;gap:5px;}
.gc-comp-tab{font-size:9.5px;font-weight:700;padding:4px 9px;border-radius:6px;color:var(--muted);background:var(--gray);}
.gc-comp-tab.active{background:rgba(37,211,102,0.16);color:#16a34a;}
.gc-comp-body{padding:14px 16px 16px;}
.gc-comp-field{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--gray);font-size:12px;}
.gc-comp-field .l{color:var(--muted);}
.gc-comp-field .v{font-weight:700;color:var(--navy);text-align:right;}
.gc-comp-field .v .pill{display:inline-block;background:var(--tint-blue);color:var(--blue);font-size:10px;font-weight:700;padding:2px 8px;border-radius:6px;}
.gc-comp-msg{background:var(--tint-green);border:1px solid rgba(22,163,74,0.18);border-radius:10px;padding:12px 13px;margin-top:14px;font-size:12px;color:var(--navy);line-height:1.55;}
.gc-comp-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;}
.gc-comp-aud{font-size:11px;color:var(--muted);}
.gc-comp-aud b{color:var(--navy);}
.gc-comp-send{background:var(--grad);color:#fff;border-radius:100px;padding:9px 18px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:6px;}
.gc-comp-send svg{width:13px;height:13px;}

/* campaign type cards */
.gc-ctype-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px;}
.gc-ctype{background:#fff;border:1px solid var(--gray);border-radius:14px;padding:20px;display:flex;gap:13px;align-items:flex-start;transition:transform .2s,box-shadow .2s;}
.gc-ctype:hover{transform:translateY(-4px);box-shadow:0 20px 40px -18px rgba(2,15,77,0.16);}
.gc-ctype-icon{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.gc-ctype-icon svg{width:20px;height:20px;}
.gc-ctype-icon.c1{background:rgba(123,46,255,0.1);color:var(--purple);}
.gc-ctype-icon.c2{background:rgba(217,119,6,0.1);color:#D97706;}
.gc-ctype-icon.c3{background:rgba(14,99,255,0.1);color:var(--blue);}
.gc-ctype-icon.c4{background:rgba(28,207,255,0.14);color:#0e9fc9;}
.gc-ctype-icon.c5{background:rgba(37,211,102,0.12);color:#16a34a;}
.gc-ctype-icon.c6{background:rgba(219,39,119,0.1);color:#db2777;}
.gc-ctype h4{font-size:14.5px;margin-bottom:4px;}
.gc-ctype p{font-size:12.5px;color:var(--muted);line-height:1.5;}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media(max-width:920px){
  .gc-section{padding:56px 0;}
  .gc-visual{min-height:auto;padding:10px 0 0;}
  .gc-feature-grid{grid-template-columns:1fr 1fr;}
  .gc-camp-grid{grid-template-columns:1fr;gap:26px;}
  .gc-camp-text{order:1;}
  .gc-composer{order:2;}
  .gc-ctype-grid{grid-template-columns:1fr 1fr;}
  .gc-badge.b1{left:-2px;} .gc-badge.b2{right:-2px;}
}

@media(max-width:640px){
  .gc-feature-grid{grid-template-columns:1fr;}
  .gc-ctype-grid{grid-template-columns:1fr;}
  .gc-badge{display:none;}
}
