/* RonauliPhoto V31 — Premium vs Exclusive: deliberate, visible visual hierarchy. */
.v31-card-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:7px!important;align-items:stretch}
.v31-card-actions .btn{min-width:0;margin:0!important;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-size:11px!important;min-height:38px;padding:9px 7px!important;line-height:1.35}
.v31-card-actions .btn:last-child{grid-column:1/-1}
.v31-excl-link{color:#f7e2ac!important;background:linear-gradient(135deg,#201d26,#4f392b)!important;border:1px solid #cbaa65!important;box-shadow:0 3px 12px #3124171c}
.v31-excl-link:hover{filter:brightness(1.13)}
.v31-demo-switch{display:flex;gap:5px;align-items:center;max-width:480px;flex-wrap:wrap;margin-top:6px}
.v31-demo-switch button{border:1px solid #9d896e;border-radius:99px;color:#e9d7bf;background:transparent;padding:7px 10px;font-size:10px;font-weight:700;cursor:pointer;line-height:1.3}
.v31-demo-switch button.active{background:linear-gradient(120deg,#f8e5c3,#cba76c);color:#332518;border-color:#f4d7a8;box-shadow:0 3px 10px #0002}
.v31-demo-switch button:focus-visible{outline:3px solid #f8dba9;outline-offset:3px}
.v31-editor-luxe{margin:18px 0;padding:18px;border-radius:16px;border:1px solid #b99761;background:linear-gradient(135deg,#2a2730,#493d37);color:#f7efdf;box-shadow:0 9px 25px #221a2626}
.v31-editor-luxe-head strong{font:600 22px 'Cormorant Garamond',Georgia,serif;color:#edd4a5}
.v31-editor-luxe-head p{font-size:12px;line-height:1.6;color:#f0e4d4;margin:6px 0 17px}
.v31-editor-luxe label{color:#fff2d3!important;font-size:12px!important}
.v31-editor-luxe select{background:#fffdf9!important;color:#282322!important;border-color:#d8bd8b!important}
.v31-editor-luxe .form-hint{color:#e9ddc9}
.v31-music-fades{margin-top:12px}
/* The accent is derived from a curated metal palette, not replacing the user's chosen template colour. */
.invitation.inv-exclusive.v31-metal-gold{--v31-metal:#d9b676;--v31-glint:#fff6d5;--v31-shadow:#5a3920}
.invitation.inv-exclusive.v31-metal-silver{--v31-metal:#bccbd3;--v31-glint:#ffffff;--v31-shadow:#40505a}
.invitation.inv-exclusive.v31-metal-rose{--v31-metal:#e7b5ab;--v31-glint:#ffe4e1;--v31-shadow:#75464f}
.invitation.inv-exclusive{position:relative;isolation:isolate}
.invitation.inv-exclusive .v31-royal-top{display:block;position:relative;padding:13px 8px;background:linear-gradient(110deg,#161921,#30313a 44%,#18171a);color:var(--v31-metal);border-bottom:1px solid var(--v31-metal);font:600 10px/1.4 'Cinzel',Georgia,serif;letter-spacing:.2em;text-align:center;text-shadow:0 1px 1px #0008}
.invitation.inv-exclusive .inv-cover{position:relative;isolation:isolate;border:9px solid #14141a;box-shadow:inset 0 0 0 2px var(--v31-metal),inset 0 0 0 9px #14141a,inset 0 0 0 11px #ffffff25;overflow:hidden}
.invitation.inv-exclusive .inv-cover::before{content:"";position:absolute;inset:14px;z-index:6;pointer-events:none;border:2px solid var(--v31-metal);outline:1px solid color-mix(in srgb,var(--v31-glint) 55%,transparent);outline-offset:-8px;border-radius:46% 46% 8px 8px / 11% 11% 8px 8px;box-shadow:0 0 0 2px #0003,0 0 26px color-mix(in srgb,var(--v31-metal) 30%,transparent),inset 0 0 23px #0003}
.invitation.inv-exclusive .inv-cover::after{content:"✦";position:absolute;left:50%;top:19px;transform:translateX(-50%);z-index:7;pointer-events:none;color:var(--v31-glint);font-size:24px;text-shadow:0 0 20px var(--v31-metal),0 3px 9px #0009}
.invitation.inv-exclusive .inv-cover .r7-photo-frame{border-color:var(--v31-metal)!important;box-shadow:0 22px 45px #120b0b7d,0 0 0 6px color-mix(in srgb,var(--v31-metal) 24%,transparent),0 0 0 9px color-mix(in srgb,var(--v31-glint) 16%,transparent)!important;transform:perspective(900px) rotateY(-3deg) translateZ(0);transition:transform .5s ease}
.invitation.inv-exclusive .inv-cover .r7-photo-frame:hover{transform:perspective(900px) rotateY(3deg) translateY(-4px)}
.invitation.inv-exclusive .inv-cover .r7-names{text-shadow:0 3px 14px #0006,0 1px 1px #fff3!important}
.invitation.inv-exclusive .inv-section{position:relative}
.invitation.inv-exclusive .inv-couple,.invitation.inv-exclusive .inv-gallery,.invitation.inv-exclusive .inv-story{background:linear-gradient(143deg,color-mix(in srgb,var(--inv-bg) 87%,#21171a),color-mix(in srgb,var(--inv-bg) 91%,#f1d7ac) 51%,color-mix(in srgb,var(--inv-bg) 80%,#251c29));border-top:1px solid color-mix(in srgb,var(--v31-metal) 60%,transparent);border-bottom:1px solid color-mix(in srgb,var(--v31-metal) 36%,transparent)}
.invitation.inv-exclusive .inv-section h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;letter-spacing:.01em}
.invitation.inv-exclusive .v31-royal-overline{font:600 10px/1.7 'Cinzel',Georgia,serif;letter-spacing:.16em;color:var(--v31-metal);background:linear-gradient(110deg,#15171c,#373034,#15171c);display:inline-block;padding:8px 17px;border:1px solid var(--v31-metal);border-radius:999px;margin:0 auto 15px;box-shadow:0 4px 17px #0002}
.invitation.inv-exclusive .r14-story-line:before{background:linear-gradient(var(--v31-metal),var(--v31-shadow),var(--v31-metal));width:2px}
.invitation.inv-exclusive .r14-story-chapter{margin:0 0 13px 0;padding:18px 13px 24px 61px;border-radius:18px;background:color-mix(in srgb,var(--inv-bg) 92%,#fff);border:1px solid color-mix(in srgb,var(--v31-metal) 70%,transparent);box-shadow:0 9px 26px #20171320,0 0 0 3px #fff1 inset}
.invitation.inv-exclusive .r14-story-dot{background:linear-gradient(135deg,var(--v31-glint),var(--v31-metal),var(--v31-shadow));border:1px solid var(--v31-glint);color:#241c17;box-shadow:0 4px 13px #0004}
.invitation.inv-exclusive .r14-gallery-grid{gap:13px;max-width:455px}
.invitation.inv-exclusive .r14-gallery-grid .r14-gallery-item{border:3px solid var(--v31-metal);border-radius:13px 13px 20px 20px;box-shadow:0 9px 28px #20171338,0 0 0 2px color-mix(in srgb,var(--v31-glint) 45%,transparent) inset;transform:perspective(800px) rotateY(-2deg);transition:transform .35s ease,box-shadow .35s ease}
.invitation.inv-exclusive .r14-gallery-grid .r14-gallery-item:nth-child(even){transform:perspective(800px) rotateY(2deg)}
.invitation.inv-exclusive .r14-gallery-grid .r14-gallery-item:hover{transform:perspective(800px) translateY(-5px) rotateY(0deg) scale(1.015);box-shadow:0 15px 34px #20171356}
.invitation.inv-exclusive .inv-event{border:2px solid var(--v31-metal);box-shadow:0 8px 22px #221b1224,inset 0 0 0 5px #fff1}
.invitation.inv-exclusive .inv-countdown .countdown div{border:1px solid var(--v31-metal);border-radius:8px;box-shadow:0 5px 15px #0002}
.invitation.inv-exclusive .inv-footer{border-top:3px double var(--v31-metal);box-shadow:inset 0 6px 20px #0002}
/* Elegant movement: no distracting continuous screen-spanning animation. */
@keyframes v31-royal-entrance{from{opacity:.25;filter:brightness(.8);transform:perspective(1000px) rotateX(8deg) scale(.93)}to{opacity:1;filter:brightness(1);transform:perspective(1000px) rotateX(0) scale(1)}}
@keyframes v31-royal-glimmer{0%,100%{opacity:.45;filter:drop-shadow(0 0 4px var(--v31-metal))}50%{opacity:.95;filter:drop-shadow(0 0 17px var(--v31-metal))}}
@keyframes v31-royal-float{0%,100%{transform:perspective(900px) translateY(0) rotateY(-2deg)}50%{transform:perspective(900px) translateY(-5px) rotateY(2deg)}}
.invitation.inv-exclusive.v31-motion-cinematic .inv-cover .r7-lockup{animation:v31-royal-entrance 1.55s cubic-bezier(.2,.85,.2,1) both}
.invitation.inv-exclusive.v31-motion-cinematic .inv-cover:after{animation:v31-royal-glimmer 4.5s ease-in-out infinite}
.invitation.inv-exclusive.v31-motion-float .inv-cover .r7-photo-frame{animation:v31-royal-float 6s ease-in-out infinite}
.invitation.inv-exclusive.v31-motion-float .inv-cover:after{animation:v31-royal-glimmer 7s ease-in-out infinite}
.invitation.inv-exclusive.v31-motion-subtle .inv-cover .r7-photo-frame{animation:none;transform:none}
/* Opening cinematic (public + demo) */
.r17-intro.v31-intro-exclusive{--v31-intro-metal:color-mix(in srgb,var(--r17-intro-accent) 55%,#e4c17d);background:radial-gradient(ellipse at 50% 43%,color-mix(in srgb,var(--r17-intro-bg) 75%,#15121a),#12131c 92%);color:#fff1d9}
.r17-intro.v31-intro-exclusive .r17-intro-art{opacity:.29}
.r17-intro.v31-intro-exclusive .r17-intro-card{background:linear-gradient(135deg,#252129ee,#3d3038f2 53%,#19171ef5);color:#fff3d9;border:2px solid var(--v31-intro-metal);border-radius:160px 160px 25px 25px / 55px 55px 25px 25px;outline:1px solid color-mix(in srgb,var(--v31-intro-metal) 80%,transparent);outline-offset:5px;box-shadow:0 24px 60px #09070c90,0 0 0 11px #e8bc6922,inset 0 0 28px #d3b87512;padding-top:31px;animation:v31-royal-entrance 1.2s cubic-bezier(.2,.85,.2,1) both}
.r17-intro.v31-intro-exclusive .r17-intro-card::before{content:"✧  ✦  ✧";display:block;letter-spacing:.17em;color:#e3c58a;font-size:20px;margin-bottom:10px}
.r17-intro.v31-intro-exclusive .r17-intro-card h1{color:#fff3df;text-shadow:0 2px 12px #000b}
.r17-intro.v31-intro-exclusive .r17-intro-kicker{color:#ead2a7;letter-spacing:.18em}
.r17-intro.v31-intro-exclusive .r17-open-btn{background:linear-gradient(130deg,#f9e2ac,#b78a47 55%,#f5dfa3);color:#2e241f;border:1px solid #f9eccd;box-shadow:0 8px 26px #0008,0 0 0 4px #eac99020}
.r17-intro.v31-intro-exclusive .r17-intro-note{color:#fff0cd}
.r17-intro.v31-intro-exclusive .v31-intro-ornament{position:absolute;top:9%;left:50%;transform:translateX(-50%);font-size:clamp(27px,6vw,47px);color:#e6c17c;text-shadow:0 0 24px #ffe9b7a1;animation:v31-royal-glimmer 4s ease-in-out infinite;pointer-events:none}
.r17-intro.v31-intro-exclusive .r29-studio-credit-intro{color:#fff1df;--r29-gold:#e6c688}
@media(max-width:620px){
 .v31-demo-switch{max-width:none;justify-content:center}
 .v31-demo-switch button{flex:1;min-width:115px;font-size:10px;padding:9px 8px}
 .v31-card-actions{grid-template-columns:1fr}
 .v31-card-actions .btn:last-child{grid-column:auto}
 .invitation.inv-exclusive .inv-cover{border-width:5px}
 .invitation.inv-exclusive .inv-cover:before{inset:11px}
 .invitation.inv-exclusive .r14-gallery-grid{gap:8px}
 .r17-intro.v31-intro-exclusive .r17-intro-card{outline-offset:2px;border-radius:90px 90px 19px 19px / 35px 35px 19px 19px;padding-top:17px;box-shadow:0 15px 28px #0008,0 0 0 5px #e8bc6922}
 .r17-intro.v31-intro-exclusive .v31-intro-ornament{display:none}
}
@media(max-width:380px){.v31-card-actions .btn{font-size:10px!important;padding:8px 3px!important}}
@media(prefers-reduced-motion:reduce){
 .invitation.inv-exclusive *, .invitation.inv-exclusive *::before,.invitation.inv-exclusive *::after,
 .r17-intro.v31-intro-exclusive *, .r17-intro.v31-intro-exclusive *::before,
 .r17-intro.v31-intro-exclusive *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

.v31-package-demo{display:block!important;text-align:center;margin:8px auto 13px!important;background:#fff8ed!important;color:#5f4131!important;border:1px solid #c8ac88!important;padding:12px 8px!important;font-weight:700!important}
.v31-package-demo:hover{background:#ead4b4!important}
