.opening-scope *{box-sizing:border-box}.opening-scope body{margin:0;background:#efe9dd;color:#48382d;font-family:Georgia,serif}.opening-scope button{font:inherit;color:inherit}.opening-scope button:focus-visible{outline:3px solid #8f5b35;outline-offset:4px}.opening-scope main{width:min(1260px,100%);margin:auto;padding:30px 30px 44px}.opening-scope .gallery-intro{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:23px}.opening-scope .overline{font:10px/1.6 Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#775c44}.opening-scope .gallery-intro h1{font-size:clamp(25px,3vw,38px);font-weight:400;margin:7px 0 0}.opening-scope .gallery-intro p{font:13px/1.6 Arial,sans-serif;max-width:320px;margin:0}.opening-scope .choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.opening-scope .choice{cursor:pointer;text-align:left;padding:16px 18px;border:1px solid #b39a773b;border-radius:7px;background:#ffffff50;transition:background .2s}.opening-scope .choice:hover{background:#fff9ed}.opening-scope .choice[aria-pressed=true]{background:#fff9ed;border-color:#967146;box-shadow:inset 0 -3px #967146}.opening-scope .choice small{display:block;font:10px Arial,sans-serif;letter-spacing:.1em;margin-bottom:7px}.opening-scope .choice strong{font-size:19px;font-weight:400}.opening-scope .stage{position:relative;isolation:isolate;overflow:hidden;min-height:620px;background:radial-gradient(ellipse at 74% 22%,#fffbed,transparent 65%),linear-gradient(#f4eedc,#f0ddbd);border:1px solid #b6a08155;border-radius:10px;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:42px 5%;gap:15px}.opening-scope .land{position:absolute;inset:auto 0 0;width:100%;height:45%;z-index:-1}.opening-scope .copy{padding:15px 0}.opening-scope .copy h2{font-family:CG,Georgia,serif;font-weight:400;font-size:clamp(68px,7.8vw,100px);line-height:.88;letter-spacing:-.03em;margin:26px 0}.opening-scope .copy h2 span{display:block}.opening-scope .copy h2 em{display:block;font-size:.5em;color:#ac6b48;font-weight:400;margin:15px 0}.opening-scope .copy .lead{font-family:CG,Georgia,serif;font-style:italic;font-size:26px;line-height:1.3}.opening-scope .date{font-size:16px;margin-top:24px;line-height:1.6}.opening-scope .venue{font-size:13px;line-height:1.7;max-width:350px}.opening-scope .art{position:relative;isolation:isolate;width:100%;max-width:530px;justify-self:center;aspect-ratio:1}.opening-scope .art::before,.opening-scope .art::after{content:"";position:absolute;pointer-events:none;border-radius:50% 50% 3px 3px}.opening-scope .art::before{inset:1% 5% 0;border:1px solid #b9915b66;background:linear-gradient(#fff9e9aa,#eed5ad22)}.opening-scope .art::after{inset:-5% 1% -2%;border:1px solid #b9915b33}.opening-scope .couple{display:block;width:100%;height:auto;position:relative;z-index:1}.opening-scope .card-atmosphere{position:absolute;inset:-13% -7% -6%;width:114%;height:119%;z-index:2;pointer-events:none;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.opening-scope .treatment{display:none}.opening-scope .card-reveal[data-concept="0"] .banks,.opening-scope .card-reveal[data-concept="1"] .ribbons,.opening-scope .card-reveal[data-concept="2"] .invitation-lotus,.opening-scope .card-reveal[data-concept="3"] .pearls{display:block}/* Each effect ends fully transparent; no persistent fog. */.opening-scope .cloud-bank{filter:blur(3px);opacity:0;transform-box:view-box}.opening-scope.playing .cloud-bank.left{animation:invitation-bank-left 3.5s cubic-bezier(.3,.05,.2,1) both}.opening-scope.playing .cloud-bank.right{animation:invitation-bank-right 3.5s cubic-bezier(.3,.05,.2,1) both}@keyframes invitation-bank-left{0%,12%{transform:translateX(0);opacity:1}85%{opacity:.12}100%{transform:translateX(-460px);opacity:0}}@keyframes invitation-bank-right{0%,12%{transform:translateX(0);opacity:1}85%{opacity:.12}100%{transform:translateX(460px);opacity:0}}.opening-scope .mist-ribbon{opacity:0;fill:none}.opening-scope.playing .mist-ribbon{animation:invitation-silk 3.3s cubic-bezier(.25,.15,.2,1) both;animation-delay:calc(var(--n)*.08s)}@keyframes invitation-silk{0%,8%{transform:translateX(0);opacity:1}75%{opacity:.3}100%{transform:translateX(var(--drift));opacity:0}}.opening-scope .lotus-plume{opacity:0;transform-origin:300px 690px}.opening-scope.playing .lotus-plume{animation:invitation-lotus 3.5s cubic-bezier(.25,.1,.2,1) both;animation-delay:calc(var(--n)*.1s)}@keyframes invitation-lotus{0%,10%{transform:rotate(0) translateX(0);opacity:1}75%{opacity:.25}100%{transform:rotate(var(--turn)) translateX(var(--slide));opacity:0}}.opening-scope .pearl-island{opacity:0}.opening-scope.playing .pearl-island{animation:invitation-pearl 3.3s cubic-bezier(.3,.05,.2,1) both;animation-delay:var(--delay)}@keyframes invitation-pearl{0%,10%{transform:translate(0,0) scale(1);opacity:1}65%{opacity:.45}100%{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}.opening-scope .caption{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-top:20px;min-height:83px}.opening-scope .caption h3{font-size:25px;font-weight:400;margin:0 0 7px}.opening-scope .caption p{margin:0;max-width:750px;font:14px/1.65 Arial,sans-serif}.opening-scope .replay{flex-shrink:0;cursor:pointer;border:1px solid #97754c;background:#fff8ea;border-radius:30px;padding:13px 21px;font:13px Arial,sans-serif}.opening-scope .replay:hover{background:#f5e5ca}.opening-scope .status{font:11px/1.6 Arial,sans-serif;color:#725c49;margin-top:14px;min-height:18px}.opening-scope .note{font:12px/1.7 Arial,sans-serif;margin-top:20px;color:#725c49;border-top:1px solid #b39a7744;padding-top:16px}@media(max-width:700px){.opening-scope main{padding:22px 16px 30px}.opening-scope .gallery-intro{display:block}.opening-scope .gallery-intro p{margin-top:12px;max-width:none}.opening-scope .choices{grid-template-columns:1fr 1fr;gap:8px}.opening-scope .choice{padding:12px}.opening-scope .choice strong{font-size:17px}.opening-scope .choices{position:sticky;top:8px;z-index:10;background:#efe9ddf5;padding:5px;border-radius:9px;backdrop-filter:blur(8px)}.opening-scope .stage{grid-template-columns:1fr;padding:30px 22px 24px;gap:24px;min-height:0;text-align:center}.opening-scope .copy{padding:0}.opening-scope .copy h2{font-size:62px;line-height:.9;margin:19px 0}.opening-scope .copy h2 span{display:inline}.opening-scope .copy h2 em{font-size:28px;margin:10px 0}.opening-scope .copy .lead{font-size:23px;margin:0}.opening-scope .date{font-size:14px;margin:18px 0 6px}.opening-scope .venue{font-size:12px;margin:0 auto}.opening-scope .art{width:min(340px,100%)}.opening-scope .land{height:37%}.opening-scope .caption{align-items:start;flex-wrap:wrap;gap:14px}.opening-scope .caption p{font-size:13px}.opening-scope .caption h3{font-size:23px}.opening-scope .replay{padding:12px 19px}}@media(prefers-reduced-motion:reduce){.opening-scope *,.opening-scope *::before,.opening-scope *::after{animation:none!important;transition:none!important}.opening-scope .card-atmosphere{display:none}}/* Whole-card reveal layer: covers both text and illustration together. */.opening-scope .card-reveal{position:absolute;inset:0;z-index:40;pointer-events:none;visibility:hidden;isolation:isolate}.opening-scope.playing .card-reveal{visibility:visible}.opening-scope .card-reveal .card-atmosphere{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;mask-image:none;z-index:1}.opening-scope .card-reveal::before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,#fffdf4,#f3e6ca);opacity:0}.opening-scope.playing .card-reveal::before{animation:invitation-opening-wash 4.8s ease both}@keyframes invitation-opening-wash{0%,16%{opacity:1}63%{opacity:.28}100%{opacity:0}}.opening-scope .auspicious-seal{position:absolute;left:50%;top:49%;width:min(330px,65vw);transform:translate(-50%,-50%);z-index:2;color:#ad7d3d;text-align:center;opacity:0}.opening-scope .auspicious-seal svg{display:block;width:100%;height:auto}.opening-scope .auspicious-seal p{font-family:CG,Georgia,serif;font-size:32px;margin:-10px -40px 12px}.opening-scope .auspicious-seal span{font:10px Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}.opening-scope.playing .auspicious-seal{animation:invitation-seal-light 3s ease both}@keyframes invitation-seal-light{0%,22%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-53%) scale(1.035)}}.opening-scope .card-reveal[data-concept="1"] .auspicious-seal{color:#987843}.opening-scope .card-reveal[data-concept="2"] .auspicious-seal{color:#b47d54}.opening-scope .card-reveal[data-concept="3"] .auspicious-seal{color:#9c8c69}.opening-scope.playing .cloud-bank.left,.opening-scope.playing .cloud-bank.right{animation-duration:4.8s}.opening-scope.playing .mist-ribbon{animation-duration:4.3s}.opening-scope.playing .lotus-plume{animation-duration:4.6s}.opening-scope.playing .pearl-island{animation-duration:4.5s}.opening-scope .skip-reveal{position:absolute;right:22px;bottom:22px;z-index:50;border:1px solid #a2875d;border-radius:25px;padding:12px 18px;background:#fff9ecee;cursor:pointer;font:12px Arial,sans-serif;color:#594330}.opening-scope .skip-reveal[hidden]{display:none}@media(prefers-reduced-motion:reduce){.opening-scope .card-reveal,.opening-scope .skip-reveal{display:none!important}}.opening-scope .stage{scroll-margin-top:18px}.opening-scope .stage .card-reveal{border-radius:inherit}.opening-scope .stage .card-atmosphere{width:100%;height:100%;inset:0}@media(max-width:700px){.opening-scope .stage{scroll-margin-top:168px}.opening-scope .stage .auspicious-seal{top:45%;width:min(260px,70vw)}}/* Outer card frame owns the reveal. The text and illustration are siblings beneath it. */.opening-scope .hero-surface{position:relative;isolation:isolate;border-radius:10px;overflow:hidden}.opening-scope .hero-surface > .card-reveal{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:40;transform:none!important;max-width:none!important;grid-area:auto}.opening-scope .hero-surface > .card-reveal > .card-atmosphere{position:absolute;inset:0!important;width:100%!important;height:100%!important;max-width:none;mask-image:none}.opening-scope .hero-surface > .skip-reveal{position:absolute;z-index:50}/* Two responsive compositions, drawn in the native pixel space of the card. */.opening-scope .choices{grid-template-columns:repeat(2,minmax(0,1fr))}.opening-scope .hero-surface > .card-reveal > .card-atmosphere{display:block;overflow:hidden}.opening-scope.playing .mist-ribbon{animation-duration:4.2s;animation-delay:calc(var(--n)*.06s)}.opening-scope.playing .lotus-plume{animation-duration:4.4s;animation-delay:calc(var(--n)*.09s)}@media(max-width:700px){.opening-scope .stage{scroll-margin-top:100px}.opening-scope .choices{grid-template-columns:1fr 1fr}.opening-scope .stage .auspicious-seal{top:44%;width:min(250px,66vw)}}/* Three refined entrance studies. Petal spacing is composed as an open fan. */.opening-scope .choices{grid-template-columns:repeat(3,minmax(0,1fr))}.opening-scope .lotus-petal{opacity:0;transform-origin:0 0}.opening-scope.playing .lotus-petal{animation:invitation-lotus-fan 4.6s cubic-bezier(.25,.15,.2,1) both;animation-delay:calc(var(--n)*.07s)}@keyframes invitation-lotus-fan{0%,16%{opacity:1;transform:rotate(0) translateY(0)}48%{opacity:.8}100%{opacity:0;transform:rotate(var(--spread)) translateY(var(--lift))}}.opening-scope .palace-bank{opacity:0}.opening-scope.playing .palace-bank{animation:invitation-palace-entry 4.8s cubic-bezier(.45,.02,.16,1) both;animation-delay:calc(var(--n)*.08s)}@keyframes invitation-palace-entry{0%,18%{opacity:1;transform:translateX(0)}75%{opacity:.85}100%{opacity:0;transform:translateX(var(--depart))}}.opening-scope .card-reveal[data-concept="2"] .auspicious-seal{color:#a27a39}@media(max-width:700px){.opening-scope .choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.opening-scope .choice{padding:11px 8px}.opening-scope .choice small{font-size:8px;line-height:1.5;letter-spacing:.04em}.opening-scope .choice strong{font-size:15px}.opening-scope .stage{scroll-margin-top:116px}}/* Large rotating fan and layered cloud procession. */.opening-scope .invitation-cloud-procession{opacity:0}.opening-scope.playing .invitation-cloud-procession{animation:invitation-cloud-procession 4.6s cubic-bezier(.35,.06,.2,1) both;animation-delay:calc(var(--n)*.08s)}@keyframes invitation-cloud-procession{0%,14%{opacity:1;transform:translate(0,0)}65%{opacity:.75}100%{opacity:0;transform:translate(var(--depart),var(--rise))}}@keyframes invitation-lotus-fan{0%,12%{opacity:1;transform:rotate(0) translateY(0)}55%{opacity:.7}100%{opacity:0;transform:rotate(var(--spread)) translateY(var(--lift))}}.opening-scope.playing .lotus-petal{animation-duration:4.2s;animation-delay:calc(var(--n)*.11s)}/* Connected, screen-scale fan: rotation only, with one shared fade. */.opening-scope .lotus-fan-layer{opacity:0}.opening-scope .lotus-fan-layer .lotus-petal{opacity:1;transform-origin:0 0}.opening-scope.playing .lotus-fan-layer{animation:invitation-joined-fan-fade 5s ease both}.opening-scope.playing .lotus-fan-layer .lotus-petal{animation:invitation-joined-petal-turn 4.8s cubic-bezier(.3,.08,.2,1) both;animation-delay:0s}@keyframes invitation-joined-petal-turn{0%,16%{transform:rotate(0deg)}100%{transform:rotate(var(--turn))}}@keyframes invitation-joined-fan-fade{0%,24%{opacity:1}65%{opacity:.85}100%{opacity:0}}/* Additional seven whole-card reveal studies. */.opening-scope .choices{grid-template-columns:repeat(5,minmax(0,1fr))}.opening-scope .choice{min-width:0}.opening-scope .choice strong{font-size:17px}.opening-scope .parting-veil,.opening-scope .rising-cloud,.opening-scope .royal-sheer,.opening-scope .rose-drift,.opening-scope .dawn-rise,.opening-scope .star-pattern,.opening-scope .gold-pattern,.opening-scope .shared-frame{opacity:0}.opening-scope.playing .parting-veil{animation:invitation-parting-story 4.8s cubic-bezier(.4,.1,.15,1) both}@keyframes invitation-parting-story{0%,12%{opacity:1;transform:translateX(0)}70%{opacity:.85}100%{opacity:0;transform:translateX(var(--dx))}}.opening-scope.playing .rising-cloud{animation:invitation-cloud-lift 4.8s ease-in-out both}@keyframes invitation-cloud-lift{0%,10%{opacity:1;transform:translateY(0)}65%{opacity:.85}100%{opacity:0;transform:translateY(var(--rise))}}.opening-scope.playing .royal-sheer{animation:invitation-sheer-opening 4.4s cubic-bezier(.4,.08,.2,1) both;animation-delay:calc(var(--n)*.12s)}@keyframes invitation-sheer-opening{0%,12%{opacity:1;transform:translateX(0)}70%{opacity:.6}100%{opacity:0;transform:translateX(var(--dx))}}.opening-scope.playing .rose-drift{animation:invitation-rose-opening 4.2s ease-in-out both;animation-delay:calc(var(--n)*.055s)}@keyframes invitation-rose-opening{0%{opacity:0;transform:translate(0,0) rotate(-15deg)}18%,50%{opacity:.8}100%{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--turn))}}.opening-scope.playing .stage[data-concept="4"] .art,.opening-scope.playing .stage[data-concept="4"] .copy{animation:invitation-portrait-arrival 4.4s ease both}@keyframes invitation-portrait-arrival{0%,8%{opacity:.12}80%,100%{opacity:1}}.opening-scope.playing .dawn-rise{animation:invitation-dawn-opening 4.8s ease-in-out both}@keyframes invitation-dawn-opening{0%{opacity:0;transform:translateY(0)}18%,60%{opacity:.85}100%{opacity:0;transform:translateY(var(--dy))}}.opening-scope.playing .star-pattern{animation:invitation-star-opening 4.6s ease both}.opening-scope.playing .star-connect{stroke-dasharray:100;animation:invitation-star-stitch 3.5s ease both}@keyframes invitation-star-opening{0%{opacity:0}22%,62%{opacity:.9}100%{opacity:0}}@keyframes invitation-star-stitch{0%,10%{stroke-dashoffset:100}80%,100%{stroke-dashoffset:0}}.opening-scope.playing .gold-pattern{animation:invitation-shared-rhythm 4.9s ease both}@keyframes invitation-shared-rhythm{0%{opacity:0;transform:translate(var(--dx),var(--dy))}16%{opacity:.9}60%,78%{opacity:.9;transform:translate(0,0)}100%{opacity:0;transform:translate(0,0)}}.opening-scope.playing .shared-frame{animation:invitation-frame-arrival 4.9s ease both}@keyframes invitation-frame-arrival{0%,48%{opacity:0}65%,80%{opacity:.75}100%{opacity:0}}/* The symbol is used for ceremonial cloud studies; lighter studies have their own focal artwork. */.opening-scope .card-reveal[data-concept="4"] .auspicious-seal,.opening-scope .card-reveal[data-concept="7"] .auspicious-seal,.opening-scope .card-reveal[data-concept="8"] .auspicious-seal,.opening-scope .card-reveal[data-concept="9"] .auspicious-seal{display:none}.opening-scope.playing .card-reveal[data-concept="4"]::before,.opening-scope.playing .card-reveal[data-concept="7"]::before,.opening-scope.playing .card-reveal[data-concept="8"]::before,.opening-scope.playing .card-reveal[data-concept="9"]::before{animation:invitation-light-study-wash 4.7s ease both}@keyframes invitation-light-study-wash{0%{opacity:.5}70%,100%{opacity:0}}@media(max-width:1000px){.opening-scope .choices{grid-template-columns:repeat(3,minmax(0,1fr))}.opening-scope .stage{scroll-margin-top:24px}}@media(max-width:700px){.opening-scope .choices{grid-template-columns:repeat(2,minmax(0,1fr));position:relative;top:auto;padding:0;gap:7px;backdrop-filter:none}.opening-scope .choice{padding:12px}.opening-scope .choice strong{font-size:17px}.opening-scope .choice small{font-size:9px}.opening-scope .stage{scroll-margin-top:12px}}@media(prefers-reduced-motion:reduce){.opening-scope .stage .copy,.opening-scope .stage .art{opacity:1!important}}/* Richer illustrated sheers and the engineering-inspired opening veil. */.opening-scope .choices{grid-template-columns:repeat(4,minmax(0,1fr))}.opening-scope.playing .parting-veil{animation-duration:4.5s;animation-delay:calc(var(--n)*.11s)}.opening-scope.playing .rising-cloud{animation-duration:4.5s;animation-delay:calc(var(--n)*.12s)}.opening-scope .card-reveal[data-concept="4"] .auspicious-seal{display:none}.opening-scope .woven-cell{opacity:0}.opening-scope.playing .woven-cell{animation:invitation-unweave-opening 4.6s cubic-bezier(.3,.1,.2,1) both;animation-delay:var(--delay)}@keyframes invitation-unweave-opening{0%,8%{opacity:1;transform:translateX(var(--align)) scale(1.04)}28%,40%{opacity:1;transform:translateX(0) scale(1)}82%{opacity:.35}100%{opacity:0;transform:translateX(var(--depart)) scale(.04)}}.opening-scope.playing .card-reveal[data-concept="4"]::before{animation:invitation-woven-ground 5s ease both}@keyframes invitation-woven-ground{0%,30%{opacity:1}65%{opacity:.25}100%{opacity:0}}/* Underlying invitation stays still; this is a disappearing foreground surface. */.opening-scope.playing .stage[data-concept="4"] .copy,.opening-scope.playing .stage[data-concept="4"] .art{animation:none;opacity:1}@media(max-width:1000px){.opening-scope .choices{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.opening-scope .choices{grid-template-columns:repeat(2,minmax(0,1fr))}}/* Final five choices. Mobile has its own composition, not a squeezed desktop canvas. */.opening-scope .choices{grid-template-columns:repeat(5,minmax(0,1fr))}@media(min-width:701px) and (max-width:1000px){.opening-scope .choices{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.opening-scope main{padding:20px 16px 28px}.opening-scope .choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.opening-scope .choice:last-child{grid-column:1/-1}.opening-scope .choice{padding:11px 13px}.opening-scope .choice small{margin-bottom:4px}.opening-scope .choice strong{font-size:17px}.opening-scope .stage{padding:24px 18px 20px;gap:16px;scroll-margin-top:10px}.opening-scope .copy h2{font-size:clamp(42px,12.5vw,54px);margin:15px 0;line-height:.9}.opening-scope .copy h2 em{font-size:23px;margin:7px 0}.opening-scope .copy .overline{font-size:9px;letter-spacing:.14em}.opening-scope .copy .lead{font-size:20px;max-width:270px;margin:0 auto;line-height:1.2}.opening-scope .date{font-size:13px;margin:14px 0 5px}.opening-scope .venue{font-size:11px;line-height:1.5;max-width:265px}.opening-scope .art{width:min(270px,100%)}.opening-scope .stage .auspicious-seal{width:min(205px,57vw);top:46%}.opening-scope .auspicious-seal p{font-size:26px;margin:-4px -25px 10px}.opening-scope .auspicious-seal span{font-size:8px;letter-spacing:.16em}.opening-scope .skip-reveal{right:12px;bottom:12px;padding:10px 14px;font-size:11px;background:#fff9ecf5}.opening-scope .caption{margin-top:17px}.opening-scope .caption h3{font-size:23px}.opening-scope .replay{min-height:44px}}/* Overlay artwork only. Existing reveal geometry and timing are unchanged. */.opening-scope .devotional-pair{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0}.opening-scope .devotional-pair img{position:absolute;top:5%;height:90%;width:26%;object-fit:contain;max-width:none}.opening-scope .devotional-pair .shiva-strokes{left:2%;object-position:left center}.opening-scope .devotional-pair .parvati-strokes{right:2%;object-position:right center}.opening-scope.playing .devotional-pair{animation:invitation-devotional-arrival 3s ease both}@keyframes invitation-devotional-arrival{0%,22%{opacity:1}100%{opacity:0}}.opening-scope .card-reveal .auspicious-seal{display:block!important;color:#a96735;width:min(285px,30%)}.opening-scope .card-reveal .auspicious-seal svg{width:100%;height:auto}.opening-scope .card-reveal .auspicious-seal p{font-size:30px}@media(max-width:700px){.opening-scope .devotional-pair img{top:8%;height:84%;width:26%}.opening-scope .devotional-pair .shiva-strokes{left:1%}.opening-scope .devotional-pair .parvati-strokes{right:1%}.opening-scope .card-reveal .auspicious-seal{width:43%;top:44%}.opening-scope .card-reveal .auspicious-seal p{font-size:24px;margin:1px -28px 10px}.opening-scope .card-reveal .auspicious-seal span{font-size:7px;letter-spacing:.12em}}/* Simplified devotional contours and layered emerald-gold invitation-lotus ornament. */.opening-scope .devotional-pair img{opacity:.88}.opening-scope .card-reveal .auspicious-seal p{margin-top:3px}.opening-scope .mandala-wheel{transform-origin:200px 200px;animation:invitation-ornament-turn 72s linear infinite}@keyframes invitation-ornament-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.opening-scope .mandala-wheel{animation:none!important}}/* Fresh devotional painting replaces the automatic contour trace. */.opening-scope .devotional-pair img{opacity:.92}@media(max-width:700px){.opening-scope .devotional-pair img{width:31%;height:88%;top:6%}.opening-scope .devotional-pair .shiva-strokes{left:0}.opening-scope .devotional-pair .parvati-strokes{right:0}}@media(max-width:700px){.opening-scope .card-reveal .auspicious-seal p{font-size:20px;line-height:1.15;margin:5px 0 9px}.opening-scope .card-reveal .auspicious-seal span{display:block;line-height:1.5}}/* Garland-free monochrome sketches, anchored at the card edges. */.opening-scope .devotional-pair img{height:94%;top:3%;opacity:.9}.opening-scope .devotional-pair .shiva-strokes{left:-1%}.opening-scope .devotional-pair .parvati-strokes{right:-1%}@media(max-width:700px){.opening-scope .devotional-pair img{width:34%;height:94%;top:3%}.opening-scope .devotional-pair .shiva-strokes{left:-1%}.opening-scope .devotional-pair .parvati-strokes{right:-1%}}/* Tall mobile sketches are sized by card height, not squeezed into narrow columns. */@media(max-width:700px){.opening-scope .devotional-pair img{height:100%;top:0;width:auto;aspect-ratio:500/1024;max-width:none;object-fit:contain;object-position:center}.opening-scope .devotional-pair .shiva-strokes{left:0;right:auto;transform:translateX(-58%)}.opening-scope .devotional-pair .parvati-strokes{right:0;left:auto;transform:translateX(58%)}}
.opening-scope{display:none;position:fixed;inset:0;z-index:1000;pointer-events:auto;color:#745539;font-family:Georgia,serif;isolation:isolate;background:#fff9ed}
html.opening-pending .opening-scope{display:block}
html.opening-pending{overflow:hidden!important;scroll-behavior:auto}
html.opening-pending body{overflow:hidden!important}
.opening-scope .hero-surface{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;overflow:hidden}
.opening-scope .hero-surface>.card-reveal{visibility:visible;inset:0!important;width:100%!important;height:100%!important;border-radius:0}
.opening-scope .skip-reveal{position:absolute;z-index:50;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));min-height:44px}
.opening-scope button:focus-visible{outline:3px solid #915b32;outline-offset:4px}
.opening-scope .opening-message{position:absolute;z-index:3;left:50%;top:49%;transform:translate(-50%,-50%);width:min(285px,30%);text-align:center;color:#a96735;pointer-events:none}
.opening-scope .auspicious-seal{display:block!important}
.opening-scope:not(.playing) .auspicious-seal{opacity:1}
.opening-scope:not(.playing) .devotional-pair{opacity:1}
.opening-scope .opening-wait-ground{position:absolute;inset:0;background:linear-gradient(135deg,#fffcf3,#f4e6ca);z-index:0}
.opening-scope.playing{background:transparent}
.opening-scope.playing .opening-wait-ground{animation:opening-ground-clear 5s ease both}
@keyframes opening-ground-clear{0%,16%{opacity:1}65%{opacity:.25}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.opening-scope{display:none!important}html.opening-pending,html.opening-pending body{overflow:visible!important}}
#invitation-petals{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:8;contain:strict}
@media(prefers-reduced-motion:reduce){#invitation-petals{display:none!important}}
