/* revitalise-shared.css — shared design-system core extracted verbatim from production inline CSS. C1 pilot baseline: privacy-policy.html. No values changed. */
*{box-sizing:border-box;margin:0;padding:0;}
:root{--green:#264B35;--green-deep:#1A3325;--green-mid:#3A6B4E;
  --green-soft:#EAF1EC;--green-pale:#F3F8F5;
  --cream:#FAF8F4;--cream2:#F2EDE5;
  --dark:#141F18;--text:#2D3D32;--muted:#6A7D6F;}
body{font-family:'Jost',sans-serif;color:var(--text);background:var(--cream);}
nav{position:fixed;top:0;width:100%;z-index:100;padding:0 60px;height:72px;display:flex;justify-content:space-between;align-items:center;background:rgba(250,248,244,0.97);border-bottom:1px solid rgba(38,75,53,0.1);transition:box-shadow 0.3s;}
nav.scrolled{box-shadow:0 2px 30px rgba(0,0,0,0.08);}
.logo{font-family:'Cormorant Garamond',serif;font-size:1.3rem;letter-spacing:4px;text-transform:uppercase;color:var(--dark);cursor:pointer;text-decoration:none;}
.logo-sub{display:block;font-size:0.48rem;letter-spacing:3px;color:var(--muted);margin-top:2px;font-family:'Jost',sans-serif;}
.nav-links{display:flex;gap:24px;list-style:none;align-items:center;}
.nav-links a{font-size:0.65rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--text);text-decoration:none;cursor:pointer;padding-bottom:3px;border-bottom:1px solid transparent;transition:all 0.3s;}
.nav-links a:hover{color:var(--green);border-bottom-color:var(--green);}
.nav-cta{background:var(--green);color:var(--cream);border:none;padding:10px 22px;font-family:'Jost',sans-serif;font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:background 0.3s;text-decoration:none;display:inline-block;}
.nav-cta:hover{background:var(--green-mid);}
.has-drop{position:relative;}
.drop{display:none;position:absolute;top:100%;left:0;background:var(--dark);min-width:210px;padding:12px 0;z-index:200;}
.has-drop:hover .drop{display:block;}
.drop a{display:block;padding:9px 20px;font-size:0.62rem;letter-spacing:1.5px;text-transform:uppercase;color:rgba(250,248,244,0.6);text-decoration:none;transition:color 0.2s;}
.drop a:hover{color:var(--cream);}
.mob-burger{display:none;flex-direction:column;justify-content:space-between;width:26px;height:18px;background:none;border:none;cursor:pointer;padding:0;margin-left:12px;}
.mob-burger span{display:block;width:100%;height:2px;background:var(--dark);border-radius:2px;transition:all 0.3s;}
.mob-burger.open span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.mob-burger.open span:nth-child(2){opacity:0;}
.mob-burger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
.mob-drawer{position:fixed;top:0;right:-100%;width:min(320px,90vw);height:100%;background:var(--dark);z-index:200;display:flex;flex-direction:column;transition:right 0.35s cubic-bezier(0.4,0,0.2,1);box-shadow:-4px 0 40px rgba(0,0,0,0.3);}
.mob-drawer.open{right:0;}
.mob-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:190;}
.mob-overlay.open{display:block;}
.mob-drawer-top{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(250,248,244,0.1);}
.mob-drawer-logo{color:var(--cream);font-size:1rem;letter-spacing:3px;font-family:'Cormorant Garamond',serif;}
.mob-close{background:none;border:none;color:rgba(250,248,244,0.6);font-size:1.2rem;cursor:pointer;padding:4px;}
.mob-nav-links{list-style:none;padding:16px 0;flex:1;overflow-y:auto;}
.mob-nav-links li{border-bottom:1px solid rgba(250,248,244,0.06);}
.mob-nav-links a{display:block;padding:16px 24px;font-size:0.7rem;letter-spacing:2px;text-transform:uppercase;color:rgba(250,248,244,0.7);text-decoration:none;transition:all 0.2s;}
.mob-nav-links a:hover{color:var(--cream);background:rgba(250,248,244,0.05);}
.mob-drawer-cta{padding:20px 24px;border-top:1px solid rgba(250,248,244,0.1);}
.btn-p{display:inline-block;background:var(--green);color:var(--cream);padding:14px 32px;font-size:0.65rem;letter-spacing:2.5px;text-transform:uppercase;text-decoration:none;transition:background 0.3s;border:none;cursor:pointer;font-family:'Jost',sans-serif;}
.btn-p:hover{background:var(--green-mid);}
.page-hero{padding:130px 60px 60px;background:var(--green-deep);color:var(--cream);}
.page-hero .breadcrumb{font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;color:rgba(250,248,244,0.4);margin-bottom:20px;}
.page-hero .breadcrumb a{color:rgba(250,248,244,0.4);text-decoration:none;}
.page-hero .section-tag{font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;color:rgba(250,248,244,0.4);display:block;margin-bottom:14px;}
.page-hero h1{font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:300;line-height:1.15;margin-bottom:16px;}
.page-hero p{font-size:0.82rem;color:rgba(250,248,244,0.6);max-width:520px;line-height:2;}
footer{background:var(--dark);color:rgba(250,248,244,0.5);padding:60px 60px 40px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;}
.ft-brand{font-family:'Cormorant Garamond',serif;font-size:1.2rem;letter-spacing:4px;color:var(--cream);margin-bottom:12px;}
.ft-tag{font-size:0.72rem;line-height:1.9;max-width:260px;}
.ft-hdr{font-size:0.58rem;letter-spacing:3px;text-transform:uppercase;color:rgba(250,248,244,0.3);margin-bottom:16px;}
.ft-links{list-style:none;}
.ft-links li{margin-bottom:10px;}
.ft-links a{font-size:0.72rem;color:rgba(250,248,244,0.5);text-decoration:none;transition:color 0.2s;cursor:pointer;}
.ft-links a:hover{color:var(--cream);}
@media(max-width:900px){
  nav{padding:0 24px;}
  .nav-links,.nav-cta{display:none;}
  .drop{display:none!important;}
  .mob-burger{display:flex;}
  .page-hero{padding:110px 24px 50px;}
  .page-hero h1{font-size:2.2rem;}
  footer{grid-template-columns:1fr 1fr;padding:40px 24px;gap:32px;}
}
@media(max-width:480px){
  footer{grid-template-columns:1fr;}
}
@media(max-width:768px){
  .rvx-sticky{position:fixed;left:0;right:0;bottom:0;z-index:9500;display:flex;gap:8px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(250,248,244,0.98);border-top:1px solid rgba(38,75,53,0.12);box-shadow:0 -2px 16px rgba(0,0,0,0.08);}
  .rvx-sticky a{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-family:'Jost','Jost Fallback',sans-serif;font-size:0.72rem;letter-spacing:1.2px;text-transform:uppercase;border-radius:6px;padding:13px 10px;font-weight:500;}
  .rvx-sticky .rvx-book{flex:2.4;background:#264B35;color:#FAF8F4;}
  .rvx-sticky .rvx-call{flex:1;background:#EAF1EC;color:#264B35;border:1px solid rgba(38,75,53,0.18);}
  body{padding-bottom:66px;}
}
@media(min-width:769px){
  .rvx-sticky{display:none;}
}
