/* ===================================================================
   SAMHITA GUEST ROOMS — shared stylesheet
   Palette drawn from the visiting card: temple maroon + old gold,
   set against a warm ivory ground, in the manner of a Kateel
   pilgrim-town print shop rather than a generic hotel site.
=================================================================== */

:root{
  --maroon-900:#3E0E1A;
  --maroon-700:#6E1E2E;
  --maroon-600:#8A2A3B;
  --gold-700:#9C7530;
  --gold-600:#B98A3D;
  --gold-300:#E4CB99;
  --gold-100:#F3E6C8;
  --cream-50:#FEFDFB;
  --ivory-100:#F8F1E4;
  --ink-900:#2F2317;
  --ink-600:#5B4E42;
  --line:#E3D6BC;

  --serif:"Cormorant Garamond", "Noto Serif", Georgia, serif;
  --sans:"Work Sans", "Noto Sans", Arial, sans-serif;

  --max:1120px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--cream-50);
  color:var(--ink-900);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{
  font-family:var(--serif);
  color:var(--maroon-700);
  margin:0 0 0.4em;
  font-weight:600;
  letter-spacing:0.01em;
}
h1{font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.08;}
h2{font-size:clamp(1.7rem,3.4vw,2.3rem);line-height:1.15;}
h3{font-size:1.3rem;color:var(--maroon-600);}
p{margin:0 0 1em;color:var(--ink-600);max-width:62ch;}
.container{max-width:var(--max);margin:0 auto;padding:0 28px;}

/* ---------- focus & motion ---------- */
a:focus-visible,button:focus-visible{
  outline:2px solid var(--maroon-600);
  outline-offset:3px;
}
@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important;scroll-behavior:auto !important;}
}

/* ---------- nav ---------- */
.site-header{
  position:sticky;top:0;z-index:40;
  background:var(--cream-50);
  border-bottom:1px solid var(--line);
}
.nav{
  max-width:var(--max);margin:0 auto;padding:16px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.brand{
  display:flex;align-items:center;gap:12px;
}
.brand .logo-icon{width:90px;height:auto;flex:none;}
.brand .logo-wordmark{height:80px;width:auto;flex:none;}
.nav-links{display:flex;align-items:center;gap:30px;}
.nav-links a{
  font-size:0.95rem;/*color:var(--ink-600);*/
  padding:4px 2px;border-bottom:1px solid transparent;
  transition:border-color .2s, color .2s;
}
.nav-links a:hover,.nav-links a.active{color:var(--maroon-700);border-color:var(--gold-600);}
.nav-cta{
  background:var(--maroon-700);color:var(--cream-50);
  padding:10px 20px;border-radius:2px;font-size:0.92rem;
  white-space:nowrap;
}
.nav-cta:hover{background:var(--maroon-900);}
.nav-toggle{display:none;}

@media (max-width:760px){
  .brand .logo-wordmark{height:45px;}
  .nav-links{
    position:fixed;inset:64px 0 auto 0;background:var(--cream-50);
    flex-direction:column;align-items:flex-start;gap:0;
    /*border-bottom:1px solid var(--line);*/
    max-height:0;overflow:hidden;transition:max-height .25s ease;
  }
  .nav-links.open{max-height:320px;}
  .nav-links a{width:100%;padding:14px 28px;border-bottom:1px solid var(--line);}
  .nav-links .nav-cta{margin:14px 28px;width:calc(100% - 56px);text-align:center;}
  .nav-toggle{
    display:block;background:none;border:1px solid var(--line);
    border-radius:2px;width:40px;height:36px;cursor:pointer;
  }
  .nav-toggle span{
    display:block;width:18px;height:2px;background:var(--maroon-700);
    margin:4px auto;
  }
}

/* ---------- hero ---------- */
.hero{
  position:relative;
  padding:76px 0 0;
  text-align:center;
  overflow:hidden;
}
.hero .kicker{
  font-size:0.82rem;letter-spacing:0.14em;color:var(--gold-700);
  margin-bottom:14px;
}
.hero h1{max-width:15ch;margin-left:auto;margin-right:auto;}
.hero p.lead{
  max-width:52ch;margin:18px auto 30px;font-size:1.08rem;
}
.btn-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:10px;}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:13px 26px;border-radius:2px;font-size:0.96rem;
  border:1px solid transparent;
}
.btn-primary{background:var(--maroon-700);color:var(--cream-50);}
.btn-primary:hover{background:var(--maroon-900);}
.btn-ghost{border-color:var(--maroon-600);color:var(--maroon-700);}
.btn-ghost:hover{background:var(--ivory-100);}

/* hero as an image-left / content-right split (deity photo + intro copy) */
.hero-split{text-align:left;padding-top:52px;}
.hero-split .split{align-items:center;}
.hero-split h1{margin-left:0;margin-right:0;/*max-width:12ch;*/}
.hero-split p.lead{margin-left:0;margin-right:0;}
.hero-split .btn-row{justify-content:flex-start;}
@media (max-width:820px){
  .hero-split{text-align:center;}
  .hero-split p.lead{margin-left:auto;margin-right:auto;}
  .hero-split .btn-row{justify-content:center;}
}

/* arch silhouette divider (gopuram tiers) */
.arch-divider{width:100%;height:auto;display:block;margin-top:54px;}

/* ---------- deity section ---------- */
.deity-section{background:var(--ivory-100);}
.deity-section .split{align-items:center;}
.deity-frame{
  position:relative;
  padding:14px;
  background:linear-gradient(160deg,var(--gold-600),var(--maroon-700));
}
.deity-frame .inner{
  border:1px solid rgba(244,234,216,0.5);
  overflow:hidden;
}
.deity-frame img{width:100%;height:auto;display:block;}
.deity-caption{
  margin-top:14px;text-align:center;font-family:var(--serif);
  font-style:italic;color:var(--maroon-600);font-size:1.02rem;
}

/* ---------- feature strip ---------- */
.strip{
  background:var(--maroon-900);
  color:var(--gold-100);
  padding:0;
}
.strip .container{
  display:grid;grid-template-columns:repeat(3,1fr);
}
.strip .item{
  padding:38px 26px;
  border-left:1px solid rgba(228,203,153,0.18);
  text-align:left;
}
.strip .item:first-child{border-left:none;}
.strip .item svg{width:26px;height:26px;color:var(--gold-300);margin-bottom:14px;}
.strip .item h3{color:var(--gold-100);font-size:1.12rem;margin-bottom:6px;}
.strip .item p{color:rgba(244,234,216,0.72);font-size:0.93rem;margin:0;}
@media (max-width:760px){
  .strip .container{grid-template-columns:1fr;}
  .strip .item{border-left:none;border-top:1px solid rgba(228,203,153,0.18);}
  .strip .item:first-child{border-top:none;}
}

/* ---------- generic section ---------- */
section{padding:76px 0;}
.section-alt{background:var(--ivory-100);}
.split{
  display:grid;grid-template-columns:1.05fr 0.95fr;gap:64px;align-items:center;
}
@media (max-width:820px){.split{grid-template-columns:1fr;gap:36px;}}
.eyebrow-free{color:var(--gold-700);font-size:0.85rem;margin-bottom:10px;}
.motif{
  border:1px solid var(--line);
  background:var(--cream-50);
  padding:36px;
  position:relative;
}
.motif svg{width:100%;height:auto;}

.divider-line{
  border:none;border-top:1px solid var(--line);
  margin:0;width:64px;
}
.divider-flourish{display:flex;align-items:center;gap:14px;margin:22px 0 26px;color:var(--gold-600);}
.divider-flourish .divider-line{flex:1;}
.divider-flourish svg{width:16px;height:16px;flex:none;}

/* ---------- page header (inner pages) ---------- */
.page-hero{
  padding:56px 0 44px;text-align:center;
  border-bottom:1px solid var(--line);
}
.page-hero .kicker{font-size:0.82rem;letter-spacing:0.14em;color:var(--gold-700);margin-bottom:10px;}
.page-hero p{margin:14px auto 0;max-width:52ch;}

/* ---------- lists / rows used across About & Services ---------- */
.row-list{list-style:none;margin:0;padding:0;}
.row-list li{
  display:flex;gap:18px;align-items:flex-start;
  padding:22px 0;border-top:1px solid var(--line);
}
.row-list li:last-child{border-bottom:1px solid var(--line);}
.row-list .num{
  font-family:var(--serif);color:var(--gold-600);
  font-size:1.15rem;flex:none;width:2ch;
}
.row-list h3{margin-bottom:4px;}
.row-list p{margin:0;font-size:0.96rem;}

/* ---------- room / service blocks ---------- */
.rooms-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.room-block{background:var(--cream-50);padding:34px;}
.room-block h3{margin-bottom:8px;}
.room-block .tag{
  display:inline-block;font-size:0.78rem;color:var(--maroon-700);
  border:1px solid var(--gold-600);padding:3px 10px;border-radius:2px;
  margin-bottom:14px;
}
@media (max-width:760px){.rooms-grid{grid-template-columns:1fr;}}

/* ---------- amenities inline list ---------- */
.amenities{
  display:flex;flex-wrap:wrap;gap:12px 28px;
  padding:0;list-style:none;margin:0;
}
.amenities li{
  display:flex;align-items:center;gap:9px;
  font-size:0.94rem;color:var(--ink-600);
}
.amenities svg{width:16px;height:16px;color:var(--gold-600);flex:none;}

/* ---------- quote / philosophy block ---------- */
.quote-block{
  text-align:center;max-width:720px;margin:0 auto;padding:70px 28px;
}
.quote-block .mark{font-family:var(--serif);font-size:2.6rem;color:var(--gold-600);line-height:1;}
.quote-block p.big{
  font-family:var(--serif);font-size:1.5rem;color:var(--maroon-700);
  font-style:italic;margin:14px 0 0;
}

/* ---------- contact page ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);}
.contact-panel{padding:46px;background:var(--cream-50);}
.contact-panel + .contact-panel{border-left:1px solid var(--line);background:var(--ivory-100);}
@media (max-width:820px){
  .contact-grid{grid-template-columns:1fr;}
  .contact-panel + .contact-panel{border-left:none;border-top:1px solid var(--line);}
}
.contact-row{display:flex;gap:16px;padding:18px 0;border-top:1px solid var(--line);}
.contact-row:first-child{border-top:none;}
.contact-row svg{width:20px;height:20px;color:var(--gold-600);flex:none;margin-top:2px;}
.contact-row a,.contact-row span{font-size:1rem;color:var(--ink-900);}
.contact-row a:hover{color:var(--maroon-700);}
.map-wrap{border:1px solid var(--line);margin-top:22px;overflow:hidden;}
.map-wrap iframe{width:100%;height:280px;border:0;display:block;}

/* ---------- footer ---------- */
.site-footer{background:var(--maroon-900);color:rgba(244,234,216,0.85);padding:52px 0 26px;}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;}
.site-footer h3{color:var(--gold-300);font-size:1rem;margin-bottom:14px;font-family:var(--sans);font-weight:600;letter-spacing:0.03em;}
.site-footer p,.site-footer a{color:rgba(244,234,216,0.75);font-size:0.94rem;}
.site-footer a:hover{color:var(--gold-300);}
.footer-brand{
  display:flex;align-items:center;gap:12px;
  font-family:var(--serif);font-size:1.3rem;color:var(--gold-100);margin-bottom:14px;
}
.footer-brand .logo-badge{
  background:var(--cream-50);padding:6px;border-radius:3px;flex:none;
}
.footer-brand .logo-badge img{width:32px;height:auto;display:block;}
.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;}
.footer-bottom{
  margin-top:40px;padding-top:22px;border-top:1px solid rgba(228,203,153,0.18);
  text-align:center;font-size:0.85rem;color:rgba(244,234,216,0.55);
  font-style:italic;font-family:var(--serif);
}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr;gap:28px;}}
