﻿/* site.css — Rahgvik Holistics shared styles */

/* RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;color:#1a1208;background:#fff;line-height:1.7;font-size:16px;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
:focus-visible{outline:3px solid #c8650a;outline-offset:3px;border-radius:3px}

/* DESIGN TOKENS */
:root{
  --g:#c8650a;--gd:#a85208;--gl:#fff8f0;--gb:#fdd9a8;
  --ink:#1a1208;--i2:#3d2e1a;--i3:#7a6652;
  --bd:#edddd0;--sf:#fdf7f0;--warm:#fdf4ec;
  --sage:#4a7c59;--sage-l:#eef6f0;
  --hero:#0d1f1a;
  --md:0 8px 32px rgba(180,100,20,.10);
  --lg:0 20px 60px rgba(0,0,0,.11);
  --r:16px;--W:1080px;
}

/* LAYOUT */
.W{max-width:var(--W);margin:0 auto;padding:0 28px}

/* TYPOGRAPHY */
.eyebrow{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--g);margin-bottom:12px}
.eyebrow::before{content:'✦ ';font-size:9px;vertical-align:middle;opacity:.7}
h2.disp{font-family:'Playfair Display',serif;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--ink);line-height:1.15;margin-bottom:16px}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:15px;padding:13px 28px;border-radius:50px;transition:.2s;white-space:nowrap;text-decoration:none;cursor:pointer;border:none}
.bg{background:var(--g);color:#fff;box-shadow:0 4px 18px rgba(200,101,10,.28)}
.bg:hover{background:var(--gd);transform:translateY(-2px)}
.bo{background:transparent;color:var(--g);border:2px solid var(--g)}
.bo:hover{background:var(--gl);transform:translateY(-1px)}

/* TOPBAR */
.topbar{background:var(--hero);color:#9ca3af;font-size:12.5px;padding:9px 28px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.topbar a{color:#fdd9a8;font-weight:700}
.topbar a:hover{color:#fff}

/* NAV */
.nav{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--bd)}
.nav-in{padding:0 5%;display:flex;align-items:center;justify-content:space-between;height:76px}
.nav-brand{display:flex;flex-direction:row;align-items:center;text-decoration:none;gap:10px}
.nav-brand img{height:52px;width:auto;display:block;filter:brightness(0)}
.nav-brand-name{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#000;line-height:1.2;text-align:left}
.nl{display:flex;align-items:center;list-style:none}
.nl>li{position:relative}
.nl>li>a{display:flex;align-items:center;height:76px;padding:0 12px;font-size:18px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--i2);transition:color .2s}
.nl>li>a:hover,.nl>li>a.active{color:var(--g)}
.nl>li>a.hd::after{content:" ▾";font-size:10px;opacity:.55}
.ndrop{display:none;position:absolute;top:calc(100%+2px);left:0;background:#fff;border:1px solid var(--bd);border-radius:12px;box-shadow:var(--lg);min-width:200px;padding:8px 0;z-index:2000;list-style:none}
.nl>li:hover .ndrop{display:block}
.ndrop li a{display:block;padding:10px 20px;font-size:18px;white-space:nowrap;color:var(--i2);transition:.15s}
.ndrop li a:hover{background:var(--gl);color:var(--g)}
.ncta{background:var(--g)!important;color:#fff!important;border-radius:50px!important;padding:9px 20px!important;line-height:normal!important;font-size:12px!important;margin-left:8px;height:auto!important;align-self:center!important}
.ncta:hover{background:var(--gd)!important}
.hbg{display:none;background:none;border:none;cursor:pointer;padding:6px;border-radius:6px}
.hbg span{display:block;width:22px;height:2px;background:var(--i2);margin:5px 0;border-radius:2px}
@media(max-width:960px){
  .nl{display:none;flex-direction:column;align-items:flex-start;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--bd);padding:8px 0 20px;box-shadow:var(--md)}
  .nl.open{display:flex}
  .nl>li{width:100%}
  .nl>li>a{height:auto;padding:13px 24px}
  .ndrop{position:static;box-shadow:none;border:none;border-radius:0;padding-left:16px;display:none}
  .nl>li.open .ndrop{display:block}
  .hbg{display:block}
  .ncta{margin:12px 24px;display:inline-block!important}
}

/* FOOTER */
footer{background:#1a1208;color:rgba(255,255,255,.45);padding:56px 32px 32px}
.fb-logo{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.fb-logo img{height:36px;filter:invert(1) hue-rotate(180deg);mix-blend-mode:screen;flex-shrink:0}
.fb-logo-name{font-family:'Playfair Display',serif;font-size:13px;font-weight:700;color:#e8ede9;letter-spacing:.04em}
.fb p{font-size:12.5px;color:#6b8c7e;line-height:1.7;max-width:220px}
.fc h4{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#c9d7d0;margin-bottom:14px}
.fc ul{list-style:none}
.fc ul li{margin-bottom:9px}
.fc ul li a{font-size:13px;color:#6b8c7e;transition:color .2s}
.fc ul li a:hover{color:#F29557}
.fc-phone{display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.fc-phone span{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#4d6659}
.fc-phone a{font-family:'Playfair Display',serif;font-size:1.125rem;font-weight:700;color:#F29557;white-space:nowrap}
.fc-phone a:hover{color:#fbbf24}
.fbot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding-top:18px}
.fbot p,.fbot a{font-size:11.5px;color:#3d5549}
.fbot a:hover{color:#F29557}
.fbot-links{display:flex;gap:16px}
@media(max-width:900px){.fg{grid-template-columns:1fr 1fr;gap:28px}.fc-phone{align-items:flex-start}}
@media(max-width:480px){.fg{grid-template-columns:1fr}}

/* WHATSAPP */
.wa{position:fixed;bottom:26px;right:26px;z-index:9999;width:56px;height:56px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(37,211,102,.38);transition:.2s}
.wa:hover{transform:scale(1.1)}
.wa svg{width:30px;height:30px;fill:#fff}

/* MOBILE SHARED */
@media(max-width:600px){
  .topbar{font-size:11.5px;padding:8px 20px;flex-direction:column;text-align:center;gap:4px}
  .btn{font-size:14px;padding:12px 22px}
}
