.danrigo-card { cursor: pointer; outline: none; }
.danrigo-card:focus-visible { box-shadow: 0 0 0 3px #292725; }
.danrigo-details { color: #292725 !important; opacity: 1 !important; pointer-events: none; }
.danrigo-card:hover .danrigo-details { text-decoration-thickness: 2px; }
.danrigo-modal { inset: 0 !important; transform: none !important; width: 100% !important; max-width: none !important; max-height: none !important; height: 100% !important; margin: 0 !important; padding: 24px; display: flex !important; align-items: center !important; justify-content: center !important; background: rgba(25,23,22,.74); border-radius: 0 !important; box-shadow: none !important; overflow: auto; }
.danrigo-modal[hidden] { display: none !important; }
.danrigo-modal-panel { position: relative; flex: 0 1 1180px; width: min(1180px,100%) !important; max-width: 1180px !important; max-height: calc(100vh - 48px); margin: auto !important; overflow: auto; background: #fff; border-radius: 24px; box-shadow: 0 30px 100px #0008; display: grid; grid-template-columns: minmax(0,1.2fr) minmax(380px,.8fr); }
.danrigo-close { position: absolute !important; right: 18px !important; top: 18px !important; z-index: 5 !important; display: grid !important; place-items: center !important; width: 44px !important; height: 44px !important; min-width: 44px !important; padding: 0 !important; margin: 0 !important; border: 1px solid rgba(41,39,37,.12) !important; border-radius: 50% !important; background: #fff !important; color: #292725 !important; font: 400 28px/1 Arial,sans-serif !important; box-shadow: 0 5px 18px rgba(0,0,0,.14) !important; cursor: pointer !important; }
.danrigo-close:hover { background: #292725 !important; color: #fff !important; }
.danrigo-share { position:absolute; left:18px; top:18px; z-index:5; display:grid; place-items:center; width:44px; height:44px; min-width:44px; padding:0; margin:0; border:1px solid rgba(41,39,37,.12); border-radius:50%; background:#fff; color:#292725; font:700 21px/1 Arial,sans-serif; box-shadow:0 5px 18px rgba(0,0,0,.14); cursor:pointer; transform:rotate(-45deg); }
.danrigo-share:hover { background:#292725; color:#fff; }
.danrigo-modal-gallery { min-width:0; background:#efede9; display:flex; flex-direction:column; }
.danrigo-modal-image { flex:1; min-height:0; }
.danrigo-modal-image img { width:100%; height:min(68vh,720px); min-height:560px; object-fit:cover; }
.danrigo-thumbs { display:flex; gap:10px; padding:12px; overflow-x:auto; }
.danrigo-thumbs:empty { display:none; }
.danrigo-thumb { flex:0 0 74px; width:74px; height:82px; padding:0; border:2px solid transparent; border-radius:10px; overflow:hidden; background:#fff; cursor:pointer; opacity:.72; }
.danrigo-thumb.is-active { border-color:#292725; opacity:1; }
.danrigo-thumb img { display:block; width:100%; height:100%; object-fit:cover; }
.danrigo-contact-link { display: inline-block; margin-top: 10px; padding: 13px 20px; border-radius: 999px; background: #292725; color: #fff !important; text-decoration: none !important; font-weight: 700; }
.danrigo-modal-copy > span { font-size: .7rem; text-transform: uppercase; letter-spacing: .12em; color: #8d837c; font-weight: 800; }
.danrigo-copy-feedback { position:absolute; left:50%; bottom:20px; z-index:8; transform:translate(-50%,12px); padding:9px 15px; border-radius:999px; background:#292725; color:#fff; font-size:.82rem; font-weight:700; opacity:0; pointer-events:none; transition:.2s; }
.danrigo-copy-feedback.is-visible { opacity:1; transform:translate(-50%,0); }
@media (max-width:900px) { .danrigo-modal-panel { grid-template-columns:1fr 360px; } .danrigo-modal-copy { padding:70px 26px 30px; } }
@media (max-width:700px) { .danrigo-modal { padding: 10px; } .danrigo-modal-panel { display: block; max-height: calc(100vh - 20px); border-radius:18px; } .danrigo-close { right: 12px !important; top: 12px !important; } .danrigo-share { left:12px; top:12px; } .danrigo-modal-image img { width: 100%; height: 45vh; min-height: 300px; } .danrigo-modal-copy { padding:28px 22px 30px; } .danrigo-thumb { flex-basis:62px; width:62px; height:68px; } }
