/* Karak Cruiser UK — opening updates.
   The owner's original QR is displayed unchanged on a white surface.
   No filters, colour replacement, cropping, rotation, hover transforms,
   overlaid marks or continuous animation are applied to the QR. */
.opening-announcement { display:inline-flex; align-items:center; min-height:30px; text-decoration:none; }
.opening-announcement:hover { text-decoration:underline; text-underline-offset:4px; }
.opening-announcement:focus-visible { outline-color:var(--gold); outline-offset:2px; }
.opening-section { background:var(--palm); color:var(--paper); position:relative; overflow:hidden; scroll-margin-top:12px; }
.opening-inner { display:grid; grid-template-columns:minmax(0,1fr) 344px; gap:clamp(48px,7vw,112px); align-items:center; padding-block:92px 72px; position:relative; z-index:1; }
.opening-copy { min-width:0; }
.opening-copy .section-kicker { color:var(--cream); margin-bottom:26px; font-size:10px; letter-spacing:.14em; gap:12px; }
.opening-copy .section-kicker>span { color:var(--cream); }
.opening-copy .section-kicker .icon { width:22px; height:22px; color:var(--gold); }
.opening-copy h2 { font-size:clamp(58px,5.8vw,89px); line-height:1.03; letter-spacing:-.022em; }
.opening-copy h2>span { display:block; }
.opening-title-accent { color:var(--gold); }
.opening-intro { margin-top:25px; max-width:480px; color:var(--cream); font-size:15px; line-height:1.9; }
.opening-actions { display:flex; flex-wrap:wrap; align-items:center; gap:15px 26px; margin-top:31px; }
.opening-follow { gap:13px; padding:17px 21px; min-height:58px; font-size:12px; }
.opening-follow .opening-arrow { margin-left:12px; width:17px; }
.opening-handle { display:inline-flex; align-items:center; min-height:44px; font-size:13px; font-weight:600; text-decoration:underline; text-decoration-color:rgba(232,223,205,.45); text-underline-offset:6px; }
.opening-handle:hover { color:var(--gold); }
.opening-section :focus-visible { outline-color:var(--gold); }
.opening-qr-card :focus-visible { outline-color:var(--palm); }
.opening-signoff { margin-top:27px; color:var(--cream); font-size:9px; letter-spacing:.12em; font-weight:600; line-height:1.8; }
.opening-qr-card { width:100%; max-width:344px; background:var(--paper-light); color:var(--canyon); padding:25px 25px 22px; border:1px solid rgba(232,223,205,.6); box-shadow:0 20px 45px rgba(0,35,29,.16); position:relative; }
.opening-qr-heading { display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:18px; font-size:10px; letter-spacing:.13em; font-weight:800; color:var(--palm); }
.opening-qr-heading .icon { width:19px; height:19px; }
.opening-qr-link { background:#fff; display:block; padding:18px; border:1px solid rgba(63,52,43,.1); }
.opening-qr-card .opening-qr { display:block; width:100%; height:auto; aspect-ratio:721 / 726; object-fit:contain; filter:none; transform:none; animation:none; transition:none; }
.opening-qr-caption { padding-top:16px; text-align:center; }
.opening-qr-caption strong { display:block; font-size:17px; letter-spacing:-.02em; }
.opening-qr-caption p { margin-top:5px; font-size:11px; line-height:1.75; color:var(--muted); }
.opening-card-line { display:block; height:3px; width:40px; background:var(--gold); margin:18px auto 0; }
.opening-decoration { position:absolute; inset:0; overflow:hidden; pointer-events:none; }
.opening-orbit { position:absolute; width:720px; height:720px; top:-30px; right:-220px; border:1px solid rgba(232,223,205,.11); border-radius:50%; pointer-events:none; }
.opening-orbit::before,.opening-orbit::after { content:""; position:absolute; inset:65px; border:1px solid rgba(232,223,205,.1); border-radius:50%; }
.opening-orbit::after { inset:130px; }
.opening-bottom { position:relative; z-index:1; display:flex; justify-content:space-between; align-items:center; gap:16px; padding-block:20px 24px; border-top:1px solid rgba(232,223,205,.22); color:var(--cream); font-size:9px; font-weight:600; letter-spacing:.13em; line-height:1.8; }
.visit-actions .visit-instagram { gap:10px; font-size:11px; max-width:100%; white-space:normal; }
.visit-actions .visit-instagram .icon { width:17px; }
@media (max-width:1100px) {
 .opening-inner { grid-template-columns:minmax(0,1fr) 306px; gap:44px; padding-block:78px 58px; }
 .opening-copy h2 { font-size:65px; }
 .opening-qr-card { padding:22px 22px 20px; }
 .opening-actions { gap:10px 18px; }
 .opening-signoff { font-size:8px; }
}
@media (max-width:850px) {
 .opening-inner { grid-template-columns:minmax(0,1fr) 280px; gap:30px; }
 .opening-copy h2 { font-size:56px; }
 .opening-intro { font-size:14px; }
 .opening-qr-card { padding:19px 19px 18px; }
 .opening-qr-link { padding:15px; }
 .opening-qr-heading { font-size:9px; gap:8px; }
 .opening-follow { padding:15px 17px; font-size:11px; }
}
@media (max-width:680px) {
 .opening-inner { grid-template-columns:1fr; gap:34px; padding-block:57px 40px; }
 .opening-copy h2 { font-size:clamp(44px,10.8vw,67px); }
 .opening-copy .section-kicker { font-size:9px; gap:10px; margin-bottom:22px; }
 .opening-copy .section-kicker .icon { width:20px; height:20px; }
 .opening-intro { max-width:460px; font-size:14px; margin-top:21px; line-height:1.85; }
 .opening-actions { margin-top:25px; gap:10px 20px; }
 .opening-follow { padding:16px 18px; font-size:12px; }
 .opening-handle { font-size:12px; }
 .opening-signoff { margin-top:17px; font-size:8px; }
 .opening-qr-card { max-width:328px; justify-self:center; padding:23px 25px 20px; }
 .opening-qr-link { padding:16px; }
 .opening-qr-heading { font-size:10px; margin-bottom:17px; }
 .opening-bottom { font-size:8px; letter-spacing:.1em; padding-block:19px 22px; }
 .opening-orbit { width:700px; height:700px; top:auto; bottom:-90px; right:-390px; }
}
@media (max-width:359px) {
 .opening-copy h2 { font-size:42px; }
 .opening-qr-card { padding-inline:20px; }
 .opening-bottom { flex-direction:column; align-items:flex-start; gap:5px; }
}
@media print {
 .opening-section { background:#fff!important; color:#282828!important; break-inside:avoid; }
 .opening-intro,.opening-signoff,.opening-bottom,.opening-title-accent { color:#282828!important; }
 .opening-orbit { display:none; }
 .opening-qr-card { box-shadow:none; }
}
