@font-face{font-family:'PP Fragment';src:url(../fonts/PPFragment-SerifLight.otf) format('opentype');font-weight:300;font-display:swap}
@font-face{font-family:'PP Fragment';src:url(../fonts/PPFragment-SerifRegular.otf) format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:'Neue Haas Display';src:url(../fonts/NeueHaasDisplay-Light.ttf) format('truetype');font-weight:300;font-display:swap}
@font-face{font-family:'Neue Haas Display';src:url(../fonts/NeueHaasDisplay-Roman.ttf) format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Neue Haas Display';src:url(../fonts/NeueHaasDisplay-Medium.ttf) format('truetype');font-weight:500 700;font-display:swap}
.riva a{color:#456B5C}.riva a:hover{color:#2F4C40}
.serif{font-family:'PP Fragment',Georgia,'Times New Roman',serif}
.riva *{box-sizing:border-box}
.riva button{font-family:inherit}
.riva-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:stretch}
@media (max-width:1080px){.riva-workspace{grid-template-columns:minmax(0,1fr)}}
/* Elementor boxes its widgets at 1140px; give the two-panel selector its own desktop width. */
@media (min-width:1081px){.riva-pad{width:calc(100vw - 48px);max-width:1640px;margin-left:calc(50% - 50vw + 24px)}}
@media (min-width:1688px){.riva-pad{margin-left:calc(50% - 820px)}}
@media (min-width:1081px) and (max-width:1280px){
.riva-workspace .grid{grid-template-columns:34px 46px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr) minmax(0,1.6fr);column-gap:4px}
.riva-workspace .thead{padding-right:68px !important}
.riva-workspace .rowwrap .row{padding-right:68px}
.riva-workspace .rowwrap .st{font-size:11px;gap:4px}
.riva-workspace .rowwrap .fav{right:36px}
.riva-workspace .rowwrap .chev{right:8px}
}
.riva-overlay-root{position:fixed;inset:0;z-index:2147483000;pointer-events:none;font-family:'Neue Haas Display',system-ui,sans-serif;color:#3A281E}
.riva-overlay-root .fv,.riva-overlay-root .fm{pointer-events:auto}
.chip{min-height:36px;padding:0 14px;border-radius:999px;border:1px solid #D6CBB8;background:#fff;color:#3A281E;font-size:13px;font-weight:500;display:inline-flex;align-items:center;gap:7px;cursor:pointer}
.chip:hover{border-color:#9B8464}
.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}
.chip .dot{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.18)}
.seg{display:inline-flex;border:1px solid #D6CBB8;border-radius:999px;padding:3px;background:#fff}
.seg button{min-height:34px;min-width:44px;border:0;border-radius:999px;background:transparent;color:#4E3D31;font-size:13px;font-weight:600;cursor:pointer}
.seg button.on{background:#3A281E;color:#fff}
.glass{background:rgba(251,248,243,.94);border:1px solid #DCD1C0;border-radius:12px}
.crumb{min-height:36px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#3A281E;font-size:13px;font-weight:600;cursor:pointer}
.crumb:hover{background:#F1EBE0}
.crumb.cur{display:inline-flex;align-items:center;cursor:default;color:#6E5B4A;font-weight:500}
.floor{min-height:38px;width:56px;padding:0 6px;justify-content:center !important;border:1px solid transparent;border-radius:8px;background:transparent;color:#3A281E;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
.floor:hover{background:#F1EBE0}
.floor.on{background:#3A281E;color:#fff}
.floor .cnt{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#6B8C94;color:#FBF8F3;font-size:10px;font-weight:500;display:inline-flex;align-items:center;justify-content:center}
.ctl{width:44px;height:44px;border:0;background:transparent;color:#3A281E;display:flex;align-items:center;justify-content:center;cursor:pointer}
.viewer .ctls .ctl{width:40px;height:42px}
.ctl:hover{background:#F1EBE0}
.btag{position:absolute;left:0;top:0;pointer-events:none;padding:5px 9px;border-radius:7px;background:#3A281E;color:#fff;font-size:12px;font-weight:700;letter-spacing:.04em;white-space:nowrap;transition:opacity .2s}
.tip{position:absolute;left:0;top:0;pointer-events:none;min-width:150px;max-width:240px;padding:10px 12px;border-radius:10px;background:#3A281E;color:#fff;font-size:12px;line-height:1.45;transition:opacity .12s;z-index:4}
.pin{position:absolute;left:0;top:0;pointer-events:none;padding:4px 9px;border-radius:999px;background:#fff;color:#3A281E;border:2px solid var(--accent);font-size:12px;font-weight:700;white-space:nowrap;z-index:3}
.card{position:absolute;top:16px;right:16px;width:350px;max-width:calc(100% - 32px);z-index:5;padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 8px 28px rgba(58,40,30,.12)}
.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#F1EBE0;color:#3A281E}
.btn{display:flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:10px;background:var(--accent);color:#fff;font-size:14px;font-weight:600;text-decoration:none}
.btn:hover{color:#fff;filter:brightness(.92)}
.x{width:44px;height:44px;margin:-10px -10px 0 0;border:0;border-radius:10px;background:transparent;color:#3A281E;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.x:hover{background:#F1EBE0}
.link{min-height:36px;border:0;background:transparent;color:#456B5C;font-size:13px;font-weight:600;text-decoration:underline;cursor:pointer;padding:0 4px}
.fl{font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:#6E5B4A}
.grid{display:grid;grid-template-columns:44px 52px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr) minmax(0,1.3fr);align-items:center;column-gap:8px}
.dgrid > span{text-align:center;min-width:0}
.dgrid .st{min-width:0;overflow:hidden;text-overflow:ellipsis;justify-content:center}
.thead > div{display:flex;justify-content:center;min-width:0}
.th{min-height:48px;width:100%;padding:8px 0;border:0;background:transparent;color:#4E3D31;font-size:11.5px;font-weight:500;line-height:1.2;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;cursor:pointer;white-space:normal}
.th,.th.r{align-items:center;text-align:center}
.thu{font-size:10.5px;font-weight:400;color:#7F6D5C}
.th:hover{color:#3A281E}
.row{width:100%;min-height:42px;padding:0 20px;border:0;border-bottom:1px solid #ECE4D8;background:#fff;color:#3A281E;font-size:13px;text-align:left;cursor:pointer}
.row:hover,.row.hov{background:#F4EFE6}
.row.sel{background:#E2E9E3;box-shadow:inset 3px 0 0 var(--accent)}
.row .lotn{font-weight:700}
.row .r{text-align:center;font-variant-numeric:tabular-nums}
.st{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.st .dot{width:9px;height:9px;border-radius:50%;flex:none;border:1px solid rgba(0,0,0,.15)}
.demo{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:#E6DCCB;color:#5A4535;font-size:12px;font-weight:600}
.riva input[type=range]{accent-color:var(--accent)}
.ring{transform:rotate(var(--a,0rad))}
.rl{position:absolute;transform:translate(-50%,-50%) rotate(calc(var(--a,0rad) * -1));font-size:11px;font-weight:700;color:#3A281E;line-height:1}
.rl.n{color:var(--accent);font-size:13px}
.atag{position:absolute;left:0;top:0;pointer-events:none;padding:4px 8px;border-radius:6px;background:rgba(251,248,243,.95);border:1px solid #D6CBB8;color:#3A281E;font-size:11px;font-weight:700;white-space:nowrap;z-index:3}
.atag.on{background:var(--accent);border-color:var(--accent);color:#fff}
.ctl[aria-pressed=true]{background:#3A281E;color:#fff}
.street{position:absolute;left:0;top:0;pointer-events:none;font-size:11px;font-style:italic;font-weight:500;color:#6E5B4A;white-space:nowrap;letter-spacing:.02em;text-shadow:0 0 3px #EAE2D5,0 0 3px #EAE2D5,0 0 2px #EAE2D5;z-index:1}
.ringtag{position:absolute;left:0;top:0;pointer-events:none;padding:3px 9px;border-radius:999px;background:#FBF8F3;border:1.5px solid #6B8C94;color:#3A281E;font-size:11px;font-weight:700;white-space:nowrap;z-index:2}
.poi{position:absolute;left:0;top:0;pointer-events:none;display:flex;align-items:center;gap:6px;padding:4px 9px 4px 6px;border-radius:999px;background:rgba(251,248,243,.95);border:1px solid #D6CBB8;font-size:11px;font-weight:600;color:#3A281E;white-space:nowrap;z-index:2}
.poi.on{background:#3A281E;color:#fff;border-color:#3A281E;z-index:3}
.pdot{width:10px;height:10px;border-radius:50%;flex:none;border:1px solid rgba(255,255,255,.8)}
.pmin{font-weight:500;opacity:.72;white-space:nowrap}
.prow{width:100%;min-height:44px;display:flex;align-items:center;gap:9px;padding:6px 8px;border:0;border-radius:8px;background:transparent;font-size:13px;font-weight:600;color:#3A281E;cursor:pointer}
.prow:hover{background:#F1EBE0}
.prow.on{background:#E2E9E3}
.stav{position:absolute;left:0;top:0;pointer-events:none;display:flex;align-items:center;gap:9px;padding:8px 14px;border-radius:999px;background:#FFFFFF;border:1.5px solid #4A9787;box-shadow:0 6px 18px rgba(58,40,30,.16);z-index:3}
.stav::after{content:"";position:absolute;left:50%;top:100%;width:1.5px;height:22px;background:#4A9787}
.stav .by{font-family:'Nunito','Varela Round',system-ui,sans-serif;font-size:13px;font-weight:800;letter-spacing:.06em;color:#111111;line-height:1}
.acts{display:flex;flex-direction:column;gap:8px}
.acts2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.card .acts2>button:last-child:nth-child(3){grid-column:1/-1}
.card .btn,.card .btn2{min-width:0;min-height:39px;padding:7px 10px;font-size:12.5px !important;font-weight:500;line-height:1.2;text-align:center;white-space:normal}
.card .btn svg,.card .btn2 svg{width:15px;height:15px}
.card .btn::after{content:none !important;display:none !important}
.btn{gap:8px}
.btn svg,.btn2 svg{width:16px;height:16px;flex:none}
.btn2{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 12px;border-radius:10px;border:1px solid #CDBFA9;background:#FBF8F3;color:#3A281E;font-size:13px;font-weight:500;text-decoration:none;cursor:pointer;font-family:inherit}
.btn2:hover{border-color:#3A281E;color:#3A281E}
.filters{display:flex;flex-direction:column;gap:14px}
.ftoggle{display:none}
.rowwrap{border-bottom:1px solid #ECE4D8}
.rowwrap .row{border-bottom:0;position:relative;padding:0 40px 0 16px}
.chev{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;border:1px solid #D6CBB8;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1;color:#6E5B4A}
.row.sel .chev{background:#3A281E;border-color:#3A281E;color:#FBF8F3}
.mrow{display:none}
.detail{padding:4px 20px 20px;background:#F4EFE6;display:flex;flex-direction:column;gap:16px;border-top:1px solid #E4DBCD}
.gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:14px}
.gt{margin:0;display:flex;flex-direction:column;gap:5px;min-width:0}
.gt img,.gph{width:100%;aspect-ratio:4/3;border-radius:8px;object-fit:cover;display:block}
.gph{background:#E9E1D4;border:1px dashed #CDBFA9;color:#9B8464;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px}
.gt figcaption,.plan figcaption{font-size:11px;color:#6E5B4A}
.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.plan{margin:0;padding:10px;background:#FBF8F3;border:1px solid #E4DBCD;border-radius:10px;display:flex;flex-direction:column;gap:6px}
.plan svg{width:100%;height:170px;display:block}
.plan figcaption{display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap}
.facts{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.facts dt{font-size:11px;color:#6E5B4A}
.facts dd{margin:2px 0 0;font-size:14px;font-weight:500}
.facts dd.strong{font-weight:700}
.detail .ref{font-size:11px;color:#7F6D5C}
.mediawrap{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:12px;align-items:start}
.mediawrap .mtabs{flex-direction:column;flex-wrap:nowrap}
.mediawrap .mtab{width:100%;padding:0 10px;font-size:12px}
.media{position:relative;aspect-ratio:4/3;max-height:300px;border-radius:6px;overflow:hidden;background:#FFFFFF;border:1px solid #E4DBCD}
@media (max-width:900px){
.mediawrap{grid-template-columns:minmax(0,1fr);gap:10px}
.mediawrap .media{aspect-ratio:4/3;max-height:none}
.mediawrap .mtabs{flex-direction:row;flex-wrap:wrap}
.mediawrap .mtab{width:auto;flex:1 1 100px;padding:0 8px}
}
.mnav{transform:scale(.85);transform-origin:bottom right}
.mzoom{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.mhint{position:absolute;left:10px;top:10px;width:28px;height:28px;border-radius:50%;background:rgba(251,248,243,.92);color:#3A281E;display:flex;align-items:center;justify-content:center;pointer-events:none}
.lb{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px}
.lbbg{position:absolute;inset:0;border:0;padding:0;background:rgba(30,22,17,.84);cursor:zoom-out}
.lbimg{position:relative;max-width:min(1400px,92vw);max-height:84vh;object-fit:contain;border-radius:6px;background:#FFFFFF;box-shadow:0 20px 60px rgba(0,0,0,.4)}
.lbx{position:absolute;top:16px;right:16px;width:48px;height:48px;border-radius:50%;border:0;background:#FBF8F3;color:#3A281E;display:flex;align-items:center;justify-content:center;cursor:pointer}
.sitehd{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:22px 48px;background:#F6F5F2}
.hamb{justify-self:start;width:40px;height:40px;padding:0;border:0;background:none;display:flex;flex-direction:column;justify-content:center;gap:8px;cursor:default}
.hamb span{display:block;width:32px;height:2px;background:#1E1A17}
.hamb span:last-child{width:32px}
.sitelogo{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:#1E1A17}
.sitesub{font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;color:#1E1A17}
.sitenav{justify-self:end;display:flex;align-items:center;gap:34px}
.navlink{font-size:19px;font-weight:500;text-transform:uppercase;letter-spacing:-.01em;color:#1E1A17;white-space:nowrap}
.navcta{min-height:60px;padding:0 34px;border:0;border-radius:4px;background:#000000;color:#FFFFFF;font:inherit;font-size:19px;font-weight:500;text-transform:uppercase;cursor:pointer}
.navcta:hover{background:#2A2420}
.navlang{position:relative;display:flex;align-items:center;gap:8px;color:#1E1A17;cursor:pointer}
.navlang select{appearance:none;-webkit-appearance:none;border:0;background:transparent;font:inherit;font-size:19px;font-weight:500;color:#1E1A17;padding:6px 22px 6px 0;margin-right:-22px;cursor:pointer}
.navlang svg{pointer-events:none}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pagehd{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;padding:48px 16px 36px}
.pagetitle{margin:0;font-size:62px;line-height:1.05;font-weight:400;text-transform:uppercase;letter-spacing:-.005em;color:#A8957F;text-wrap:balance}
.pagerule{width:min(500px,60%);height:2px;margin:36px 0 34px;background:#B9A88F}
.pagesub{margin:0;font-size:24px;font-weight:400;line-height:1.4;color:#A8957F;max-width:62ch}
@media (max-width:1100px){.sitehd{padding:18px 24px}.navlink{display:none}.navcta{min-height:48px;padding:0 22px;font-size:16px}.navlang select{font-size:16px}.pagetitle{font-size:44px}.pagesub{font-size:19px}}
@media (max-width:720px){.sitehd{grid-template-columns:40px 1fr auto;padding:14px 16px;gap:10px}.sitelogo svg{width:104px;height:28px}.sitesub{font-size:8px}.navcta{display:none}.sitenav{gap:0}.pagehd{padding:28px 16px 22px}.pagetitle{font-size:30px}.pagerule{margin:20px 0 18px}.pagesub{font-size:16px}}
.fv{position:fixed;inset:0;z-index:65;display:flex;flex-direction:column}
.fvbar{position:relative;z-index:1;display:flex;align-items:center;gap:10px;padding:12px 16px;background:#FBF8F3;border-bottom:1px solid #DCD1C0;flex-wrap:wrap}
.fvtitle{font-size:20px;font-weight:300;color:#3A281E}
.riva-overlay-root .fvbar .fvbtn{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:40px;padding:0 16px;border-radius:999px;border:1px solid #CDBFA9;background:transparent;color:#3A281E;font:inherit;font-size:13px;line-height:1.2;text-align:center;text-decoration:none;white-space:nowrap;box-sizing:border-box;cursor:pointer}
.fvbtn:hover{border-color:#3A281E}
.fvx{width:40px;height:40px;border-radius:50%;border:0;background:#EFE8DD;color:#3A281E;display:flex;align-items:center;justify-content:center;cursor:pointer}
.fvpages{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;gap:18px;padding:22px 16px 40px;background:rgba(30,22,17,.82)}
.fvpdf{display:block;width:min(1000px,100%);height:100%;min-height:70vh;border:0;border-radius:4px;background:#FFFFFF;box-shadow:0 12px 40px rgba(0,0,0,.35)}
.fvpage{display:block;width:min(820px,100%);height:auto;background:#FFFFFF;border-radius:4px;box-shadow:0 12px 40px rgba(0,0,0,.35)}
.lbnav{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:6px;border-radius:999px;background:rgba(58,40,30,.7)}
.fm{position:fixed;inset:0;z-index:70;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px 24px;overflow-y:auto;box-sizing:border-box}
.fmbg{position:fixed;inset:0;border:0;padding:0;background:rgba(30,22,17,.55);cursor:default}
.fmcard{position:relative;width:100%;max-width:680px;background:#FBF8F3;border-radius:18px;padding:36px 40px 40px;box-sizing:border-box;box-shadow:0 24px 70px rgba(30,22,17,.28);color:#3A281E}
.fmhead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}
.fmkick{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#6E5B4A}
.fmtitle{margin:8px 0 0;font-size:30px;font-weight:300;line-height:1.15;text-wrap:balance}
.fmback{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 18px;border-radius:999px;border:1px solid #CDBFA9;background:transparent;color:#3A281E;font:inherit;font-size:14px;cursor:pointer}
.fmback:hover{border-color:#3A281E}
.fmform{display:flex;flex-direction:column;gap:18px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.fld{display:flex;flex-direction:column;gap:7px;min-width:0}
.flbl{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#6E5B4A}
.fin{width:100%;box-sizing:border-box;min-height:48px;padding:12px 14px;border:1px solid #D9CDBB;border-radius:10px;background:#FFFFFF;color:#3A281E;font:inherit;font-size:15px}
.fin:focus{outline:none;border-color:#4A6A72;box-shadow:0 0 0 3px rgba(107,140,148,.22)}
.fin.bad{border-color:#A3443A}
.fta{resize:vertical;min-height:110px;line-height:1.5}
.ferr{min-height:0;font-size:12.5px;color:#A3443A}
.ferr:empty{display:none}
.fhp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.fok{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.5;color:#3A281E;cursor:pointer}
.fok input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:#4A6A72}
.fok a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.fok.bad input{outline:2px solid #A3443A;outline-offset:1px}
.fsubmit{width:100%;min-height:54px;border:0;border-radius:999px;background:#3E4F55;color:#FBF8F3;font:inherit;font-size:13.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.fsubmit:hover{filter:brightness(1.1)}
.fsubmit[disabled]{opacity:.6;cursor:progress}
.fdone{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.fcheck{width:52px;height:52px;border-radius:50%;background:#E4ECEE;color:#4A6A72;display:flex;align-items:center;justify-content:center}
@media (max-width:600px){.fmcard{padding:24px 20px 28px;border-radius:14px}.fgrid{grid-template-columns:1fr}.fmtitle{font-size:24px}.fmhead{flex-direction:column-reverse}.fm{padding-top:16px}}
.riva .media .mzoom .mimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.riva .media .mzoom .mplan{object-fit:contain;padding:12px;box-sizing:border-box;background:#FFFFFF}
.msit{width:100%;height:100%;display:block;padding:16px;box-sizing:border-box;background:#FBF8F3}
.mnorth{position:absolute;right:14px;top:12px;font-size:11px;color:#6E5B4A}
.mnav{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:10px;padding:6px;border-radius:999px;background:rgba(58,40,30,.62)}
.mcount{font-size:13px;color:#FBF8F3;min-width:36px;text-align:center;font-variant-numeric:tabular-nums}
.mbtn{width:40px;height:40px;border-radius:50%;border:0;background:#FBF8F3;color:#3A281E;display:flex;align-items:center;justify-content:center;cursor:pointer}
.mtabs{display:flex;gap:8px;flex-wrap:wrap}
.mtab{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid #CDBFA9;background:transparent;color:#3A281E;font-family:inherit;font-size:13px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.mtab:hover{border-color:#3A281E}
.mtab.on{background:#4A6A72;border-color:#4A6A72;color:#FBF8F3}
.facts3{margin:4px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 14px}
.facts3 dt{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#577780}
.facts3 dd{margin:4px 0 0;font-size:18px;font-weight:300;color:#3A281E;font-variant-numeric:tabular-nums}
.extra{margin:0;font-size:12px;color:#6E5B4A;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid #CDBFA9;background:transparent;color:#3A281E;text-decoration:none;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.pill:hover{border-color:#3A281E;color:#3A281E}
.pill.dark{background:#4A6A72;border-color:#4A6A72;color:#FBF8F3}
.pill.dark:hover{color:#FBF8F3;filter:brightness(.92)}
.pcat{display:block;font-size:11px;font-weight:500;color:#6E5B4A}
@media (pointer:coarse){.chip{min-height:44px}.crumb{min-height:44px}.floor{min-height:44px}.row{min-height:48px}}
@media (max-width:720px){
.riva-pad{padding:0 0 32px !important}.riva-in{padding:0 16px !important}
.riva-h1{font-size:28px !important}
.viewer{height:470px !important}
.panel{height:auto !important;max-height:none !important}
.tbody{max-height:none;overflow:visible !important}
.ftoggle{display:inline-flex}
.filters.closed{display:none}
.thead{display:none !important}
.dgrid{display:none}
.mrow{display:flex;flex-direction:column;gap:3px;padding:10px 0}
.m1{display:flex;align-items:center;gap:10px}
.m1 .lotn{font-size:16px}
.m1 .mty{color:#6E5B4A;flex:1}
.m2{font-size:12px;color:#6E5B4A;font-variant-numeric:tabular-nums}
.detail{padding:4px 12px 16px}
.plan svg{height:140px}
.facts3{grid-template-columns:repeat(2,minmax(0,1fr))}
.facts3 dd{font-size:16px}
.pill{flex:1 1 auto}
.acts2{grid-template-columns:1fr 1fr}
.card{left:12px;right:12px;width:auto;max-width:none;top:auto;bottom:12px;padding:16px}
.floors{top:64px !important;transform:none !important;left:12px !important}
.hint{display:none !important}
.poilist{display:none !important}
.poi .plab{display:none}
.legend{left:12px !important;bottom:12px !important;max-width:calc(100% - 80px) !important}
.ctls{right:12px !important;bottom:12px !important;flex-direction:column}
.rose{top:64px !important;bottom:auto !important;right:12px !important;transform:scale(.8);transform-origin:top right}
.row{padding:0 12px}
.thead{padding:0 12px !important}
.grid{grid-template-columns:34px 48px minmax(0,1fr) 0 46px minmax(0,1.3fr) minmax(0,1.2fr);column-gap:4px}
.ppe{visibility:hidden}
}
/* intégration site : en-tête masqué quand le site fournit déjà le sien */
.riva-noheader .sitehd,.riva-noheader .pagehd{display:none}
.riva-noheader .riva-pad{padding-top:24px !important}
.riva-nopdf .fvsave{display:none}

/* ===== RIVA v2 : Mes choix, comparatif, parking, étiquettes ===== */
.navfav{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border:1px solid #CDBFA9;border-radius:999px;background:#FBF8F3;color:#1E1A17;font:inherit;font-size:15px;font-weight:500;cursor:pointer;white-space:nowrap}
.navfav:hover{border-color:#1E1A17}
.navfav.has{background:#3A281E;border-color:#3A281E;color:#FBF8F3}
.navfav.has svg{fill:currentColor}
.navfav.pulse{animation:rivaPulse .6s ease}
@keyframes rivaPulse{0%{transform:scale(1)}40%{transform:scale(1.08)}100%{transform:scale(1)}}
.rowwrap{position:relative}
.rowwrap .row{padding:0 76px 0 16px}
.fav{position:absolute;right:40px;top:21px;transform:translateY(-50%);width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#9B8464;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.fav:hover{background:#F1EBE0;color:#3A281E}
.fav.on{color:#B4533C}
.fav.on svg,.favbtn.on svg,.favpill.on svg,.favchip.on svg{fill:currentColor}
.favlegend{display:inline-flex;align-items:center;gap:7px;color:#B4533C;font-size:12px;font-weight:500;white-space:nowrap}
.row.faved .lotn::after{content:'';display:inline-block;width:6px;height:6px;margin-left:5px;border-radius:50%;background:#B4533C;vertical-align:middle}
.favbtn svg,.favpill svg,.favchip svg{width:16px;height:16px}
.favbtn.on{border-color:#B4533C;color:#B4533C}
.favpill.on{border-color:#B4533C;color:#B4533C}
.favchip{min-height:32px;padding:0 12px;font-size:12px;white-space:nowrap}
.favchip.on{background:#B4533C;border-color:#B4533C;color:#fff}
.favtoast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:80;max-width:min(92vw,520px);padding:12px 18px;border-radius:999px;background:#3A281E;color:#FBF8F3;font-size:14px;line-height:1.35;box-shadow:0 12px 30px rgba(30,22,17,.25);text-align:center}
.favcard{max-width:980px}
.favcount{margin:6px 0 0;font-size:14px;color:#6E5B4A}
.favempty{margin:0 0 8px;font-size:15px;line-height:1.55;color:#4E3D31;max-width:56ch}
.fcmp{border:1px solid #E4DBCD;border-radius:12px;overflow:hidden;background:#fff}
.frow{display:grid;column-gap:12px;align-items:center;padding:10px 16px;border-bottom:1px solid #EFE8DC}
.frow:last-child{border-bottom:0}
.frow.fhead{align-items:start;background:#F7F3EC;padding:14px 16px}
.flab{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6E5B4A}
.fcell{font-size:14px;font-weight:500;color:#3A281E;font-variant-numeric:tabular-nums}
.fcell.best{font-weight:700;color:#456B5C}
.fcol{min-width:0;display:flex;flex-direction:column;gap:4px}
.fcolt{display:flex;align-items:center;gap:8px;font-size:18px;line-height:1.15}
.fcolt .dot{width:10px;height:10px;border-radius:50%;flex:none}
.fcolt .serif{flex:1;min-width:0}
.fx{width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:#6E5B4A;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.fx:hover{background:#F1EBE0;color:#3A281E}
.fsub{font-size:12px;color:#6E5B4A}
.fplan{width:100%;height:120px;object-fit:contain;background:#fff;border:1px solid #EFE8DC;border-radius:8px;margin-top:6px}
.facts{display:flex;flex-direction:column;gap:6px}
.factsrow{background:#FBF8F3}
.favfoot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}
.favfoot .btn{min-height:44px}
.favnote{margin:14px 0 0;font-size:12px;color:#7F6D5C}
.v2tag{position:absolute;left:0;top:0;pointer-events:none;padding:4px 9px;border-radius:999px;background:rgba(251,248,243,.95);border:1px solid #D6CBB8;color:#3A281E;font-size:11px;font-weight:600;white-space:nowrap;z-index:2;transition:opacity .25s}
.v2tag.v2-estavia{border-color:#9B8464}
.v2tag.v2-play,.v2tag.v2-balance{border-color:#8FA56E;background:#F3F6EC}
.v2tag.v2-ramp,.v2tag.v2-park,.v2tag.v2-visit{background:#3A281E;border-color:#3A281E;color:#FBF8F3}
.v2tag.v2-train{border-color:#D52B1E}
.v2tag.v2-bus{border-color:#E9B949}
@media (max-width:720px){
  .navfav span{display:none}
  .navfav{min-height:44px;width:44px;padding:0;justify-content:center}
  .frow{padding:10px;column-gap:8px}
  .fcolt{font-size:16px}
  .fplan{height:80px}
  .flab{font-size:10px}
  .fcell{font-size:12px}
  .favcard{padding:22px 14px 24px}
}
@media print{
  body.riva-print-fav *{visibility:hidden}
  body.riva-print-fav .favpanel,body.riva-print-fav .favpanel *{visibility:visible}
  body.riva-print-fav .favpanel{position:absolute;inset:0;padding:0;overflow:visible}
  body.riva-print-fav .favpanel .fmbg,body.riva-print-fav .noprint{display:none !important}
  body.riva-print-fav .favcard{box-shadow:none;max-width:none}
}
