/* Additions for the CMS version: real images inside placeholders, video modal, form states */
img.fill{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.ph>img.fill~.lbl,.media>img.fill~.ph{display:none}
.media>img.fill{z-index:0}
.media>img.fill+.tone{display:none}
.ph:has(>img.fill)::after{opacity:.06}
/* video modal */
.vmx{position:fixed;inset:0;z-index:120;background:rgba(20,16,13,.88);display:grid;place-items:center;padding:60px 20px;opacity:0;transition:opacity .25s}
.vmx.open{opacity:1}
.vmx[hidden]{display:none}
.vmx .x{position:absolute;right:20px;top:18px;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:18px;border:0;cursor:pointer}
.vmx .x:hover{background:#fff;color:#26211D}
.vmx .fr{width:min(1100px,100%);aspect-ratio:16/9;background:#000;border-radius:16px;overflow:hidden;position:relative}
.vmx .fr iframe,.vmx .fr video{position:absolute;inset:0;width:100%;height:100%;border:0}
.vmx .soon{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#F7F3EE;text-align:center;padding:20px;background:radial-gradient(60% 60% at 50% 40%,#5E5348,#26211D)}
.vmx .soon b{font-family:var(--serif,Georgia);font-weight:300;font-size:30px}
.vmx .soon span{font-size:14px;opacity:.7}
/* form feedback */
.form-msg{margin-top:14px;padding:12px 16px;border-radius:12px;background:#FBEAEA;color:#8A1C1C;font-size:14px;line-height:1.5}
button[disabled],.btn[disabled]{opacity:.6;pointer-events:none}
.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
/* rich text (news, legal pages) */
.rich h2,.rich h3{font-family:var(--serif);font-weight:400;line-height:1.15;margin:34px 0 12px}
.rich h2{font-size:32px}.rich h3{font-size:26px}
.rich p{line-height:1.8;margin:0 0 18px}
.rich ul,.rich ol{margin:0 0 18px 22px;line-height:1.8}
.rich ul{list-style:disc}.rich ol{list-style:decimal}
.rich a{text-decoration:underline}
.rich img{max-width:100%;height:auto;border-radius:16px;margin:10px 0}
.rich table{border-collapse:collapse;width:100%;margin:0 0 18px}
.rich td,.rich th{border:1px solid var(--stone,#D9CFC3);padding:8px 12px;text-align:left}
/* legal / 404 */
.lg{padding:46px 0 120px;background:var(--white)}
.lg .in{max-width:760px}
.lg h1{font-family:var(--serif);font-weight:300;font-size:clamp(44px,6vw,76px);line-height:1;margin:34px 0 10px}
.lg .upd{font-size:13px;color:var(--taupe);margin-bottom:40px;display:block}
.lg .rich{color:var(--taupe-d);font-size:16.5px}
.lg .rich p.first{font-size:19px;color:var(--ink)}
.nf{min-height:60vh;display:flex;align-items:center;background:var(--white);padding:80px 0}
.nf b{font-family:var(--serif);font-weight:300;font-size:160px;line-height:1;color:var(--sand);display:block}
.nf h1{font-family:var(--serif);font-weight:300;font-size:48px;margin:10px 0 14px}
.nf p{color:var(--taupe-d);margin-bottom:28px}
.nf .act{display:flex;gap:12px;flex-wrap:wrap}
.nf .btn.o{color:var(--ink);border-color:var(--stone)}
@media (min-width:1101px){.a-tl{grid-template-columns:repeat(var(--n,9),1fr)}}
