/* ===================================================================
   RADHIKA STUDIO — COMMON STYLES
   Shared across all inner pages: header/topbar, logo, menu overlay,
   enquiry modal, and footer. Keep this file identical on every page
   so the header + footer stay perfectly consistent site-wide.
=================================================================== */

:root{
  --ink:#1b1b1b;
  --paper:#f7f5f0;
  --accent:#0f7d8c;
  --gap:22px;
}

*{box-sizing:border-box;}

html,body{
  margin:0;
  padding:0;
  font-family:'Jost', sans-serif;
  background:var(--paper);
  color:var(--ink);
}

a{color:inherit;}

/* ===== TOP BAR (fixed, solid on inner pages) ===== */
.site-topbar{
  position:fixed;
  top:0; left:0; right:0;
  z-index:200;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: var(--gap) calc(var(--gap) + 4px);
  background:var(--paper);
  border-bottom:1px solid rgba(0,0,0,.06);
}

.menu-btn{
  display:flex;
  align-items:center;
  gap:14px;
  background:rgba(60,50,42,.85);
  border:0;
  color:#fff;
  letter-spacing:3px;
  font-size:14px;
  font-family:'Jost', sans-serif;
  font-weight:500;
  text-transform:uppercase;
  cursor:pointer;
  padding:14px 22px;
  transition:.3s;
}
.menu-btn:hover{ background:var(--ink); }
.menu-btn .bars{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.menu-btn .bars span{
  display:block;
  width:26px;
  height:1px;
  background:#fff;
}

.enquire-btn{
  display:flex;
  align-items:center;
  gap:12px;
  color:#fff;
  text-decoration:none;
  letter-spacing:3px;
  font-size:14px;
  font-family:'Jost', sans-serif;
  font-weight:500;
  text-transform:uppercase;
  background:rgba(60,50,42,.85);
  border:0;
  padding:14px 22px;
  transition:.3s;
  cursor:pointer;
}
.enquire-btn svg{width:16px;height:16px;flex:none;}
.enquire-btn:hover{ background:var(--accent); }

.menu-btn, .enquire-btn{ transition:transform .25s ease, background .3s ease; }
.menu-btn:hover, .enquire-btn:hover{ transform:translateY(-2px); }

@media (max-width: 767px){
  :root{--gap:12px;}
  .menu-btn span.label, .enquire-btn span.label{display:none;}
}

/* ===== PAGE LOGO (flows inline under the topbar on inner pages) ===== */
.page-logo{
  display:flex;
  align-items:center;
  color:var(--ink);
}
.page-logo .brush{
  position:relative;
  padding:18px 14px 18px 22px;
}
.page-logo .brush::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, transparent 6%, rgba(255,255,255,.92) 6%, rgba(255,255,255,.92) 94%, transparent 94%);
  clip-path:polygon(6% 0%, 100% 4%, 96% 100%, 0% 96%);
  z-index:-1;
}
.page-logo .name{
  font-family:'Cormorant Garamond', serif;
  font-size:40px;
  color:#1b1b1b;
  line-height:1;
}
.page-logo .name small{
  display:block;
  font-family:'Jost',sans-serif;
  font-size:11px;
  letter-spacing:6px;
  color:#1b1b1b;
  margin-top:4px;
}
.page-logo .studio-tag{
  writing-mode:vertical-rl;
  background:var(--accent);
  color:#fff;
  letter-spacing:4px;
  font-size:12px;
  padding:10px 6px;
  margin-left:2px;
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
}

@media (max-width:767px){
  .page-logo .name{font-size:28px;}
}

/* ===== MENU OVERLAY ===== */
.menu-overlay{
  position:fixed;
  inset:0;
  z-index:500;
  background:rgba(0,0,0,0);
  display:none;
  overflow-y:auto;
  transition:background .35s ease;
}
.menu-overlay.open{
  display:block;
  background:rgba(0,0,0,.45);
}
.menu-panel{
  position:absolute;
  top:0;
  right:0;
  height:100%;
  min-height:100vh;
  width:58%;
  background:#fff;
  box-shadow:-8px 0 30px rgba(0,0,0,.15);
  transform:translateX(100%);
  transition:transform .4s ease;
}
.menu-overlay.open .menu-panel{
  transform:translateX(0);
}
.menu-overlay .menu-close{
  position:absolute;
  top:28px;
  right:34px;
  background:none;
  border:0;
  font-size:34px;
  line-height:1;
  color:#333;
  cursor:pointer;
  z-index:2;
}
.menu-grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  min-height:100vh;
}
.menu-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:18px;
  text-decoration:none;
  color:#3a3a3a;
  background:var(--paper);
  border:1px solid rgba(0,0,0,.06);
  font-family:'Cormorant Garamond', serif;
  font-style:italic;
  font-size:26px;
  min-height:220px;
  transition:.25s;
}
.menu-item svg{width:52px; height:52px; stroke:#3a3a3a;}
.menu-item.active{ background:var(--accent); color:#fff; }
.menu-item.active svg{stroke:#fff;}
.menu-item:hover{background:var(--accent); color:#fff;}
.menu-item:hover svg{stroke:#fff;}

@media (max-width: 767px){
  .menu-panel{width:85%;}
  .menu-item{min-height:160px; font-size:20px;}
  .menu-item svg{width:38px; height:38px;}
}

/* ===== ENQUIRY MODAL ===== */
.enquiry-overlay{
  position:fixed;
  inset:0;
  z-index:1000;
  background:rgba(20,18,15,.55);
  backdrop-filter:blur(3px);
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  opacity:0;
  transition:opacity .3s ease;
}
.enquiry-overlay.open{
  display:flex;
  opacity:1;
}
.enquiry-card{
  position:relative;
  width:100%;
  max-width:560px;
  max-height:92vh;
  overflow-y:auto;
  background:var(--paper);
  border-radius:4px;
  box-shadow:0 30px 70px rgba(0,0,0,.35);
  padding:52px 46px 42px;
  transform:translateY(30px) scale(.97);
  opacity:0;
  transition:transform .35s ease, opacity .35s ease;
}
.enquiry-overlay.open .enquiry-card{
  transform:translateY(0) scale(1);
  opacity:1;
}
.enquiry-close{
  position:absolute;
  top:18px;
  right:20px;
  background:none;
  border:0;
  font-size:28px;
  line-height:1;
  color:#555;
  cursor:pointer;
  transition:.2s;
}
.enquiry-close:hover{color:var(--accent); transform:rotate(90deg);}
.enquiry-eyebrow{
  text-align:center;
  font-family:'Jost', sans-serif;
  letter-spacing:4px;
  font-size:12px;
  color:var(--accent);
  text-transform:uppercase;
  margin-bottom:8px;
}
.enquiry-title{
  text-align:center;
  font-family:'Cormorant Garamond', serif;
  font-weight:500;
  font-size:36px;
  color:var(--ink);
  margin:0 0 6px;
}
.enquiry-sub{
  text-align:center;
  font-family:'Jost', sans-serif;
  font-size:13px;
  color:#777;
  margin-bottom:34px;
}
.enquiry-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px 20px;
}
.enquiry-field{
  position:relative;
  grid-column:span 1;
}
.enquiry-field.full{grid-column:1 / -1;}
.enquiry-field input,
.enquiry-field select,
.enquiry-field textarea{
  width:100%;
  box-sizing:border-box;
  border:none;
  border-bottom:1px solid rgba(0,0,0,.25);
  background:transparent;
  font-family:'Jost', sans-serif;
  font-size:15px;
  color:var(--ink);
  padding:8px 2px 10px;
  outline:none;
  transition:border-color .25s;
  appearance:none;
}
.enquiry-field textarea{resize:none; min-height:70px;}
.enquiry-field input:focus,
.enquiry-field select:focus,
.enquiry-field textarea:focus{
  border-bottom-color:var(--accent);
}
.enquiry-field label{
  position:absolute;
  left:2px;
  top:8px;
  font-family:'Jost', sans-serif;
  font-size:15px;
  color:#888;
  letter-spacing:.3px;
  pointer-events:none;
  transition:.2s ease;
}
.enquiry-field input:focus + label,
.enquiry-field input:not(:placeholder-shown) + label,
.enquiry-field input.filled + label,
.enquiry-field select:focus + label,
.enquiry-field select.filled + label,
.enquiry-field textarea:focus + label,
.enquiry-field textarea:not(:placeholder-shown) + label{
  top:-14px;
  font-size:11px;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--accent);
}
.enquiry-field select{cursor:pointer;}
.enquiry-submit{
  grid-column:1 / -1;
  margin-top:10px;
  background:var(--ink);
  color:#fff;
  border:0;
  padding:16px;
  font-family:'Jost', sans-serif;
  letter-spacing:3px;
  font-size:13px;
  text-transform:uppercase;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  transition:background .3s;
}
.enquiry-submit:hover{background:var(--accent);}
.enquiry-note{
  grid-column:1 / -1;
  text-align:center;
  font-family:'Jost', sans-serif;
  font-size:12px;
  color:#999;
  margin-top:4px;
}
.enquiry-success{
  display:none;
  text-align:center;
  padding:30px 0 10px;
}
.enquiry-success.show{display:block;}
.enquiry-success i{font-size:44px; color:var(--accent); margin-bottom:16px;}
.enquiry-success h3{
  font-family:'Cormorant Garamond', serif;
  font-size:28px;
  color:var(--ink);
  margin:0 0 8px;
}
.enquiry-success p{
  font-family:'Jost', sans-serif;
  font-size:14px;
  color:#777;
}

@media (max-width:576px){
  .enquiry-card{padding:44px 26px 32px;}
  .enquiry-form{grid-template-columns:1fr;}
  .enquiry-field{grid-column:1 / -1;}
  .enquiry-title{font-size:28px;}
}

/* ===== FOOTER ===== */
.site-footer{
  position:relative;
  background:var(--paper);
  padding:50px var(--gap) 40px;
  border-top:1px solid rgba(0,0,0,.06);
}
.site-footer .footer-line{
  border-top:1px solid rgba(0,0,0,.15);
  max-width:1400px;
  margin:0 auto 24px;
}
.site-footer .footer-copy{
  text-align:center;
  font-family:'Jost', sans-serif;
  font-size:14px;
  color:#555;
}
.site-footer .footer-contact{
  max-width:1400px;
  margin:0 auto 28px;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px 26px;
  font-family:'Jost', sans-serif;
  font-size:13px;
  color:#555;
  letter-spacing:.3px;
}
.site-footer .footer-contact a{
  color:#555;
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:.2s;
}
.site-footer .footer-contact a:hover{
  color:var(--accent);
  border-bottom-color:var(--accent);
}
.site-footer .footer-social{
  position:absolute;
  right:calc(var(--gap) + 20px);
  top:8px;
  display:flex;
  gap:10px;
}
.site-footer .footer-social a{
  width:34px;
  height:34px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:15px;
  text-decoration:none;
}
.site-footer .footer-social a.ig1,
.site-footer .footer-social a.ig2{background:radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);}
.site-footer .footer-social a.fb{background:#3b5998;}
.site-footer .footer-social a.yt{background:#ff0000;}
.site-footer .footer-social a.pin{background:#e60023;}

@media (max-width:767px){
  .site-footer .footer-social{position:static; justify-content:center; margin-bottom:20px;}
}

/* ===== SHARED PAGE UTILITIES ===== */
.page-shell{
  padding-top:96px; /* clears the fixed topbar */
}

@media (max-width:767px){
  .page-shell{padding-top:82px;}
}

.reveal{
  opacity:0;
  transform:translateY(40px);
  transition:opacity .8s ease, transform .8s ease;
}
.reveal.in-view{
  opacity:1;
  transform:translateY(0);
}
@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1 !important; transform:none !important;}
}

/* ===== WHATSAPP FLOATING BUTTON (injected via common.js) ===== */
#whatsappFloat{
  position:fixed;
  right:22px;
  bottom:22px;
  width:58px;
  height:58px;
  background:#25D366;
  color:#fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:30px;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
  z-index:9999;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease;
  animation:whatsappPulse 2.4s infinite;
}
#whatsappFloat:hover{
  transform:scale(1.08);
  box-shadow:0 8px 22px rgba(0,0,0,.3);
  color:#fff;
}
@keyframes whatsappPulse{
  0%{ box-shadow:0 6px 18px rgba(0,0,0,.25), 0 0 0 0 rgba(37,211,102,.5); }
  70%{ box-shadow:0 6px 18px rgba(0,0,0,.25), 0 0 0 14px rgba(37,211,102,0); }
  100%{ box-shadow:0 6px 18px rgba(0,0,0,.25), 0 0 0 0 rgba(37,211,102,0); }
}
@media (max-width:767px){
  #whatsappFloat{
    width:50px;
    height:50px;
    font-size:26px;
    right:16px;
    bottom:16px;
  }
}
