/* Public homepage (home.php). Ported from the concept design's fixed 1440px
   layout into a fluid one; the palette and type are the design's own. */
:root{--hm-ink:#0f2233;--hm-body:#3b4a5c;--hm-mute:#55657a;--hm-blue:#2451d6;--hm-blue-d:#1a3da8;--hm-navy:#15344a;--hm-line:#e3e8ef;--hm-bg:#f5f7fa;--hm-soft:#eef3ff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.home{margin:0;font-family:'Manrope',system-ui,sans-serif;background:var(--hm-bg);color:var(--hm-ink);-webkit-font-smoothing:antialiased}
.home a{color:var(--hm-blue);text-decoration:none}
.home h1,.home h2,.home h3,.home p{margin:0}
.home h2{font-size:46px;line-height:1.1;font-weight:800;letter-spacing:-.015em}
.home h3{font-size:24px;font-weight:800}
.hm-eyebrow{font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--hm-blue)}
.hm-eyebrow-light{color:#9fc0ff}
.hm-btn,.home a.hm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:700;color:#fff;background:var(--hm-blue);padding:12px 20px;border-radius:10px;border:1px solid var(--hm-blue);white-space:nowrap;cursor:pointer;font-family:inherit}
.hm-btn:hover,.home a.hm-btn:hover{background:var(--hm-blue-d);border-color:var(--hm-blue-d);color:#fff}
.hm-btn-ghost,.home a.hm-btn-ghost{background:#fff;color:var(--hm-ink);border-color:#cfd8e3}.hm-btn-ghost:hover,.home a.hm-btn-ghost:hover{background:#f5f7fa;color:var(--hm-ink);border-color:#b9c6d4}
.hm-btn-white,.home a.hm-btn-white{background:#fff;color:var(--hm-navy);border-color:#fff}.hm-btn-white:hover,.home a.hm-btn-white:hover{background:#eef3ff;color:var(--hm-navy);border-color:#eef3ff}
.hm-btn-lg{font-size:17px;padding:16px 28px;border-radius:12px}
.hm-btn-block{width:100%}

/* nav */
.hm-nav{height:72px;padding:0 80px;display:flex;align-items:center;gap:28px;background:#fff;border-bottom:1px solid var(--hm-line);position:sticky;top:0;z-index:10}
.hm-brand,.home a.hm-brand{display:flex;align-items:center;gap:10px;color:var(--hm-ink);font-weight:800;font-size:20px}
.hm-mark{width:32px;height:32px;border-radius:8px;background:var(--hm-blue);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:18px;font-weight:800}
.hm-links{display:flex;gap:28px;flex-grow:1;font-size:15px;font-weight:600}.home .hm-links a{color:var(--hm-body)}.hm-links a:hover{color:var(--hm-ink)}
.hm-private{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--hm-mute);font-weight:600}
.home a.hm-signin{font-size:15px;font-weight:700;color:var(--hm-ink);padding:12px 8px}

/* hero */
.hm-hero{padding:96px 80px 104px;display:flex;gap:72px;align-items:center;background:#fff}
.hm-hero-copy{flex:1 1 0;display:flex;flex-direction:column;gap:28px}
.hm-hero h1{font-size:52px;line-height:1.08;font-weight:800;letter-spacing:-.02em}
.hm-hero-copy>p{font-size:20px;line-height:1.55;color:var(--hm-body);max-width:560px}
.hm-cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.hm-ticks{display:flex;gap:22px;font-size:14px;color:var(--hm-mute);font-weight:600;flex-wrap:wrap}
.hm-ticks span{display:flex;align-items:center;gap:8px}.hm-ticks svg{color:var(--hm-blue)}
.hm-preview{width:560px;flex-shrink:0;padding:28px;background:#eef3fb;border-radius:24px;display:flex;flex-direction:column;gap:16px}
.hm-preview-head{display:flex;align-items:center;justify-content:space-between}
.hm-preview-head span{font-size:13px;font-weight:800;color:var(--hm-navy);letter-spacing:.06em}.hm-preview-head small{font-size:12px;font-weight:700;color:var(--hm-mute)}
.hm-chips{display:flex;gap:8px;flex-wrap:wrap}
.hm-chips span{font-size:13px;font-weight:600;color:var(--hm-body);background:#fff;border:1px solid #d7e0ea;padding:6px 13px;border-radius:999px}
.hm-chips span.on{color:#fff;background:var(--hm-navy);border-color:var(--hm-navy);font-weight:700}
.hm-card{background:#fff;border-radius:16px;border:1px solid #dbe3ec;padding:22px;display:flex;flex-direction:column;gap:14px}
.hm-card-top{display:flex;gap:14px;align-items:center}
.hm-card-top>div{display:flex;flex-direction:column;gap:2px;flex-grow:1;min-width:0}
.hm-card-top b{font-size:17px;font-weight:800}.hm-card-top small{font-size:13px;color:var(--hm-mute)}
.hm-logo{width:44px;height:44px;border-radius:10px;background:#e7ecf3;color:var(--hm-navy);font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.hm-tag{font-size:12px;font-weight:700;color:var(--hm-mute);background:#f1f4f8;padding:5px 10px;border-radius:6px;white-space:nowrap}
.hm-card>p{font-size:15px;color:var(--hm-body);line-height:1.5}
.hm-signal{display:flex;gap:10px;align-items:center;background:var(--hm-soft);border-radius:10px;padding:12px 14px;font-size:13px;font-weight:800;color:var(--hm-blue-d);letter-spacing:.06em}
.hm-signal-ico{width:28px;height:28px;border-radius:50%;background:var(--hm-blue);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.hm-card-actions{display:flex;gap:10px}.hm-card-actions .hm-btn{font-size:14px;padding:11px 16px}.hm-card-actions .hm-btn:first-child{flex-grow:1}
.hm-rep{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;border:1px solid #dbe3ec;padding:14px 18px;font-size:14px;color:var(--hm-body);line-height:1.45}
.hm-rep b{color:var(--hm-ink)}
.hm-avatar{width:36px;height:36px;border-radius:50%;background:#dfe8fb;color:var(--hm-blue-d);font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.hm-avatar-lg{width:48px;height:48px;font-size:15px}

/* invited band */
.hm-band{padding:28px 80px;background:var(--hm-navy);display:flex;align-items:center;gap:24px}
.hm-band>div{flex-grow:1;display:flex;flex-direction:column;gap:4px}
.hm-band b{font-size:18px;font-weight:800;color:#fff}.hm-band span{font-size:15px;color:#c9d6e4}

/* sections */
.hm-section{padding:112px 80px;display:flex;flex-direction:column;gap:56px}
.hm-white{background:#fff;padding:104px 80px;gap:48px}
.hm-head{display:flex;flex-direction:column;gap:14px;max-width:760px}
.hm-head-split{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:40px;max-width:none}
.hm-head-split>div{display:flex;flex-direction:column;gap:14px;max-width:700px}
.hm-head-split>p{font-size:16px;line-height:1.6;color:var(--hm-mute);max-width:420px}
.hm-center{align-items:center;text-align:center;max-width:720px;margin:0 auto}
.hm-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.hm-grid2{flex-grow:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.hm-tile{background:#fff;border:1px solid var(--hm-line);border-radius:20px;padding:36px;display:flex;flex-direction:column;gap:16px}
.hm-tile p{font-size:16px;line-height:1.6;color:var(--hm-body)}
.hm-tile-live{background:var(--hm-soft);border-color:var(--hm-soft)}
.hm-tile-top{display:flex;justify-content:space-between;align-items:center}
.hm-tile-live h3,.hm-white .hm-tile h3{font-size:26px}
.hm-white .hm-tile:not(.hm-tile-live){background:var(--hm-bg)}
.hm-badge{font-size:12px;font-weight:800;color:var(--hm-body);background:var(--hm-line);padding:5px 10px;border-radius:6px}
.hm-badge-live{color:#fff;background:var(--hm-blue-d)}
.hm-num{font-size:15px;font-weight:800;color:var(--hm-blue)}
.hm-tile-sm{border-radius:18px;padding:30px;gap:12px}.hm-tile-sm h3{font-size:20px}.hm-tile-sm p{font-size:15px}.hm-tile-sm svg{color:var(--hm-blue)}
.hm-why{flex-direction:row;gap:80px}
.hm-why-copy{width:440px;flex-shrink:0;display:flex;flex-direction:column;gap:14px}
.hm-why-copy p{font-size:17px;line-height:1.6;color:var(--hm-body)}

/* team */
.hm-team{background:var(--hm-navy);flex-direction:row;gap:80px;align-items:center;padding:104px 80px}
.hm-team-copy{flex:1 1 0;display:flex;flex-direction:column;gap:18px}
.hm-team h2{color:#fff}.hm-team-copy p{font-size:18px;line-height:1.6;color:#c9d6e4;max-width:560px}
.hm-team-card{width:480px;flex-shrink:0;background:#fff;border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:18px}
.hm-team-card>b{font-size:16px;font-weight:800}
.hm-person{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--hm-line)}
.hm-person>div{display:flex;flex-direction:column;gap:2px}.hm-person b{font-size:16px;font-weight:800}.hm-person small{font-size:14px;color:var(--hm-mute)}
.hm-duties{display:flex;flex-direction:column;gap:12px;font-size:15px;color:var(--hm-body);font-weight:600}.hm-duties span{display:flex;align-items:center;gap:10px}

/* pricing */
.hm-pricing{align-items:center;gap:40px}
.hm-price-card{width:560px;max-width:100%;background:#fff;border:1px solid var(--hm-line);border-radius:24px;padding:44px;display:flex;flex-direction:column;gap:24px}
.hm-price{display:flex;align-items:baseline;gap:8px}.hm-price span{font-size:60px;font-weight:800;letter-spacing:-.02em}.hm-price small{font-size:18px;color:var(--hm-mute);font-weight:600}
.hm-price-list{display:flex;flex-direction:column;gap:14px;font-size:16px;color:var(--hm-body)}.hm-price-list span{display:flex;align-items:center;gap:12px}.hm-price-list svg{color:var(--hm-blue);width:18px;height:18px;flex-shrink:0}

/* request */
.hm-request{margin:0 80px 112px;padding:64px;background:#fff;border:1px solid var(--hm-line);border-radius:28px;display:flex;gap:64px;align-items:center}
.hm-request-copy{flex:1 1 0;display:flex;flex-direction:column;gap:14px}
.hm-request h2{font-size:40px;line-height:1.12}.hm-request-copy p{font-size:17px;line-height:1.6;color:var(--hm-body)}
.hm-form{width:520px;max-width:100%;flex-shrink:0;display:flex;flex-direction:column;gap:16px}
.hm-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hm-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700}
.hm-form input{font:inherit;font-weight:500;font-size:16px;padding:13px 14px;border:1px solid #cfd8e3;border-radius:10px;background:#fff;color:var(--hm-ink);width:100%}
.hm-form input:focus{outline:2px solid var(--hm-blue);outline-offset:1px;border-color:var(--hm-blue)}
.hm-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.hm-small{font-size:13px;color:var(--hm-mute)}.hm-small a{font-weight:700}
.hm-error{background:#fdecec;color:#8a1f1f;border:1px solid #f3c2c2;border-radius:10px;padding:10px 14px;font-size:14px}
.hm-thanks{background:var(--hm-soft);border-radius:16px;padding:28px;gap:8px}.hm-thanks b{font-size:20px}.hm-thanks p{font-size:15px;color:var(--hm-body);line-height:1.6}

/* footer */
.hm-foot{padding:48px 80px;background:var(--hm-ink);display:flex;flex-direction:column;gap:32px}
.hm-foot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap}
.hm-foot-brand{display:flex;flex-direction:column;gap:12px;max-width:360px}
.hm-brand-light{color:#fff;font-size:18px}.hm-brand-light .hm-mark{width:28px;height:28px;border-radius:7px;font-size:15px}
.hm-foot-brand>span:last-child{font-size:14px;line-height:1.6;color:#a9b8c9}
.hm-foot-cols{display:flex;gap:64px;font-size:14px;flex-wrap:wrap}
.hm-foot-cols>div{display:flex;flex-direction:column;gap:10px}.hm-foot-cols b{color:#fff;font-weight:800}.hm-foot-cols a{color:#c9d6e4}.hm-foot-cols a:hover{color:#fff}
.hm-foot-line{font-size:13px;color:#8a9bb0;border-top:1px solid #243a50;padding-top:20px}

/* narrower screens */
@media(max-width:1180px){
  .hm-nav,.hm-hero,.hm-band,.hm-section,.hm-white,.hm-team,.hm-foot{padding-left:40px;padding-right:40px}
  .hm-request{margin:0 40px 80px;padding:40px}
  .hm-hero{gap:40px}.hm-hero h1{font-size:42px}.hm-preview{width:480px}
  .hm-why-copy{width:360px}.hm-team-card{width:420px}
}
@media(max-width:960px){
  .hm-links,.hm-private{display:none}
  .hm-hero{flex-direction:column;align-items:stretch;padding:56px 24px 64px}.hm-preview{width:100%}
  .home h2{font-size:36px}.hm-hero h1{font-size:36px}
  .hm-section,.hm-white,.hm-team{padding:72px 24px;gap:36px}.hm-nav,.hm-band,.hm-foot{padding-left:24px;padding-right:24px}
  .hm-grid3{grid-template-columns:1fr}.hm-grid2{grid-template-columns:1fr}
  .hm-why,.hm-team{flex-direction:column;gap:32px}.hm-why-copy,.hm-team-card{width:100%}
  .hm-head-split{flex-direction:column;align-items:flex-start}
  .hm-band{flex-direction:column;align-items:flex-start}
  .hm-request{flex-direction:column;align-items:stretch;margin:0 24px 64px;padding:28px;gap:24px}.hm-form{width:100%}
}
@media(max-width:600px){
  .hm-nav{gap:12px}.hm-nav .hm-btn{padding:10px 12px;font-size:14px}.hm-brand span:last-child{display:none}
  .hm-hero h1{font-size:32px}.home h2{font-size:30px}
  .hm-form-row{grid-template-columns:1fr}.hm-price span{font-size:48px}.hm-card-actions{flex-direction:column}
}
