/* Elgin Commons website — CIP. Same style system as the brochure (flier.css):
   Archivo (expanded, extra-bold display) + Instrument Serif Italic + CIP green on olive-black. */
@font-face{font-family:"Archivo";src:url("fonts/Archivo-VF.ttf") format("truetype");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url("fonts/InstrumentSerif-Italic.ttf") format("truetype");font-style:italic;font-display:swap}

:root{
  --green:#a4ce49; --ink:#17180f; --ink-2:#22241a; --cream:#efede2; --olive:#3a4520;
  --gray:#6f716a; --rule:#d9dad3; --rule-dk:rgba(239,237,226,.18); --paper:#ffffff; --tint:#f4f4ee;
  --red:#b3372f; --teal:#1f8f7d;
  --g:clamp(16px,4vw,48px);   /* side gutter */
  --rv:0px;                   /* review-bar height */
  --hd:64px;                  /* header height */
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hd) + var(--rv) + 12px);-webkit-text-size-adjust:100%}
body{font-family:"Archivo",system-ui,sans-serif;font-size:17px;line-height:1.55;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:var(--green);color:var(--ink);padding:10px 14px;z-index:99;font-weight:700}
.skip:focus{left:8px;top:8px}
.wrap{width:min(1240px,100% - 2*var(--g));margin-inline:auto}

/* review marking */
.rv{display:none}
body.review{--rv:28px}
body.review .rv{display:block;text-align:center;line-height:var(--rv);position:fixed;top:0;left:0;right:0;height:var(--rv);z-index:60;background:var(--red);color:#fff;font-weight:700;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;overflow:hidden;padding:0 10px}

/* type */
.disp{font-stretch:125%;font-weight:800;text-transform:uppercase;line-height:.96;letter-spacing:-.005em}
h1.disp{font-size:clamp(48px,10.5vw,148px)}
h2.disp{font-size:clamp(33px,5.6vw,76px)}
.serif{font-family:"Instrument Serif",serif;font-style:italic;font-weight:400;font-size:clamp(21px,2.5vw,32px);line-height:1.22;color:var(--gray)}
.dark .serif,.band .serif,.hero .serif{color:rgba(239,237,226,.86)}
.kick{font-weight:700;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--olive);margin-bottom:18px}
.kick::before{content:"";display:inline-block;width:10px;height:10px;background:var(--green);margin-right:12px;vertical-align:-1px}
.dark .kick,.band .kick{color:rgba(239,237,226,.7)}
.lead{font-size:clamp(16.5px,1.5vw,19px);line-height:1.55;color:#33352b;max-width:70ch}
.lead.wide{max-width:96ch;margin-top:22px}
.dark .lead{color:rgba(239,237,226,.9)}
.cap{font-size:12.5px;line-height:1.45;color:var(--gray);margin-top:14px;max-width:120ch}
.dark .cap{color:rgba(239,237,226,.55)}
.sub{font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:clamp(20px,2.2vw,28px);margin:56px 0 18px}

.btn{display:inline-block;background:var(--green);color:var(--ink);font-weight:800;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;padding:15px 24px;border:2px solid var(--green);transition:background .15s,color .15s}
.btn:hover{background:#b9de66;border-color:#b9de66}
.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.btn.ghost:hover{background:#fff;color:var(--ink);border-color:#fff}
.btn.sm{padding:9px 16px;font-size:11.5px}

/* header */
.hd{position:fixed;top:var(--rv);left:0;right:0;height:var(--hd);z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 var(--g);color:#fff;transition:background .2s,box-shadow .2s}
.hd.solid,.hd.open{background:rgba(23,24,15,.96);box-shadow:0 1px 0 var(--rule-dk)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-stretch:125%;font-weight:800;font-size:15px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.brand img{width:34px;height:34px;display:block}
.hd nav{display:flex;align-items:center;gap:clamp(12px,1.8vw,26px)}
.hd nav a:not(.btn){text-decoration:none;font-weight:700;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.82);padding:6px 0;border-bottom:2px solid transparent}
.hd nav a:not(.btn):hover,.hd nav a.cur{color:#fff;border-color:var(--green)}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;padding:12px 10px}
.burger i{display:block;height:2px;background:#fff;margin:5px 0}
@media (max-width:1020px){
  .burger{display:block}
  .hd nav{display:none;position:absolute;top:var(--hd);left:0;right:0;background:rgba(23,24,15,.98);flex-direction:column;align-items:stretch;gap:0;padding:8px var(--g) 22px}
  .hd.open nav{display:flex}
  .hd nav a:not(.btn){padding:14px 0;border-bottom:1px solid var(--rule-dk);font-size:13px}
  .hd nav .btn{margin-top:18px;text-align:center;padding:14px}
}

/* hero */
.hero{position:relative;min-height:min(100svh,900px);display:flex;flex-direction:column;justify-content:flex-end;background:var(--ink) 50% 60%/cover no-repeat;color:#fff;padding-top:calc(var(--hd) + var(--rv) + 40px)}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,20,12,.86) 0%,rgba(18,20,12,.5) 38%,rgba(18,20,12,.38) 60%,rgba(18,20,12,.9) 100%)}
.hero>*{position:relative}
.hero>.wrap{padding-bottom:clamp(28px,5vw,56px)}
.eyebrow{font-weight:700;font-size:clamp(10.5px,1.1vw,13px);letter-spacing:.3em;text-transform:uppercase;margin-bottom:22px}
.eyebrow i{display:inline-block;width:11px;height:11px;background:var(--green);margin-right:14px;vertical-align:-1px}
.hero .serif{max-width:22em;margin-top:22px;font-size:clamp(22px,2.8vw,36px)}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.offer{background:rgba(23,24,15,.88);border-top:1px solid var(--rule-dk)}
.offer .wrap{display:grid;grid-template-columns:auto repeat(4,1fr);gap:clamp(16px,2.6vw,40px);padding:22px 0 24px;align-items:start}
.offer .lbl{font-weight:800;font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--green);line-height:1.5;padding-top:5px}
.offer b{display:block;font-stretch:125%;font-weight:800;font-size:clamp(18px,2vw,27px);line-height:1.1;white-space:nowrap}
.offer i{display:block;font-style:normal;font-weight:700;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--green);margin:6px 0 2px}
.offer span{display:block;font-size:13px;color:rgba(239,237,226,.75);line-height:1.35}
.photocap{font-size:10.5px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--gray);padding-top:12px}
@media (max-width:900px){.offer .wrap{grid-template-columns:1fr 1fr}.offer .lbl{grid-column:1/-1}.offer .lbl br{display:none}}

/* sections */
.sec{padding:clamp(60px,8.5vw,124px) 0}
.sec.tint{background:var(--tint)}
.sec.dark{background:var(--ink);color:var(--cream)}
.sec.flush{padding-top:0}
.hrow{display:flex;justify-content:space-between;align-items:flex-end;gap:clamp(20px,5vw,80px);flex-wrap:wrap;margin-bottom:clamp(28px,4vw,48px)}
.hrow>.serif{flex:1 1 300px;max-width:560px;padding-bottom:4px}
.hrow>.lead{flex:1 1 380px;max-width:600px}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,4vw,56px);font-size:clamp(16.5px,1.5vw,19px);color:#33352b}
@media (max-width:760px){.cols2{grid-template-columns:1fr}}

.sum{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(32px,4vw,52px);border-top:2px solid var(--ink);border-bottom:1px solid var(--rule)}
.sum>div{padding:18px 20px 18px 0}
.sum>div+div{border-left:1px solid var(--rule);padding-left:20px}
.sum b{display:block;font-stretch:125%;font-weight:800;font-size:clamp(20px,2.5vw,34px);line-height:1.1}
.sum span{display:block;font-weight:600;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gray);margin-top:7px;line-height:1.45}
.sum.four b{font-size:clamp(17px,1.9vw,25px)}
.sum.four span{letter-spacing:.06em;text-transform:none;font-size:12.5px;font-weight:500}
@media (max-width:760px){.sum{grid-template-columns:1fr 1fr}.sum>div:nth-child(odd){border-left:0;padding-left:0}.sum>div:nth-child(n+3){border-top:1px solid var(--rule)}}

/* status chips */
.st{display:inline-block;font-weight:800;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;padding:5px 9px 4px;white-space:nowrap;background:var(--green);color:var(--ink)}
.st.uc{background:var(--red);color:#fff}
.st.dev{background:var(--ink);color:#fff}
.st.det{background:none;color:var(--gray);box-shadow:inset 0 0 0 1px var(--gray)}

/* offering */
.offer4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.offer4 article{background:#fff;border-top:4px solid var(--green);padding:24px 22px 22px;display:flex;flex-direction:column}
.offer4 .no{font-stretch:125%;font-weight:800;font-size:60px;line-height:.9;color:var(--olive)}
.offer4 h3{font-stretch:125%;font-weight:800;font-size:19px;text-transform:uppercase;margin:14px 0 6px}
.offer4 p{font-size:14.5px;color:#44463c;line-height:1.45}
.offer4 dl{margin:18px 0 20px;border-top:1px solid var(--rule)}
.offer4 dl div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid var(--rule)}
.offer4 dt{font-weight:600;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gray)}
.offer4 dd{font-stretch:125%;font-weight:800;font-size:19px;white-space:nowrap}
.offer4 .st{margin-top:auto;align-self:flex-start}
.terms{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px;border-top:2px solid var(--ink);padding-top:20px}
.terms span{display:block;font-weight:700;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--olive)}
.terms b{display:block;font-stretch:125%;font-weight:800;font-size:21px;text-transform:uppercase;margin:6px 0 4px}
.terms p{font-size:14px;color:#44463c;line-height:1.4}
@media (max-width:1020px){.offer4,.terms{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.offer4,.terms{grid-template-columns:1fr}}

/* site plan */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.chip{font:inherit;font-weight:700;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;padding:10px 15px;background:#fff;color:var(--ink);border:1.5px solid var(--ink);cursor:pointer}
.chip:hover{background:var(--tint)}
.chip.on{background:var(--ink);color:#fff}
.plan{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}
.planmap{border-top:2px solid var(--ink)}
.smap{display:block;width:100%;height:auto;font-family:Archivo,sans-serif}
.smap text{text-anchor:middle;pointer-events:none}
.smap .ln{font-size:10.5px;font-weight:800;fill:#17180f;paint-order:stroke;stroke:#f4f2e8;stroke-width:3px;stroke-linejoin:round}
.smap .ln.big{font-size:15px}
.smap .ls{font-size:7.5px;font-weight:700;letter-spacing:.16em;fill:#17180f;paint-order:stroke;stroke:#f4f2e8;stroke-width:3px}
.smap .hw{font-size:9.5px;font-weight:700;letter-spacing:.34em;fill:#55564f}
.smap .sc{font-size:9px;font-weight:700;letter-spacing:.14em;fill:#17180f;text-anchor:start}
.lot{cursor:pointer;stroke:#17180f;stroke-width:.8;stroke-linejoin:round;transition:fill-opacity .15s;outline:none}
.lot.pad{fill:#8cc63f;fill-opacity:.38}
.lot.uc{fill:#c0392b;fill-opacity:.36}
.lot.hotel{fill:#1f8f7d;fill-opacity:.38}
.lot.p2{fill:#6d6e66;fill-opacity:.22}
.lot.det{fill:url(#hatch);fill-opacity:.6}
.lot:hover,.lot:focus-visible{fill-opacity:.68}
.lot.p2:hover,.lot.p2:focus-visible{fill-opacity:.42}
.lot.sel{fill-opacity:.9;stroke-width:2.2}
.lot.p2.sel{fill-opacity:.55}
.smap.filt .lot:not(.on){fill-opacity:.07;stroke-opacity:.35}
.key{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px;font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#44463c}
.key span{display:inline-flex;align-items:center;gap:8px}
.key i{display:inline-block;width:14px;height:14px;flex:none}
.key i.hatch{background:repeating-linear-gradient(135deg,#17180f 0 1.5px,#efede2 1.5px 5px);outline:1px solid #17180f}
.key i.ctr{height:0;border-top:2px solid var(--olive);width:20px}
.lotcard{background:var(--ink);color:var(--cream);padding:24px 24px 22px;border-top:4px solid var(--green);position:sticky;top:calc(var(--hd) + var(--rv) + 16px)}
.lotcard .kick{color:var(--green);margin-bottom:10px}
.lotcard .kick::before{display:none}
.lotcard .big{font-stretch:125%;font-weight:800;font-size:44px;line-height:1;text-transform:uppercase;color:#fff}
.lotcard .st{margin-top:12px}
.lotcard dl{margin-top:18px;border-top:1px solid var(--rule-dk)}
.lotcard dl div{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--rule-dk);align-items:baseline}
.lotcard dt{font-weight:600;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(239,237,226,.62)}
.lotcard dd{font-weight:700;font-size:15px;text-align:right}
.lotcard .note{font-size:13px;color:rgba(239,237,226,.7);margin-top:14px;line-height:1.45}
.lotcard .btn{display:block;text-align:center;margin-top:18px}
@media (max-width:900px){.plan{grid-template-columns:minmax(0,1fr)}.lotcard{position:static}}

.tblw{overflow-x:auto;margin-top:34px}
table{border-collapse:collapse;width:100%}
.lots{font-size:15px;min-width:560px}
.lots thead th{font-weight:700;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gray);text-align:left;padding:10px 12px 10px 0;border-bottom:2px solid var(--ink)}
.lots .num{text-align:right;font-variant-numeric:tabular-nums;padding-right:28px}
.lots .grp th{font-weight:800;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--olive);text-align:left;padding:20px 0 8px;border-bottom:1px solid var(--ink)}
.lots td{padding:9px 12px 9px 0;border-bottom:1px solid var(--rule)}
.lots td.n{font-weight:800;white-space:nowrap}
.lots tr[data-lot]{cursor:pointer}
.lots tr[data-lot]:hover td{background:var(--tint)}
.lots tr.sel td{background:#e9f3d2}
.lots tbody.off{display:none}

.exh{border-top:2px solid var(--ink)}
.exh img{display:block;width:100%;height:auto}
.exh figcaption{display:flex;justify-content:space-between;gap:12px 40px;flex-wrap:wrap;font-size:12.5px;line-height:1.45;color:var(--gray);margin-top:12px}
.exh figcaption span:first-child{flex:1 1 420px;max-width:90ch}

/* vision */
.vis{display:grid;grid-template-columns:1.52fr 1fr;grid-template-rows:1fr 1fr;gap:18px;height:clamp(320px,44vw,560px)}
.fig{background:var(--ink-2) 50% 50%/cover no-repeat;position:relative}
.vis .a{grid-row:1/3;background-position:50% 42%}
.vis .c{background-position:50% 40%}
.tag{position:absolute;left:0;bottom:0;background:var(--green);color:var(--ink);font-weight:800;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;padding:8px 12px 7px}
@media (max-width:700px){.vis{grid-template-columns:1fr 1fr;grid-template-rows:auto;height:auto}.vis .a{grid-column:1/3;grid-row:auto;aspect-ratio:3/2}.vis .b,.vis .c{aspect-ratio:4/3}}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,40px);margin-top:34px}
.trio>div{border-top:2px solid var(--green);padding-top:14px}
.trio b{display:block;font-stretch:125%;font-weight:800;font-size:clamp(17px,1.8vw,22px);text-transform:uppercase}
.trio span{display:block;font-size:14.5px;color:rgba(239,237,226,.78);margin-top:6px;line-height:1.45}
@media (max-width:700px){.trio{grid-template-columns:1fr}}

/* photo bands */
.band{position:relative;background:var(--ink) 50% 50%/cover no-repeat;color:#fff;padding:clamp(90px,13vw,190px) 0 clamp(60px,9vw,130px)}
.band::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,20,12,.74) 0%,rgba(18,20,12,.36) 45%,rgba(18,20,12,0) 75%),linear-gradient(180deg,rgba(18,20,12,.3) 0%,rgba(18,20,12,0) 35%,rgba(18,20,12,.25) 70%,rgba(18,20,12,1) 100%)}
.band>*{position:relative}
.band .serif{max-width:20em;margin-top:22px}
.nbrs{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,3vw,36px)}
.nbrs>div{border-top:2px solid var(--green);padding-top:14px}
.nbrs b{display:block;font-stretch:125%;font-weight:800;font-size:18px;text-transform:uppercase;line-height:1.15}
.nbrs span{display:block;font-size:14.5px;color:rgba(239,237,226,.78);margin-top:7px;line-height:1.45}
@media (max-width:900px){.nbrs{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.nbrs{grid-template-columns:1fr}}

/* access */
.t3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,36px);margin-top:30px}
.tier{border-top:2px solid var(--ink);padding-top:14px}
.chipk{display:inline-block;font-weight:800;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;background:var(--ink);color:#fff;padding:5px 10px 4px}
.chipk.g{background:var(--green);color:var(--ink)}
.chipk.r{background:var(--red)}
.tier h4{font-size:17px;font-weight:700;margin-top:16px;line-height:1.3}
.tier p{font-size:14.5px;color:#44463c;line-height:1.45;margin-top:4px}
em.pin{font-style:normal;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-weight:800;font-size:12px;line-height:1;margin-right:8px;vertical-align:2px}
em.pin.g{background:var(--green);color:var(--ink)}
em.pin.r{background:var(--red)}
@media (max-width:800px){.t3{grid-template-columns:1fr}}

/* infrastructure */
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}
.three article{background:#fff;padding:26px 24px 24px;border-top:4px solid var(--green);display:flex;flex-direction:column}
.three .kick{margin-bottom:12px}
.three .kick::before{display:none}
.three h3{font-size:21px;font-weight:700;line-height:1.22}
.three p{font-size:14.5px;color:#44463c;line-height:1.5;margin:12px 0 22px}
.stat{margin-top:auto;border-top:1px solid var(--rule);padding-top:14px}
.stat b{display:block;font-stretch:125%;font-weight:800;font-size:clamp(26px,2.8vw,36px);line-height:1}
.stat span{display:block;font-weight:600;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-top:7px}
.tl{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);margin-top:44px;border-top:3px solid var(--ink)}
.tl li{position:relative;padding:20px 20px 0 0}
.tl li::before{content:"";position:absolute;top:-9px;left:0;width:15px;height:15px;background:var(--green);border:3px solid var(--ink);border-radius:50%}
.tl span{display:block;font-weight:700;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--olive)}
.tl b{display:block;font-stretch:125%;font-weight:800;font-size:20px;text-transform:uppercase;margin:6px 0 4px}
.tl p{font-size:14px;color:#44463c;line-height:1.4}
@media (max-width:900px){.three{grid-template-columns:1fr}.tl{grid-template-columns:1fr 1fr;row-gap:30px;border-top:0}.tl li{border-top:3px solid var(--ink)}}
@media (max-width:480px){.tl{grid-template-columns:1fr}}

/* site conditions (exhibit generated for brochure page 10) */
.cond{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(22px,3vw,44px);align-items:start}
.scrollx{overflow-x:auto}
.tmapw{border-top:2px solid var(--ink);line-height:0;min-width:700px}
.tmap{display:block;width:100%;height:auto;font-family:Archivo,sans-serif}
.tmap .ct{fill:none;stroke:#3a4520;stroke-width:.9;stroke-opacity:.6}
.tmap .ct.ix{stroke-width:1.7;stroke-opacity:.8}
.tmap text{text-anchor:middle}
.tmap .cl{font-size:8.5px;font-weight:600;fill:#3a4520;paint-order:stroke;stroke:#f1efe4;stroke-width:3px;stroke-linejoin:round}
.tmap .ln{font-size:10.5px;font-weight:800;fill:#17180f;paint-order:stroke;stroke:#f4f2e8;stroke-width:3px;stroke-linejoin:round}
.tmap .ln.big{font-size:15px}
.tmap .ls{font-size:7.5px;font-weight:700;letter-spacing:.16em;fill:#17180f;paint-order:stroke;stroke:#f4f2e8;stroke-width:3px}
.tmap .hw{font-size:9.5px;font-weight:700;letter-spacing:.34em;fill:#55564f}
.tmap .fz{font-size:10.5px;font-weight:800;letter-spacing:.14em;fill:#1c4a6e;paint-order:stroke;stroke:#dfe6e2;stroke-width:3px}
.tmap .fs{font-size:7.5px;font-weight:700;letter-spacing:.14em;fill:#1c4a6e;paint-order:stroke;stroke:#dfe6e2;stroke-width:3px}
.tmap .dm{stroke:#17180f;stroke-width:1.2;stroke-dasharray:3 2.5}
.tmap .dl{font-size:8.5px;font-weight:800;letter-spacing:.1em;fill:#17180f;paint-order:stroke;stroke:#e6e4d6;stroke-width:3.5px}
.tmap .sc{font-size:9px;font-weight:700;letter-spacing:.14em;fill:#17180f;text-anchor:start}
.sc3>div{border-top:2px solid var(--ink);padding:13px 0 18px}
.sc3 .kick{display:block;margin-bottom:6px}
.sc3 .kick::before{display:none}
.sc3 b{display:block;font-size:19px;font-weight:700;line-height:1.22}
.sc3 p{font-size:14.5px;line-height:1.5;color:#44463c;margin-top:6px}
.sc3>div:last-child{border-bottom:2px solid var(--ink)}
.inset{display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:18px;align-items:end;margin-top:24px;border-top:1px solid var(--rule);padding-top:18px}
.inset img{display:block;width:100%;height:190px;object-fit:cover;object-position:35% 42%;border:1px solid var(--rule)}
.inset figcaption{font-size:12.5px;line-height:1.45;color:var(--gray);max-width:36ch}
@media (max-width:560px){.inset{grid-template-columns:1fr}}
@media (max-width:1020px){.cond{grid-template-columns:minmax(0,1fr)}}

/* market */
.six{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule-dk);border:1px solid var(--rule-dk)}
.six article{background:var(--ink);padding:26px 24px 24px;display:flex;flex-direction:column}
.six h3{font-size:20px;font-weight:700;line-height:1.22;color:#fff}
.six p{font-size:14.5px;color:rgba(239,237,226,.75);line-height:1.5;margin:10px 0 22px}
.six b{margin-top:auto;font-stretch:125%;font-weight:800;font-size:clamp(34px,4vw,54px);line-height:1;color:var(--green)}
.six span{font-weight:600;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:rgba(239,237,226,.62);margin-top:8px}
@media (max-width:900px){.six{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.six{grid-template-columns:1fr}}

/* trade area */
.ta{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,6vw,84px);align-items:start}
.ta .lead{margin-top:22px}
.bars{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;height:270px;margin-top:34px;align-items:end;border-bottom:2px solid var(--ink)}
.bars>div{height:100%;display:flex;flex-direction:column;justify-content:flex-end;position:relative}
.bars b{font-stretch:125%;font-weight:800;font-size:clamp(17px,2vw,25px);margin-bottom:6px}
.bars i{display:block;height:calc(var(--h)*.74);background:var(--ink)}
.bars .p i{background:var(--green)}
.bars span{position:absolute;top:100%;margin-top:9px;font-weight:600;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gray);white-space:nowrap}
.bars+.cap{margin-top:40px}
.dt{font-size:15px;min-width:440px}
.dt thead th{font-stretch:125%;font-weight:800;font-size:14px;text-transform:uppercase;text-align:right;padding:8px 0;border-bottom:2px solid var(--ink)}
.dt td{padding:9px 0;border-bottom:1px solid var(--rule);text-align:right;font-variant-numeric:tabular-nums}
.dt td:first-child{text-align:left;padding-right:12px}
.dt td:last-child{font-weight:800}
.dt .grp th{font-weight:800;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--olive);text-align:left;padding:18px 0 7px;border-bottom:1px solid var(--ink)}
@media (max-width:900px){.ta{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.dt{min-width:0;font-size:13px}.dt thead th{font-size:11.5px}.lots{font-size:14px}}

/* retail gap */
.ev{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}
.ev article{background:#fff;padding:26px 24px 24px;border-top:4px solid var(--ink)}
.ev article:nth-child(2){border-color:var(--green)}
.ev article.q{background:none;border:1.5px dashed var(--gray);border-top-width:1.5px}
.ev h3{font-stretch:125%;font-weight:800;font-size:20px;text-transform:uppercase}
.ev .src{display:block;font-weight:600;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gray);margin:6px 0 16px;line-height:1.5}
.ev .f{padding:14px 0;border-top:1px solid var(--rule)}
.ev .f b{display:block;font-stretch:125%;font-weight:800;font-size:clamp(26px,2.8vw,36px);line-height:1;text-transform:uppercase}
.ev .f p{font-size:14.5px;color:#44463c;margin-top:6px;line-height:1.4}
.ev .n{font-size:13px;color:var(--gray);border-top:1px solid var(--rule);padding-top:12px;line-height:1.45}
.ev .q p{font-size:15.5px;color:#33352b;line-height:1.5;margin-top:12px}
@media (max-width:900px){.ev{grid-template-columns:1fr}}

/* Elgin */
.elg{display:grid;grid-template-columns:1fr minmax(0,600px);gap:clamp(28px,6vw,84px);align-items:start}
.elg .serif{margin:18px 0 28px}
.cs{border-top:2px solid var(--ink)}
.cs>div{display:grid;grid-template-columns:minmax(120px,210px) 1fr;align-items:center;gap:22px;padding:18px 0;border-bottom:1px solid var(--rule)}
.cs .n{font-stretch:125%;font-weight:800;font-size:clamp(28px,3.4vw,44px);line-height:1}
.cs b{display:block;font-size:17.5px;line-height:1.3}
.cs span{font-size:14px;color:var(--gray);line-height:1.45;display:block;margin-top:2px}
.slot{position:relative;line-height:0}
.slot>.tag{top:0;bottom:auto;z-index:2;line-height:1.3}
.lmap{display:block;width:100%;height:auto;border:1px solid var(--rule)}
.lmap text{font-family:"Archivo",sans-serif}.lmap .sh{font-size:11px;font-weight:800;text-anchor:middle}.lmap .rd{font-size:10.5px;font-weight:600;letter-spacing:.06em;fill:#3a4520}.lmap .res{font-family:"Instrument Serif",serif;font-style:italic;font-size:17px;fill:#3a4520}.lmap .an{font-size:11px;font-weight:800;letter-spacing:.16em;fill:#17180f}.lmap .as{font-size:10.5px;fill:#6f716a}.lmap .st{font-size:12.5px;font-weight:800;letter-spacing:.24em;fill:#17180f;padding:0;background:none}.lmap .sc{font-size:9.5px;font-weight:700;letter-spacing:.2em;fill:#17180f}
@media (max-width:1020px){.elg{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.cs>div{grid-template-columns:1fr;gap:6px}}

/* region */
.reg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(26px,4.5vw,56px);margin-top:30px;align-items:start}
.rmap{display:block;width:100%;height:auto;border:1px solid var(--rule-dk)}
.rmap text{font-family:"Archivo",sans-serif}
.rmap .ring{font-size:10px;font-weight:700;letter-spacing:.2em;fill:rgba(239,237,226,.45)}
.rmap .sh{font-size:11px;font-weight:800;fill:#efede2;text-anchor:middle}
.rmap .tn{font-size:13px;font-weight:800;letter-spacing:.2em;fill:#efede2}
.rmap .em{font-size:12px;font-weight:800;letter-spacing:.14em;fill:#a4ce49}
.rmap .es{font-size:11.5px;font-weight:500;fill:rgba(239,237,226,.75)}
.rmap .st{font-size:12.5px;font-weight:800;letter-spacing:.24em;fill:#17180f;padding:0;background:none}
.rmap .dir{font-size:11px;font-weight:700;letter-spacing:.5em;fill:rgba(239,237,226,.35)}
.rmap .co{font-size:10px;font-weight:700;letter-spacing:.4em;fill:rgba(239,237,226,.3)}
.rmap .tn2{font-size:10.5px;font-weight:700;letter-spacing:.2em;fill:rgba(239,237,226,.72)}.rmap .au{font-size:19px;font-weight:800;font-stretch:125%;letter-spacing:.2em;fill:#fff}.rmap .dr{font-size:13px;font-weight:800;letter-spacing:.16em;fill:#fff}.rmap .ds2{font-size:11.5px;font-weight:600;fill:#a4ce49}.rmap .dl{font-size:9.5px;font-weight:800;letter-spacing:.12em;fill:#a4ce49}
.rmap .mn{font-size:14.5px;font-weight:800;font-stretch:125%;letter-spacing:.2em;fill:#fff}.rmap .tn3{font-size:11.5px;font-weight:800;letter-spacing:.2em;fill:#efede2}
.reg .serif{margin-bottom:14px}
.dist4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px;border-top:2px solid var(--green);padding-top:16px}
.dist4 b{display:block;font-stretch:125%;font-weight:800;font-size:clamp(30px,3.6vw,46px);line-height:1;color:#fff}
.dist4 small{font-size:.36em;letter-spacing:.14em;margin-left:5px;color:var(--green)}
.dist4 i{display:block;font-style:normal;font-weight:800;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;margin-top:8px}
.dist4 span{display:block;font-size:12px;color:rgba(239,237,226,.6)}
.regc{margin-top:26px}
.regc>div{border-top:1px solid var(--rule-dk);padding:16px 0}
.regc .kick{margin-bottom:6px;font-size:10.5px}
.regc .kick::before{display:none}
.regc h4{font-size:18px;font-weight:700;color:#fff}
.regc p{font-size:14.5px;color:rgba(239,237,226,.75);line-height:1.5;margin-top:5px}
@media (max-width:900px){.reg{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.dist4{grid-template-columns:1fr 1fr;row-gap:20px}}

/* contact */
.contact::before{background:linear-gradient(180deg,rgba(18,20,12,.84) 0%,rgba(18,20,12,.55) 45%,rgba(18,20,12,.93) 100%)}
.contact h2.disp{font-size:clamp(44px,8.4vw,116px)}
.brokers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,56px);margin-top:clamp(36px,5vw,64px);border-top:2px solid var(--green);padding-top:22px}
.brokers span{display:block;font-weight:700;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--green);margin-bottom:8px}
.brokers b{display:block;font-stretch:125%;font-weight:800;font-size:clamp(22px,2.4vw,30px);text-transform:uppercase;line-height:1.1}
.brokers i{display:block;font-style:normal;color:rgba(239,237,226,.75);margin:4px 0 10px}
.brokers a:not(.btn){display:block;width:fit-content;font-weight:600;font-size:17px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35);margin-top:6px;padding-bottom:1px}
.brokers a:not(.btn):hover{border-color:var(--green);color:var(--green)}
.brokers em{display:block;font-style:normal;font-weight:600;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:rgba(239,237,226,.6);margin-top:14px}
@media (max-width:760px){.brokers{grid-template-columns:1fr}}

/* footer */
.ft{background:var(--ink);color:rgba(239,237,226,.75);padding:36px 0 44px;font-size:13px;border-top:1px solid var(--rule-dk)}
.ft .row{display:flex;align-items:center;gap:18px 28px;flex-wrap:wrap}
.ft .brand{color:#fff}
.ft a{color:var(--cream)}
.trec{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px 28px;font-size:14px;font-weight:600}
.fine{margin-top:20px;font-size:11.5px;line-height:1.5;color:rgba(239,237,226,.5);max-width:150ch}

/* IABS page */
.doc{padding:calc(var(--hd) + var(--rv) + 40px) 0 80px}
.doc h1{font-size:clamp(26px,4vw,44px)}
.doc .intro{color:var(--gray);margin:12px 0 34px;max-width:90ch}
.iabs{columns:2 380px;column-gap:56px;font-size:15px;line-height:1.55}
.iabs p{margin-bottom:14px;break-inside:avoid}
.iabs .t{font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.lic{margin-top:30px;font-size:14.5px;min-width:640px}
.lic th{font-weight:700;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gray);text-align:left;padding:9px 12px 9px 0;border-bottom:2px solid var(--ink)}
.lic td{padding:10px 12px 10px 0;border-bottom:1px solid var(--rule)}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.hd,.rv,.burger{display:none}.hero{min-height:0}}
.ta h2.disp,.elg h2.disp{font-size:clamp(30px,4vw,56px)}
@media (max-width:520px){body.review .rv{font-size:9.5px;letter-spacing:.12em}.rv span{display:none}}
