/* BrillStay partner site — shared. Brand colours taken from the product's own list.html. */
:root{
  color-scheme: light;
  --forest:#0A2E26; --forest-deep:#07211B; --teal:#0F6E56; --bright:#3DBEB3;
  --amber:#F99E22; --amber-soft:#FDF3E3;
  --ink:#12201C; --soft:#57685F; --faint:#83958C;
  --paper:#FFFFFF; --wash:#F2F6F4; --rule:#DDE5E1; --rule-dark:#1B4A3E;
  --danger:#B0392A; --danger-soft:#FBECE9;
}
*{box-sizing:border-box;}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"Source Serif 4", Georgia, serif;
  font-size:17px; line-height:1.66; -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,.ui{font-family:"Archivo",-apple-system,"Segoe UI",sans-serif;}
h1,h2,h3,h4{margin:0; text-wrap:balance; letter-spacing:-.022em; font-weight:700;}
p{margin:0;}
a{color:inherit;}
img{max-width:100%;}

.band{padding-block:clamp(48px,7vw,92px); padding-left:20px; padding-right:20px;}
.band.tight{padding-block:clamp(34px,5vw,56px);}
.inner{max-width:1080px; margin:0 auto;}
.narrow{max-width:700px;}
.kicker{font-family:"Archivo",sans-serif; font-size:11.5px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--teal); display:block;}
.kicker.on-dark{color:var(--bright);}
h1{font-size:clamp(32px,5.2vw,56px); line-height:1.06; font-weight:800;}
h2{font-size:clamp(25px,3.6vw,38px); line-height:1.14; max-width:21ch;}
h3{font-size:20px;}
.lede{font-size:19px; color:var(--soft); max-width:58ch; margin-top:16px;}
.wash{background:var(--wash);}
.dark{background:var(--forest); color:#E6F1EC;}
.dark h1,.dark h2,.dark h3{color:#fff;}
.dark .lede{color:#B2CEC4;}
.rule{height:1px; background:var(--rule); border:0; margin:0;}

/* masthead + footer */
.top{background:var(--forest-deep); color:#EAF3EF; padding:16px 20px; position:sticky; top:env(safe-area-inset-top,0px); z-index:20;}
.top .inner{display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;}
.mark{font-family:"Archivo",sans-serif; font-weight:800; font-size:19px; letter-spacing:-.02em; text-decoration:none;}
.mark span{color:var(--bright);}
.top nav{font-family:"Archivo",sans-serif; font-size:13.5px; display:flex; gap:20px; flex-wrap:wrap;}
.top nav a{color:#A9C6BC; text-decoration:none;}
.top nav a.on{color:#fff; border-bottom:2px solid var(--bright); padding-bottom:2px;}
footer{background:var(--forest-deep); color:#9FBEB4; font-family:"Archivo",sans-serif; font-size:13.5px; padding:26px 20px;}
footer .inner{display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap;}

.cta{display:flex; gap:12px; flex-wrap:wrap; margin-top:28px; align-items:center;}
/* ⚑ BUILD 582. 13px of padding made this 38px tall, and it is the one thing on the page a hotel
   owner is meant to press — on a phone, probably standing at his own front desk. A 44px target is
   the floor for a thumb; this is the button the whole site exists for. */
.btn{font-family:"Archivo",sans-serif; font-weight:700; font-size:15px; text-decoration:none;
  padding:0 24px; min-height:48px; border-radius:4px; display:inline-flex;
  align-items:center; justify-content:center;}
.btn.go{background:var(--amber); color:#22160A;}
.btn.line{border:1px solid #33665A; color:#DCEBE5;}
.btn.linedark{border:1px solid var(--rule); color:var(--ink);}
.fine{font-family:"Archivo",sans-serif; font-size:13px; color:#8FB3A7;}
.fine.dk{color:var(--faint);}

/* ── the screen mock ────────────────────────────────────────────────────────
   A faithful redraw of the product's own screens, not a stock picture. Every
   number on them is a real number off a live BrillStay hotel.              */
.shot{border:1px solid var(--rule); background:var(--paper); border-radius:6px; overflow:hidden;
  box-shadow:0 18px 40px -28px rgba(10,46,38,.45); margin-top:26px;}
.shot .chrome{background:var(--forest-deep); color:#CFE4DC; padding:9px 14px;
  font-family:"Archivo",sans-serif; font-size:12px; display:flex; gap:9px; align-items:center;}
.shot .dot{width:9px; height:9px; border-radius:50%; background:#2D5B4F;}
.shot .body{padding:16px; font-family:"Archivo",sans-serif; font-size:14px; overflow-x:auto;}
.cap{font-size:15.5px; color:var(--soft); margin-top:12px; max-width:62ch;}
.dark .cap{color:#A9C6BC;}

.tiles{display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px;}
.tile{border:1px solid var(--rule); border-radius:5px; padding:11px 13px; background:var(--paper);}
.tile .k{font-size:9.5px; letter-spacing:.11em; text-transform:uppercase; color:var(--faint); font-weight:700;}
.tile .v{font-size:22px; font-weight:800; letter-spacing:-.02em; font-variant-numeric:tabular-nums; margin-top:2px;}
.tile .d{font-size:11.5px; color:var(--soft);}
.tile.hi{background:var(--teal); border-color:var(--teal); color:#fff;}
.tile.hi .k{color:#9FD9C8;} .tile.hi .d{color:#BFE6D9;}
.tile.warn .v{color:var(--danger);}

.note{border-radius:5px; padding:12px 14px; font-size:13px; line-height:1.6;}
.note.amber{background:var(--amber-soft); border-left:3px solid var(--amber); color:#6B4708;}
.note.green{background:#E6F4EF; border-left:3px solid var(--teal); color:#0B4B3B;}
.note.red{background:var(--danger-soft); border-left:3px solid var(--danger); color:#7E2418;}

.lines{border:1px solid var(--rule); border-radius:5px; overflow:hidden;}
.ln{display:flex; gap:12px; padding:9px 13px; border-bottom:1px solid var(--rule); align-items:baseline; font-size:13px; flex-wrap:wrap;}
.ln:last-child{border-bottom:0;}
.ln .a{flex:0 0 92px; color:var(--faint); font-size:11.5px;}
.ln .b{flex:0 0 130px; font-weight:700; font-variant-numeric:tabular-nums;}
.ln .c{flex:1 1 180px; color:var(--soft); font-size:12.5px;}
.pill{font-size:10px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; padding:2px 7px; border-radius:99px; white-space:nowrap;}
.pill.ok{background:#E2F2EC; color:var(--teal);}
.pill.wa{background:var(--amber-soft); color:#8A5B06;}
.pill.no{background:var(--danger-soft); color:var(--danger);}

/* phone mock for the guest page */
.phone{width:264px; border:1px solid var(--rule); border-radius:22px; overflow:hidden; background:var(--paper);
  box-shadow:0 20px 44px -26px rgba(10,46,38,.5); font-family:"Archivo",sans-serif;}
.phone .hd{background:var(--teal); color:#fff; padding:16px 16px 18px;}
.phone .bd{padding:14px; display:flex; flex-direction:column; gap:9px;}

/* generic grids */
.two{display:grid; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:clamp(24px,4vw,48px); align-items:start;}
.three{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:28px 36px; margin-top:34px;}
.pt b{font-family:"Archivo",sans-serif; display:block; font-size:16.5px; font-weight:700; margin-bottom:5px;}
.pt p{font-size:16px; color:var(--soft); line-height:1.58;}
.dark .pt p{color:#AFCBC1;} .dark .pt b{color:#fff;}

/* tariff board table */
.board{margin-top:34px; border:1px solid var(--ink); background:var(--paper); overflow-x:auto;}
table{border-collapse:collapse; width:100%; min-width:580px; font-variant-numeric:tabular-nums;}
caption{caption-side:top; text-align:left; font-family:"Archivo",sans-serif; font-size:12px;
  letter-spacing:.14em; text-transform:uppercase; padding:16px 22px 0; color:var(--faint);}
th{font-family:"Archivo",sans-serif; font-size:11.5px; letter-spacing:.11em; text-transform:uppercase;
  color:var(--soft); font-weight:600; text-align:right; padding:16px 22px 12px; border-bottom:1px solid var(--ink);}
th:first-child{text-align:left;}
td{padding:14px 22px; text-align:right; border-bottom:1px solid var(--rule); font-size:17px;}
td:first-child{text-align:left; font-family:"Archivo",sans-serif; font-weight:600; font-size:15.5px;}
td.rate{font-family:"Archivo",sans-serif; font-weight:700; font-size:20px; letter-spacing:-.02em;}
td.was{color:var(--faint); font-size:15px;}
tbody tr:last-child td{border-bottom:0;}
tbody tr:nth-child(even){background:#FAFCFB;}
.board-note{font-family:"Archivo",sans-serif; font-size:13px; color:var(--soft);
  padding:14px 22px; border-top:1px solid var(--ink); background:var(--wash);}

/* page-to-page strip */
.next{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); border-top:1px solid var(--rule); border-left:1px solid var(--rule); margin-top:8px;}
.next a{display:block; padding:22px 20px; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); text-decoration:none;}
.next a .k{font-family:"Archivo",sans-serif; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--faint);}
.next a .t{font-family:"Archivo",sans-serif; font-weight:700; font-size:17px; margin-top:5px; display:block;}
.next a:hover{background:var(--wash);}

@media (max-width:620px){
  .ln .a{flex-basis:70px;} .ln .b{flex-basis:110px;}
  .shot .body{padding:12px;}
}

/* ── added after looking at how the Indian PMS vendors actually sell ──────────
   A hotel owner in this market rings a number before he fills a form. Every
   competitor puts a phone number in the header, a WhatsApp button on the glass
   and a brochure he can forward to whoever signs the cheque. Those are not
   decoration; they are the funnel.                                          */
.top .call{font-family:"Archivo",sans-serif; font-size:13.5px; color:#CFE4DC; text-decoration:none; white-space:nowrap;}
.top .call b{color:#fff; font-weight:700;}
/* ⚑ BUILD 582. The header's own "Start free trial" measured 38px — the same fault as .btn, in a
   second place, and this is the one a phone shows first. A thumb needs 44. */
.top .tbtn{font-family:"Archivo",sans-serif; font-size:13px; font-weight:700; background:var(--amber);
  color:#22160A; padding:0 15px; min-height:44px; border-radius:4px; text-decoration:none;
  white-space:nowrap; display:inline-flex; align-items:center; justify-content:center;}
.top .tbtn.ghost{background:transparent; border:1px solid #33665A; color:#DCEBE5;}

.wa{position:fixed; right:16px; bottom:calc(16px + env(safe-area-inset-bottom,0px)); z-index:40;
  display:flex; align-items:center; gap:9px; background:#128C7E; color:#fff; text-decoration:none;
  font-family:"Archivo",sans-serif; font-weight:700; font-size:14px; padding:12px 17px; border-radius:99px;
  box-shadow:0 10px 26px -10px rgba(0,0,0,.45);}
.wa svg{width:19px; height:19px; fill:#fff;}

.trust{display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:0;
  border-top:1px solid var(--rule); border-left:1px solid var(--rule); margin-top:36px;}
.trust div{border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); padding:18px 20px;}
.trust b{font-family:"Archivo",sans-serif; display:block; font-size:14.5px; font-weight:700;}
.trust span{font-size:14.5px; color:var(--soft);}

.bigfoot{background:var(--forest-deep); color:#9FBEB4; padding:44px 20px 20px;}
.bigfoot .cols{display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:26px 32px;}
.bigfoot h4{font-family:"Archivo",sans-serif; color:#fff; font-size:12px; letter-spacing:.14em;
  text-transform:uppercase; margin-bottom:11px; font-weight:700;}
.bigfoot a{display:block; color:#9FBEB4; text-decoration:none; font-family:"Archivo",sans-serif;
  font-size:14px; padding:4px 0;}
.bigfoot a:hover{color:#fff;}
.bigfoot .tags{margin-top:34px; padding-top:18px; border-top:1px solid var(--rule-dark);
  font-family:"Archivo",sans-serif; font-size:12.5px; line-height:2; color:#6F8C83;}
.bigfoot .tags b{color:#BBD6CC; font-weight:600;}
.bigfoot .base{margin-top:18px; padding-top:16px; border-top:1px solid var(--rule-dark);
  font-family:"Archivo",sans-serif; font-size:13px; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap;}

.modrow{display:grid; grid-template-columns:200px 1fr; gap:20px; padding:18px 0; border-bottom:1px solid var(--rule); align-items:start;}
.modrow b{font-family:"Archivo",sans-serif; font-size:16.5px; font-weight:700;}
.modrow p{color:var(--soft); font-size:16px;}
@media (max-width:620px){ .modrow{grid-template-columns:1fr; gap:4px;} }

/* ⚑ The wordmark, taken from the product's own mark-1024.svg rather than guessed:
   "Brill" is #3DBEB3 and "Stay" is #F99E22. The first draft of this site had them
   the wrong way round and the wrong turquoise — and a logo that does not match is
   the first thing a buyer notices and the last thing he forgets. */
.mark .b{color:#3DBEB3;}
.mark .s{color:#F99E22;}

/* Founder section. ⚑ `.fill` marks a fact only he can supply — it is deliberately
   loud, so a placeholder can never reach a live page by accident. */
.fill{background:#FFF3C4; color:#6B4708; padding:1px 7px; border-radius:3px;
  font-family:"Archivo",sans-serif; font-size:.86em; font-weight:600; white-space:nowrap;}
.founder{display:grid; grid-template-columns:200px 1fr; gap:clamp(24px,4vw,44px); align-items:start; margin-top:30px;}
.pfp{width:200px; height:200px; border-radius:4px; background:linear-gradient(140deg,#0F6E56,#0A2E26);
  display:grid; place-items:center; color:#3DBEB3; font-family:"Archivo",sans-serif; font-weight:800; font-size:46px; letter-spacing:-.03em;}
.pfp span{display:block; text-align:center;}
.pull{border-left:3px solid var(--amber); padding:4px 0 4px 22px; margin:26px 0;
  font-size:21px; line-height:1.55; font-style:italic; color:var(--ink); max-width:44ch;}
.pull cite{display:block; font-style:normal; font-family:"Archivo",sans-serif; font-size:13px;
  color:var(--faint); margin-top:10px; letter-spacing:.02em;}
@media (max-width:620px){ .founder{grid-template-columns:1fr;} .pfp{width:130px;height:130px;font-size:34px;} }
