/* Shish Meze legal pages. Shares the Heritage house style: dark masthead,
   cream reading document, dark footer. Kept in one file so the three pages
   stay identical without triplicating the stylesheet. */

:root{
  --green-deep:#1E1D16;
  --green:#282720;
  --green-2:#22211A;
  --silk:#CAC4B0;
  --silk-soft:rgba(202,196,176,.52);
  --silk-dim:rgba(202,196,176,.32);
  --gold:#C2A15C;
  --gold-bright:#E0C284;
  --cream:#EFE9D8;
  --cream-deep:#E4DCC6;
  --ink:#242218;
  --ink-soft:rgba(36,34,24,.62);
  --bronze:#8A6A33;
  --line:rgba(202,196,176,.16);
  --line-gold:rgba(194,161,92,.35);
  --line-ink:rgba(36,34,24,.16);
  --serif:'Cormorant Garamond',Georgia,serif;
  --sans:'Jost',system-ui,sans-serif;
  --ease:cubic-bezier(.16,1,.3,1);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{background:var(--cream);color:var(--silk);font-family:var(--sans);font-weight:300;line-height:1.7;overflow-x:hidden}
img{max-width:100%;display:block}
::selection{background:var(--gold);color:var(--green-deep)}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

body::after{content:"";position:fixed;inset:-100%;z-index:999;pointer-events:none;opacity:.045;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E");
  animation:grain 9s steps(10) infinite}
@keyframes grain{0%,100%{transform:translate(0,0)}20%{transform:translate(2%,3%)}40%{transform:translate(3%,-1%)}60%{transform:translate(2%,-3%)}80%{transform:translate(1%,1%)}}

/* topbar. On these pages it is opaque from the first pixel: the masthead is
   dark, so there is no transparent-over-video state to preserve. */
.topbar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;
    gap:28px;padding:13px 48px;background:rgba(30,29,22,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.topbar .brand img{height:30px}
.topbar .links{display:flex;gap:40px}
.topbar .links a{color:var(--silk);text-decoration:none;font-size:12px;letter-spacing:.26em;text-transform:uppercase;position:relative}
.topbar .links a::after{content:"";position:absolute;left:0;bottom:-6px;width:100%;height:1px;background:var(--gold);
    transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}
.topbar .links a:hover::after{transform:scaleX(1);transform-origin:left}
.btn{position:relative;display:inline-block;border:1px solid var(--gold);color:var(--gold);padding:14px 36px;
     font-size:11px;letter-spacing:.28em;text-transform:uppercase;text-decoration:none;overflow:hidden;
     transition:color .4s,background .4s;cursor:pointer;background:none;font-family:var(--sans)}
.btn::before{content:"";position:absolute;top:0;left:-80%;width:60%;height:100%;transform:skewX(-20deg);
     background:linear-gradient(90deg,transparent,rgba(224,194,132,.35),transparent);transition:left .6s ease}
.btn:hover::before{left:120%}
.btn:hover,.btn:focus-visible{color:var(--green-deep);background:var(--gold)}

/* mobile nav */
.navtoggle{display:none;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;
    background:none;border:0;cursor:pointer;z-index:130;padding:10px}
.navtoggle span{display:block;height:1px;background:var(--gold);transition:transform .45s var(--ease),opacity .3s}
.navtoggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}
.navtoggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mnav{position:fixed;inset:0;z-index:120;background:var(--cream);display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:8px;opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility .5s}
.mnav.open{opacity:1;visibility:visible}
.mnav a{font-family:var(--serif);font-weight:300;font-size:clamp(30px,9vw,44px);color:var(--ink);text-decoration:none;
    padding:10px 20px;opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease),color .3s}
.mnav.open a{opacity:1;transform:none}
.mnav.open a:nth-child(2){transition-delay:.08s}.mnav.open a:nth-child(3){transition-delay:.16s}
.mnav.open a:nth-child(4){transition-delay:.24s}.mnav.open a:nth-child(5){transition-delay:.32s}
.mnav a:hover{color:var(--bronze)}
.mnav .mnav-crest{width:64px;margin-bottom:26px;opacity:0;transition:opacity .6s var(--ease)}
.mnav.open .mnav-crest{opacity:1}
.mnav .mnav-book{margin-top:30px;font-family:var(--sans);font-size:11px;letter-spacing:.28em;text-transform:uppercase;
    border:1px solid var(--bronze);color:var(--bronze);padding:16px 42px;opacity:0;transition-delay:.4s}
body.navlock{overflow:hidden}
body.navlock .topbar{z-index:130;background:transparent;border-color:transparent;backdrop-filter:none}
body.navlock .navtoggle span{background:var(--ink)}

/* masthead */
.masthead{background:var(--green-deep);color:var(--silk);text-align:center;padding:calc(84px + 13svh) 24px 11svh;
    border-bottom:1px solid var(--line-gold)}
.masthead .crest{width:clamp(56px,5vw,76px);margin:0 auto 26px;opacity:.9}
.masthead .eyebrow{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.44em;font-size:10.5px}
.masthead h1{font-family:var(--serif);font-weight:300;font-size:clamp(34px,5.2vw,58px);line-height:1.1;margin-top:20px;color:#E4E0D0}
.masthead h1 em{font-style:italic;color:var(--gold)}
.masthead .stamp{margin-top:26px;color:var(--silk-dim);text-transform:uppercase;letter-spacing:.3em;font-size:10px}

/* the document */
.doc{background:var(--cream);color:var(--ink);padding:11svh 24px 13svh}
.doc .sheet{max-width:760px;margin:0 auto}
.doc .lede{font-family:var(--serif);font-size:clamp(19px,2.1vw,24px);line-height:1.6;color:var(--ink);font-style:italic}
.doc .lede + .toc{margin-top:44px}

.toc{border-top:1px solid rgba(138,106,51,.35);border-bottom:1px solid rgba(138,106,51,.35);padding:22px 0;
    display:flex;flex-wrap:wrap;gap:10px 26px}
.toc span{color:var(--bronze);text-transform:uppercase;letter-spacing:.28em;font-size:9.5px;width:100%}
.doc .toc a{color:var(--ink-soft);text-decoration:none;font-size:13px;letter-spacing:.02em;border-bottom:1px solid transparent;transition:.3s}
.doc .toc a:hover{color:var(--bronze);border-bottom-color:var(--bronze)}

.doc section{margin-top:8svh}
.doc h2{font-family:var(--serif);font-weight:400;font-size:clamp(23px,2.6vw,31px);color:var(--ink);line-height:1.25}
.doc h2 .num{display:block;color:var(--bronze);font-family:var(--sans);font-weight:300;font-size:9.5px;
    letter-spacing:.34em;text-transform:uppercase;margin-bottom:12px}
.doc h3{font-family:var(--sans);font-weight:400;font-size:11px;letter-spacing:.26em;text-transform:uppercase;
    color:var(--bronze);margin-top:34px}
.doc p{margin-top:16px;font-size:15px;line-height:1.85;color:var(--ink-soft)}
.doc p strong{color:var(--ink);font-weight:400}
.doc ul{margin-top:16px;padding-left:0;list-style:none}
.doc li{position:relative;padding-left:24px;margin-top:11px;font-size:15px;line-height:1.8;color:var(--ink-soft)}
.doc li::before{content:"";position:absolute;left:2px;top:13px;width:9px;height:1px;background:var(--bronze);opacity:.7}
.doc li strong{color:var(--ink);font-weight:400}
.doc a{color:var(--bronze);text-decoration:none;border-bottom:1px solid rgba(138,106,51,.4);transition:.3s}
.doc a:hover{color:var(--ink);border-bottom-color:var(--ink)}

/* the plain-English aside that sits beside a clause */
.aside{margin-top:22px;border-left:1px solid rgba(138,106,51,.45);padding:4px 0 4px 22px;
    background:linear-gradient(to right,rgba(255,252,242,.6),rgba(255,252,242,0) 80%)}
.aside p{margin-top:0;font-family:var(--serif);font-style:italic;font-size:16.5px;color:rgba(36,34,24,.7)}

/* the contact plaque that closes every document */
.closer{margin-top:10svh;border:1px solid rgba(138,106,51,.45);border-radius:200px 200px 0 0;
    padding:52px 32px 34px;text-align:center;position:relative;
    background:linear-gradient(to bottom,rgba(255,252,242,.5),rgba(255,252,242,0) 92%)}
.closer::before{content:"";position:absolute;inset:7px;border:1px solid rgba(138,106,51,.18);pointer-events:none;
    border-radius:193px 193px 0 0}
.closer .eyebrow{display:block;color:var(--bronze);text-transform:uppercase;letter-spacing:.38em;font-size:9.5px}
.closer h2{margin-top:16px}
.closer p{max-width:420px;margin-left:auto;margin-right:auto}

/* footer, the same bar as the landing page */
.fin{background:var(--green-deep);padding:44px 48px}
.foot{display:flex;justify-content:space-between;align-items:center;gap:18px;max-width:1520px;margin:0 auto}
.foot img{height:20px;opacity:.9}
.foot .addr{color:var(--silk-dim);letter-spacing:.18em;text-transform:uppercase;font-size:9.5px}
.foot .legallinks{display:flex;gap:22px}
.foot .legallinks a{color:var(--silk-dim);text-decoration:none;text-transform:uppercase;letter-spacing:.2em;font-size:9.5px;transition:.3s}
.foot .legallinks a:hover{color:var(--gold)}
.foot .legallinks a[aria-current="page"]{color:var(--gold)}

@media (max-width:900px){
  .topbar{padding:12px 20px}
  .topbar .links,.topbar .btn{display:none}
  .navtoggle{display:flex}
  .masthead{padding:calc(72px + 9svh) 20px 8svh}
  .doc{padding:8svh 20px 10svh}
  .fin{padding:34px 20px}
  .foot{flex-direction:column;text-align:center}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  body::after{animation:none}
  *{transition:none!important}
}
