/* CGP Fund — Fund Administrator Ledger Office */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline;-webkit-text-size-adjust:100%}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
ol,ul{list-style:none}
blockquote,q{quotes:none}
table{border-collapse:collapse;border-spacing:0}

:root{
  --ink:#26251F;
  --page:#F3EEE0;
  --ox:#7A2E2A;
  --rule:#8C7B5E;
  --cloth:#E6DEC9;
  --bronze:#8A6B3F;
  --navy:#2C3A4E;
}
*{box-sizing:border-box;}

body{
  font-family: Georgia, Palatino, "Palatino Linotype", "Book Antiqua", serif;
  font-size:16px;
  line-height:1.7;
  color:var(--ink);
  background:var(--page);
  margin:0;
  overflow-x:hidden;
}
a{color:var(--ink);text-decoration:none;}
img{max-width:100%;}
::selection{background:#7A2E2A;color:#F3EEE0;}
:focus-visible{outline:2px solid #7A2E2A;outline-offset:2px;}

.container{max-width:1200px;margin:0 auto;padding:0 24px;}

.noscript-hide{display:none;}
html.no-js .reveal,
html.no-js .reveal-target,
html.no-js .reveal-count,
html.no-js .reveal-fade{
  visibility:visible;
  opacity:1;
  transform:none;
}
.reveal{
  opacity:1;
  visibility:visible;
}

/* ============ RIBBON-BUNDLE NAV ============ */
.ribbonbundle{
  position:sticky;
  top:0;
  width:100%;
  background:var(--navy);
  color:#F3EEE0;
  z-index:60;
  border-bottom:1px solid var(--rule);
}
.ribbonbundle:after{
  content:"";
  display:block;
  height:3px;
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  background:var(--navy);
}
.ribbonbundle .navinner{
  max-width:1200px;
  margin:0 auto;
  padding:0 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:78px;
  gap:18px;
}
.brandlock{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}
.sealmark{
  width:46px;
  height:46px;
  border-radius:50%;
  background:var(--ox);
  border:1px solid #F3EEE0;
  box-shadow:0 0 0 4px var(--ox), 0 0 0 5px #F3EEE0;
  position:relative;
  flex:0 0 auto;
}
.sealmark:after{
  content:"CF";
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#F3EEE0;
  font-size:15px;
  font-weight:700;
  letter-spacing:1px;
}
.wordmark .markname{
  font-size:20px;
  letter-spacing:2px;
  color:#F3EEE0;
  font-weight:700;
  line-height:1.1;
}
.wordmark .marksub{
  font-size:11px;
  letter-spacing:2px;
  color:#D6C9AF;
  text-transform:uppercase;
  margin-top:2px;
}
.navdrawerlist{
  display:flex;
  align-items:center;
  gap:6px;
  list-style:none;
}
.navdrawnli{position:relative;margin:0;}
.navdrawnli a.navfoglio{
  display:block;
  padding:10px 16px;
  color:#26251F;
  background:#E6DEC9;
  border:1px solid #C9BDA0;
  font-size:14px;
  letter-spacing:1px;
  position:relative;
  transition:background .18s ease, color .18s ease;
}
.navdrawnli a.navfoglio:before{
  content:"";
  position:absolute;
  left:50%;
  bottom:-7px;
  width:34px;
  height:7px;
  background:var(--ox);
  transform:translateX(-50%);
  border-bottom-left-radius:3px;
  border-bottom-right-radius:3px;
}
.navdrawnli a.navfoglio:hover,
.navdrawnli a.navfoglio.is-current{
  background:#F3EEE0;
  color:var(--ox);
}
.navdrawnli .navfoglio.sealedchip{
  background:var(--ox);
  color:#F3EEE0;
  border:1px solid var(--ox);
}
.navdrawnli .navfoglio.sealedchip:before{background:#F3EEE0;height:4px;bottom:-4px;}
.navdrawnli a.navfoglio.sealedchip:hover{background:#5E2320;color:#F3EEE0;}
.nav-toggle{
  display:none;
  flex-direction:column;
  gap:5px;
  background:none;
  border:1px solid var(--rule);
  cursor:pointer;
  padding:11px 12px;
}
.nav-toggle span{
  display:block;
  width:24px;
  height:2px;
  background:#F3EEE0;
}
.nav-drawer{
  display:none;
}

/* ============ DESK-SCALE HERO ============ */
.deskscale{
  background:var(--page);
  border-bottom:1px solid var(--rule);
}
.deskscale .herodeck{
  display:grid;
  grid-template-columns:58% 42%;
  max-width:1280px;
  margin:0 auto;
}
.openfolio{
  background:#E6DEC9;
  padding:52px 40px 60px 40px;
  position:relative;
  overflow:hidden;
}
.openfolio:after{
  content:"";
  position:absolute;
  left:50%;
  top:-40px;
  bottom:-40px;
  width:4px;
  margin-left:-2px;
  background:#C9BDA0;
  transform:rotate(0deg);
  box-shadow:1px 0 0 #F3EEE0;
}
.eye-stamp{
  display:inline-block;
  color:var(--ox);
  border:1px solid var(--ox);
  font-size:11px;
  letter-spacing:4px;
  padding:5px 14px;
  font-weight:700;
  text-transform:uppercase;
  margin-bottom:22px;
}
.heroh1{
  font-size:46px;
  line-height:1.08;
  color:var(--ink);
  font-weight:700;
  margin-bottom:6px;
  max-width:620px;
}
.heroh1 .ledera{color:var(--ox);}
.hero-rule{
  width:90px;
  height:2px;
  background:var(--ox);
  margin:20px 0;
}
.leadpara{
  font-size:19px;
  line-height:1.7;
  color:var(--ink);
  max-width:620px;
  margin-bottom:8px;
}
.ctarow{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-top:26px;
}
.btn-ox{
  display:inline-block;
  background:var(--ox);
  color:#F3EEE0;
  border:1px solid var(--ox);
  padding:14px 26px;
  font-size:15px;
  letter-spacing:1px;
  font-weight:700;
  transition:background .2s ease;
}
.btn-ox:hover{background:#5E2320;color:#fff;}
.btn-navy{
  display:inline-block;
  background:none;
  color:var(--navy);
  border:1px solid var(--navy);
  padding:13px 25px;
  font-size:15px;
  letter-spacing:1px;
  font-weight:700;
  transition:background .2s ease,color .2s ease;
}
.btn-navy:hover{background:var(--navy);color:#F3EEE0;}
.btn-cloth{
  display:inline-block;
  background:var(--cloth);
  color:var(--ink);
  border:1px solid var(--rule);
  padding:8px 18px;
  font-size:13px;
  letter-spacing:1px;
  font-weight:700;
}
.btn-cloth:hover{background:#fff;color:var(--ox);border-color:var(--ox);}
.btn-para{
  display:inline-block;
  background:var(--page);
  color:var(--ink);
  border:1px solid var(--rule);
  padding:8px 18px;
  font-size:13px;
  font-weight:700;
  letter-spacing:1px;
}
.btn-para:hover{color:var(--ox);border-color:var(--ox);}
.bnoter-text{
  margin-top:20px;
  font-size:14px;
  color:var(--ink);
  border-top:1px solid #C9BDA0;
  padding-top:12px;
  max-width:560px;
}
.deskscene{
  background:var(--page);
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:50px 40px;
  min-height:440px;
}
.scene-inner{
  position:relative;
  width:100%;
  max-width:340px;
}
.scene-plaque{
  background:#E6DEC9;
  border:1px solid var(--rule);
  padding:26px 22px 22px 22px;
  box-shadow:0 0 0 5px var(--page);
  text-align:center;
}
.scene-eyebrow{
  font-size:11px;
  letter-spacing:3px;
  color:var(--ox);
  text-transform:uppercase;
  font-weight:700;
  display:block;
  margin-bottom:18px;
}
.scale-widget{
  position:relative;
  width:200px;
  height:120px;
  margin:0 auto;
}
.sw-beam{
  position:absolute;
  top:8px;
  left:0;
  right:0;
  margin:0 auto;
  width:200px;
  height:5px;
  background:var(--bronze);
  border-radius:2px;
}
.sw-beam:before,.sw-beam:after{
  content:"";
  position:absolute;
  top:-6px;
  width:4px;
  height:17px;
  background:var(--bronze);
}
.sw-beam:before{left:18px;}
.sw-beam:after{right:18px;}
.sw-pan{
  position:absolute;
  top:34px;
  width:66px;
  height:11px;
  background:var(--bronze);
  border-radius:0 0 12px 12px;
}
.sw-pan.pl{left:0;}
.sw-pan.pr{right:0;}
.sw-stem{
  position:absolute;
  top:30px;
  left:50%;
  margin-left:-2px;
  width:4px;
  height:7px;
  background:var(--bronze);
}
.sw-column{
  position:absolute;
  bottom:0;
  left:50%;
  margin-left:-9px;
  width:18px;
  height:52px;
  background:var(--bronze);
}
.sw-column:before{
  content:"";
  position:absolute;
  top:-4px;
  left:50%;
  margin-left:-9px;
  width:18px;
  height:6px;
  background:var(--bronze);
}
.sw-foot{
  position:absolute;
  bottom:-4px;
  left:50%;
  margin-left:-30px;
  width:60px;
  height:7px;
  background:var(--bronze);
  border-radius:4px;
}
.desk-pile{
  margin:14px auto 0 auto;
  width:150px;
}
.desk-pile .lb{
  height:11px;
  border:1px solid #6b7c92;
  background:var(--navy);
  margin-top:2px;
}
.desk-pile .lb.ox{background:var(--ox);border-color:#9a4a45;}
.desk-pile .lb.topmost{background:#53313b;}
.waxpress-relief{
  margin:24px auto 0 auto;
  width:128px;
}
.wp-arm{height:5px;background:var(--bronze);}
.wp-neck{
  width:16px;
  height:22px;
  background:var(--bronze);
  margin:0 auto;
}
.wp-die{
  width:74px;
  height:20px;
  background:var(--bronze);
  margin:-4px auto 0 auto;
  position:relative;
}
.wp-die:after{
  content:"";
  position:absolute;
  left:50%;
  top:-24px;
  margin-left:-24px;
  width:48px;
  height:48px;
  border-radius:50%;
  background:var(--ox);
  border:2px solid #F3EEE0;
  box-shadow:0 0 0 3px var(--ox);
}
.scene-note{
  margin-top:20px;
  font-size:12px;
  color:var(--ink);
  letter-spacing:1px;
  border-top:1px solid var(--rule);
  padding-top:12px;
  font-style:italic;
}
.kickstrip{
  background:var(--navy);
  border-top:3px double var(--rule);
  width:100%;
}
.kickstrip .kickinner{
  max-width:1280px;
  margin:0 auto;
  padding:18px 24px;
  display:flex;
  align-items:center;
  justify-content:space-around;
  gap:22px;
  flex-wrap:wrap;
}
.kickstat{
  text-align:center;
  flex:1;
  min-width:160px;
  border-right:1px solid var(--ox);
  padding:0 22px;
}
.kickstat:last-child{border-right:none;}
.kickstat .kicknum{
  font-size:34px;
  color:#F3EEE0;
  font-weight:700;
  display:block;
  line-height:1;
}
.kickstat .kicksub{
  display:block;
  margin-top:6px;
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#D6C9AF;
}

/* ============ FOLIO SECTION ============ */
.folios{
  padding:30px 0 10px 0;
}
.section-band{
  max-width:1200px;
  margin:0 auto;
  padding:56px 24px 10px 24px;
}
.sec-eyebrow{
  display:block;
  font-size:12px;
  letter-spacing:4px;
  text-transform:uppercase;
  color:var(--ox);
  margin-bottom:10px;
  font-weight:700;
}
.sec-title{
  font-size:34px;
  line-height:1.15;
  color:var(--ink);
  font-weight:700;
  margin-bottom:12px;
}
.sec-sub{
  font-size:17px;
  color:var(--ink);
  max-width:760px;
  margin-bottom:6px;
}
.sec-desc{
  font-size:16px;
  color:var(--ink);
  max-width:820px;
}
.sec-rule{
  width:86px;
  height:2px;
  background:var(--ox);
  margin:18px 0 8px 0;
}
.sixfolio{
  max-width:1200px;
  margin:30px auto 0 auto;
  padding:0 24px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
}
.foliocol{
  background:#FAF6EA;
  border:1px solid var(--rule);
  padding:34px 30px 30px 30px;
  position:relative;
  box-shadow:0 10px 18px #D8CDB4;
}
.foliocol:before{
  content:"";
  position:absolute;
  left:20px;
  top:0;
  bottom:0;
  width:1px;
  background:#E3D7BE;
  border-left:2px solid var(--ox);
}
.folio-roman{
  font-size:13px;
  letter-spacing:3px;
  color:var(--ox);
  font-weight:700;
  margin-bottom:14px;
}
.folio-dropcap{
  font-size:62px;
  line-height:0.8;
  color:var(--ox);
  font-family: Georgia, serif;
  font-weight:700;
  float:left;
  margin:6px 10px 0 0;
}
.foliocol h3{
  font-size:21px;
  color:var(--ink);
  margin-bottom:6px;
  font-weight:700;
  line-height:1.25;
}
.folioentry{
  font-size:15px;
  line-height:1.78;
  color:var(--ink);
  clear:both;
}
.foliocol .detailslink{
  display:inline-block;
  margin-top:16px;
  color:var(--ox);
  font-size:13px;
  font-weight:700;
  letter-spacing:1px;
  border-bottom:1px solid var(--ox);
}
.foliocol .detailslink:hover{color:var(--ink);border-color:var(--ink);}
.foliocol .sealdot,
.folioenddot{
  position:absolute;
  right:26px;
  bottom:22px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:var(--ox);
  border:1px solid var(--rule);
}
.foliocol.hasdot{padding:34px 30px 52px 30px;}

/* statement band */
.stmntband{
  background:var(--navy);
  margin-top:44px;
  width:100%;
}
.stmntband .stmntinner{
  max-width:1200px;
  margin:0 auto;
  padding:58px 24px;
  display:flex;
  align-items:center;
  gap:44px;
  flex-wrap:wrap;
}
.stmt-big{
  flex:0 0 auto;
  font-size:120px;
  line-height:1;
  color:#F3EEE0;
  font-weight:700;
  letter-spacing:2px;
}
.stmt-big .unit{
  font-size:26px;
  color:#D6C9AF;
  display:block;
  letter-spacing:4px;
  text-transform:uppercase;
}
.stmt-text .stmt-h2{
  font-size:28px;
  color:#F3EEE0;
  line-height:1.25;
  font-weight:700;
  margin-bottom:12px;
}
.stmt-text p{
  color:#D9E0E8;
  font-size:16px;
  max-width:620px;
}

/* seal track */
.sealtrack{
  background:var(--page);
  padding:54px 0 6px 0;
}
.sealtrack .trackhead{
  max-width:1200px;
  margin:0 auto;
  padding:0 24px;
  text-align:center;
}
.sealtrack .trackcontainer{
  max-width:1200px;
  margin:0 auto;
  padding:0 24px;
  display:flex;
  align-items:stretch;
  justify-content:space-around;
  gap:10px;
  flex-wrap:wrap;
  position:relative;
}
.trackcontainer:before{
  content:"";
  position:absolute;
  left:6%;
  right:6%;
  top:34px;
  height:2px;
  border-top:2px dashed var(--rule);
}
.stationbox{
  flex:1;
  min-width:150px;
  max-width:200px;
  text-align:center;
  padding:0 8px;
  position:relative;
}
.stationbox:before{display:none;}
.tabdoc{
  position:relative;
  background:var(--cloth);
  border:1px solid var(--rule);
  padding:13px 6px 9px 6px;
  min-height:60px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  z-index:2;
  box-shadow:0 3px 6px #D8CDB4;
}
.tabdoc .stopnum{
  font-size:10px;
  letter-spacing:2px;
  color:var(--ox);
  display:block;
  margin-bottom:4px;
  font-weight:700;
}
.tabdoc .stopname{
  font-size:15px;
  font-weight:700;
  color:var(--ink);
  letter-spacing:1px;
}
.stationbox .stopcaption{
  font-size:13px;
  color:var(--ink);
  margin-top:12px;
  line-height:1.6;
}
.stationbox.stamp .tabdoc{
  transform:translateY(-6px);
  background:#F3EEE0;
  border-color:var(--ox);
  box-shadow:0 0 0 1px var(--ox) inset;
}
.stationbox.stamp .finaleseal{
  width:58px;
  height:58px;
  border-radius:50%;
  background:var(--ox);
  border:2px solid #F3EEE0;
  box-shadow:0 0 0 3px var(--ox);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#F3EEE0;
  font-size:9px;
  letter-spacing:1px;
  font-weight:700;
  text-transform:uppercase;
  margin:8px auto 0 auto;
  line-height:1.2;
  text-align:center;
  flex-direction:column;
}
.stationbox.stamp .stopcaption{margin-top:10px;}
.tracktail{
  max-width:1200px;
  margin:26px auto 8px auto;
  padding:0 24px;
  text-align:center;
}
.tracktail p{
  display:inline-block;
  background:var(--page);
  font-size:14px;
  color:var(--ink);
  letter-spacing:1px;
}

/* ============ NOTARY NOTICE ============ */
.notarynotice{
  background:var(--ox);
  margin-top:40px;
  width:100%;
}
.notarynotice .noticegrid{
  max-width:1200px;
  margin:0 auto;
  padding:38px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  flex-wrap:wrap;
}
.enteredstamp{
  flex:0 0 auto;
  border:2px solid #F3EEE0;
  color:#F3EEE0;
  font-size:11px;
  letter-spacing:3px;
  font-weight:700;
  padding:10px 16px;
  text-transform:uppercase;
  transform:rotate(-4deg);
}
.noticecopy{
  flex:1;
  min-width:260px;
}
.noticecopy p{
  color:#FAF2EC;
  font-size:18px;
  line-height:1.5;
}
.noticecopy .notice-small{
  display:block;
  margin-top:6px;
  font-size:13px;
  color:#E6B7AF;
}
.btn-para.btn-lightout{
  background:none;
  border:1px solid #F3EEE0;
  color:#F3EEE0;
}
.btn-para.btn-lightout:hover{background:#F3EEE0;color:var(--ox);}

/* ============ generic page intro (services/contact) ============ */
.page-lead{
  background:var(--page);
  border-bottom:1px solid var(--rule);
  padding:60px 0 48px 0;
}
.page-lead .lead-head{
  max-width:1200px;
  margin:0 auto;
  padding:0 24px;
}
.page-title{
  font-size:44px;
  line-height:1.1;
  color:var(--ink);
  font-weight:700;
  margin:6px 0 14px 0;
}
.page-intro{
  font-size:19px;
  color:var(--ink);
  max-width:820px;
  line-height:1.7;
}
.pillarnote{display:none;}

/* services process */
.procwrap{
  background:#E6DEC9;
  margin-top:34px;
}
.procwrap .procinner{
  max-width:1200px;
  margin:0 auto;
  padding:44px 24px;
}
.prochead h2{font-size:28px;color:var(--ink);margin-bottom:8px;font-weight:700;}
.prochead p{color:var(--ink);max-width:760px;}
.procgrid{
  margin-top:26px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  counter-reset:pr;
}
.procstep{
  background:var(--page);
  border:1px solid var(--rule);
  border-top:3px solid var(--ox);
  padding:22px 20px;
  position:relative;
}
.procstep .the-num{
  font-size:34px;
  color:var(--ox);
  font-weight:700;
  display:block;
  line-height:1;
  margin-bottom:10px;
}
.procstep h3{font-size:17px;color:var(--ink);margin-bottom:6px;font-weight:700;}
.procstep p{font-size:14px;color:var(--ink);}

/* services list detail pages partial duplicated */
.servdetail{
  max-width:1200px;
  margin:0 auto;
  padding:30px 24px 0 24px;
}
.servrow{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin-bottom:26px;
}
.service-blk{
  background:var(--cloth);
  border:1px solid var(--rule);
  padding:26px 24px;
  border-bottom:3px solid var(--ox);
}
.service-blk .blk-tag{
  font-size:11px;
  letter-spacing:2px;
  color:var(--ox);
  font-weight:700;
}
.service-blk h3{font-size:19px;color:var(--ink);margin:8px 0;font-weight:700;}
.service-blk p{font-size:14px;color:var(--ink);}

/* CTA band inside pages */
.ctaband{
  background:var(--navy);
  margin-top:40px;
  width:100%;
}
.ctaband .ctainner{
  max-width:1200px;
  margin:0 auto;
  padding:50px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  flex-wrap:wrap;
}
.ctaband h2{font-size:28px;color:#F3EEE0;font-weight:700;max-width:640px;line-height:1.25;}
.ctaband p{color:#D9E0E8;max-width:640px;margin-top:10px;}
.cta-actions .btn-ox{background:var(--ox);}

/* ============ CONTACT LAYOUT ============ */
.contactdeck{
  max-width:1200px;
  margin:0 auto;
  padding:36px 24px 6px 24px;
  display:grid;
  grid-template-columns:1.1fr 0.9fr;
  gap:34px;
}
.contactform-wrap{
  background:#FAF6EA;
  border:1px solid var(--rule);
  padding:30px;
  border-top:4px solid var(--ox);
}
.form-legend{
  font-size:22px;
  font-weight:700;
  color:var(--ink);
  margin-bottom:20px;
  padding-bottom:12px;
  border-bottom:1px solid var(--rule);
}
.fieldgroup{margin-bottom:18px;}
.fieldgroup label{
  display:block;
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--ink);
  margin-bottom:6px;
  font-weight:700;
}
.fieldgroup input,
.fieldgroup textarea{
  width:100%;
  background:var(--page);
  border:1px solid #C9BDA0;
  padding:12px 14px;
  font-family: Georgia, serif;
  font-size:18px;
  color:var(--ink);
}
.fieldgroup textarea{min-height:150px;resize:vertical;}
.fieldgroup input:focus,
.fieldgroup textarea:focus{
  outline:none;
  border-color:var(--ox);
  box-shadow:0 0 0 2px #E8CFAE;
}
.optional-note{
  font-size:12px;
  color:#6B5F4A;
  font-style:italic;
}
.send-button{
  display:inline-block;
  background:var(--ox);
  color:#F3EEE0;
  border:none;
  padding:14px 26px;
  font-size:15px;
  letter-spacing:1px;
  font-weight:700;
  cursor:pointer;
  font-family: Georgia, serif;
}
.send-button:hover{background:#5E2320;}
.fallbt-note{
  margin-top:12px;
  font-size:12px;
  color:#6B5F4A;
}
.contact-aside{
  background:var(--navy);
  color:#F3EEE0;
  padding:30px;
  display:flex;
  flex-direction:column;
  gap:24px;
}
.aside-head h3{
  font-size:22px;
  color:#F3EEE0;
  margin-bottom:6px;
  font-weight:700;
}
.aside-head p{color:#D9E0E8;font-size:15px;}
.ledger-card{
  background:#49586D;
  padding:18px;
  border-left:4px solid var(--ox);
}
.ledger-card .lc-label{
  font-size:11px;
  letter-spacing:2px;
  color:#D9E0E8;
  text-transform:uppercase;
  display:block;
  margin-bottom:6px;
}
.ledger-card .lc-value{
  font-size:17px;
  color:#F3EEE0;
  font-weight:700;
  line-height:1.4;
  word-break:break-word;
}
.ledger-card .lc-value a{color:#F3EEE0;border-bottom:1px solid #F3EEE0;}
.ledger-card .lc-value a:hover{color:#D6C9AF;}
.hours-card .lc-label{
  font-size:11px;
  letter-spacing:2px;
  color:#D9E0E8;
  text-transform:uppercase;
  display:block;
  margin-bottom:6px;
  font-weight:700;
}
.hourslist{list-style:none;}
.hourslist li{
  display:flex;
  justify-content:space-between;
  padding:8px 0;
  border-bottom:1px solid #49586D;
  font-size:15px;
  color:#F3EEE0;
}
.hourslist .closday{color:#E6B7AF;}
.faqblock{background:var(--page);padding:22px;}
.faq-block-title{
  font-size:20px;
  color:var(--ink);
  font-weight:700;
  margin-bottom:14px;
}
.qqterm{display:none;}
.faqq{
  margin-bottom:0;
  padding:12px 0 6px 0;
  border-bottom:1px solid var(--rule);
}
.faqq[open] .qa-legend{
  color:var(--ox);
}
.qa-legend{
  list-style:none;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  padding:8px 0;
  color:var(--ink);
  position:relative;
  padding-right:28px;
  display:block;
}
.qa-legend::-webkit-details-marker{display:none;}
.qa-a p{
  font-size:14px;
  color:var(--ink);
  line-height:1.7;
  margin:6px 0;
}

/* ============ LEDGER-SHELF FOOTER ============ */
.ledgershelf{
  background:var(--navy);
  margin-top:44px;
  width:100%;
  position:relative;
}
.ledgerback{display:none;}
.ledgershelf .shelves{
  max-width:1200px;
  margin:0 auto;
  padding:40px 24px 0 24px;
}
.ledgershelf .spine-rack{
  display:flex;
  align-items:flex-end;
  gap:6px;
  justify-content:center;
  margin-bottom:18px;
  position:relative;
  z-index:1;
  min-height:96px;
}
.spine-rack .fs-spine{
  width:44px;
  height:78px;
  background:var(--ox);
  border:1px solid #9a4a45;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4px;
}
.spine-rack .fs-spine.navyspine{background:var(--navy);border-color:#6b7c92;height:72px;}
.spine-rack .fs-spine .patchhold{
  width:22px;
  height:60px;
  background:#E6DEC9;
  border:1px solid #C9BDA0;
  display:flex;
  align-items:center;
  justify-content:center;
  transform:rotate(0deg);
  overflow:hidden;
}
.spine-rack .fs-spine .patchhold .pat{
  writing-mode:vertical-rl;
  font-size:8px;
  letter-spacing:1px;
  color:var(--ink);
}
.shelfstar{
  width:100%;
  border-top:4px solid var(--rule);
  position:relative;
  z-index:1;
}
.motto{
  text-align:center;
  color:#F3EEE0;
  font-size:13px;
  letter-spacing:5px;
  text-transform:uppercase;
  padding:14px 0 30px 0;
  z-index:1;
  position:relative;
}
.shelfcols{
  background:#26333f;
  border-top:1px solid var(--rule);
}
.shelfcols .colgrid{
  max-width:1200px;
  margin:0 auto;
  padding:34px 24px 30px 24px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:34px;
}
.colhead{
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#D6C9AF;
  margin-bottom:14px;
  border-bottom:1px solid #49586D;
  padding-bottom:10px;
  font-weight:700;
}
.footcol ul{list-style:none;}
.footcol ul li{margin-bottom:9px;}
.footcol ul li a{
  color:#D9E0E8;
  font-size:14px;
  letter-spacing:0.5px;
}
.footcol ul li a:hover{color:#F3EEE0;border-bottom:1px solid #F3EEE0;}
.footcol ul li .foot-note{color:#8F9CB0;font-size:13px;display:block;font-size:12px;margin-top:2px;color:#B9C3D1;}
.engraveplate{
  background:var(--rule);
  border-top:1px solid #6b5f4a;
}
.engraveplate .platein{
  max-width:1200px;
  margin:0 auto;
  padding:20px 24px;
  text-align:center;
  font-size:13px;
  letter-spacing:1px;
  color:#F3EEE0;
  line-height:2;
  position:relative;
  z-index:1;
}
.engraveplate .platein a{color:#F3EEE0;border-bottom:1px solid #F3EEE0;}
.engraveplate .platein a:hover{border-color:#26251F;}
.copystrip{
  background:var(--navy);
}
.copystrip .copyholder{
  max-width:1200px;
  margin:0 auto;
  padding:14px 24px;
  text-align:center;
  font-size:12px;
  letter-spacing:1px;
  color:#F3EEE0;
  position:relative;
  z-index:1;
}

/* ============ reveal ============ */
.rvb{white-space:nowrap;}
.visibility-hidden-decor{visibility:hidden;}

/* ============ RESPONSIVE ============ */
@media (max-width:1020px){
  .deskscale .herodeck{grid-template-columns:1fr;}
  .deskscene{padding:40px 24px;}
  .hero-stats{border:none;}
  .sixfolio{grid-template-columns:repeat(2,1fr);}
  .contactdeck{grid-template-columns:1fr;}
  .shelfcols .colgrid{grid-template-columns:1fr 1fr;}
}
@media (max-width:860px){
  .navdrawnlist{display:none;}
  .nav-toggle{display:flex;}
  .nav-toggle.is-open span:first-child{transform:translateY(7px) rotate(45deg);}
  .nav-toggle.is-open span:nth-child(2){visibility:hidden;}
  .nav-toggle.is-open span:last-child{transform:translateY(-7px) rotate(-45deg);}
  .nav-toggle span{transition:transform .2s ease;}
  .nav-drawer{
    display:block;
    max-height:0;
    overflow:hidden;
    transition:max-height .3s ease;
    background:#26333f;
    border-bottom:1px solid var(--rule);
  }
  .nav-drawer.is-open{max-height:380px;}
  .nav-drawer ul{list-style:none;display:block;}
  .nav-drawer ul li{border-bottom:1px solid #49586D;}
  .nav-drawer ul li a{
    display:block;
    padding:15px 24px;
    color:#D9E0E8;
    letter-spacing:1px;
    font-size:15px;
  }
  .nav-drawer ul li a:hover{color:#F3EEE0;padding-left:30px;}
  .sixfolio{grid-template-columns:1fr;}
  .procgrid{grid-template-columns:repeat(2,1fr);}
  .servrow{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
  .heroh1{font-size:34px;}
  .procgrid{grid-template-columns:1fr;}
  .servrow{grid-template-columns:1fr;}
  .shelfcols .colgrid{grid-template-columns:1fr;}
  .section-band{padding-left:18px;padding-right:18px;}
}
