@font-face{font-family:Editorial;src:url('./assets/newsreader.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Editorial;src:url('./assets/newsreader-italic.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:SourceSans;src:url('./assets/source-sans-3.ttf') format('truetype');font-style:normal;font-weight:400 600;font-display:swap}
:root{color-scheme:dark;--ink:#07182c;--white:#faf7f0;--gold:#d9be8a;--red:#bd092b;--progress:0}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:var(--ink);color:var(--white)}body{font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:7px}a{color:inherit}.launch{position:relative;isolation:isolate;width:100%;height:100svh;min-height:640px;overflow:hidden;background:#07182c}.world{position:absolute;left:50%;top:50%;width:max(100vw,177.778svh);height:max(56.25vw,100svh);transform:translate(-50%,-50%) scale(1.035);transition:transform 12s cubic-bezier(.16,1,.3,1);transform-origin:50% 55%}.launch.playing .world,.launch.complete .world{transform:translate(-50%,-50%) scale(1)}.clinic{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;filter:brightness(.68) saturate(.8);transition:filter 4s}.launch.revealing .clinic,.launch.complete .clinic{filter:brightness(1) saturate(.97)}.architecture-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,15,30,.12),transparent 28%,transparent 67%,rgba(3,14,26,.25));pointer-events:none}#silk{position:absolute;inset:0;display:block;width:100%;height:100%}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(2,13,25,.64) 0%,rgba(2,12,23,.05) 36%,transparent 60%,rgba(2,12,23,.75) 100%),linear-gradient(90deg,rgba(1,9,19,.26),transparent 25%,transparent 75%,rgba(1,9,19,.26))}.masthead{position:absolute;top:36px;left:4.3%;right:4.3%;display:flex;align-items:center;justify-content:space-between;z-index:5}.wordmark{text-decoration:none;display:flex;gap:12px;align-items:center}.wordmark svg{width:32px;height:39px}.wordmark>span{font-size:19px;font-weight:400;letter-spacing:.15em}.wordmark b{font-weight:600}.wordmark small{display:block;font-size:7px;letter-spacing:.53em;opacity:.55;margin-top:7px}.opening-label{display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.24em;opacity:.8}.opening-label i{display:block;width:5px;height:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 13px #cba96c66}.intro{position:absolute;top:17%;width:100%;text-align:center;z-index:3;transition:opacity .8s,transform 1.4s}.eyebrow{font-size:9px;letter-spacing:.3em;font-weight:400;color:var(--gold);display:flex;gap:18px;align-items:center;justify-content:center}.eyebrow>span{display:block;width:28px;height:1px;background:var(--gold);opacity:.5}h1,h2{font-family:Editorial,'Baskerville','Times New Roman',serif;font-weight:400;letter-spacing:-.025em;line-height:1.1;margin:23px 0}h1{font-size:clamp(36px,4.2vw,73px);text-shadow:0 2px 24px #0005}h1 em,h2 em{font-weight:400;color:#ebd5aa}.invitation{position:absolute;z-index:4;bottom:12.5%;width:100%;display:flex;flex-direction:column;align-items:center;transition:opacity .55s,transform .85s}.invitation>p{font-family:Editorial,'Times New Roman',serif;font-size:17px;color:#ebe4db;margin:0 0 22px;text-shadow:0 2px 8px #000}.button{display:inline-flex;align-items:center;gap:30px;justify-content:space-between;border:1px solid #e9d8b85e;background:rgba(10,22,33,.46);color:var(--white);padding:17px 20px 17px 27px;min-height:58px;font-size:10px;letter-spacing:.19em;backdrop-filter:blur(12px);transition:background .25s,border-color .25s,transform .25s;text-decoration:none}.button:hover{background:rgba(184,25,48,.85);border-color:#c44d5d;transform:translateY(-2px)}.button:active{transform:translateY(0)}.button .arrow{font-size:21px;line-height:1;font-weight:300;color:var(--gold)}.invitation>small{font-size:9px;letter-spacing:.11em;color:#d3c9b8a0;margin-top:16px}.playing .intro,.complete .intro,.playing .invitation,.complete .invitation{opacity:0;transform:translateY(-15px);pointer-events:none}.scene-caption{position:absolute;z-index:4;bottom:15%;left:8%;right:8%;text-align:center;font-family:Editorial,'Times New Roman',serif;font-size:clamp(23px,3vw,39px);font-style:italic;color:#ead9b8;text-shadow:0 4px 18px #000;opacity:0;transition:opacity .7s,transform 1s;transform:translateY(10px)}.scene-caption.visible{opacity:1;transform:translateY(0)}.footer{position:absolute;bottom:34px;left:4.3%;right:4.3%;display:flex;justify-content:space-between;align-items:center;z-index:6}.signature{font-size:8px;letter-spacing:.22em;color:#d9dedeb0}.signature span{color:var(--gold);margin:0 10px}.controls{display:flex;align-items:center;gap:21px}.utility{border:0;background:none;color:#d9deded0;font-size:8px;letter-spacing:.18em;display:flex;gap:9px;align-items:center;padding:8px 0;white-space:nowrap}.utility:hover{color:#fff}.utility svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.3;stroke-linejoin:round}.utility[aria-pressed=false] svg{opacity:.5}.utility[aria-pressed=false] svg path{stroke-dasharray:40 3}.divider{height:13px;width:1px;background:#ffffff25}.utility>span[aria-hidden]{font-size:17px}.timeline{position:absolute;bottom:0;height:2px;left:0;right:0;background:#ffffff07;z-index:7}.timeline>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#9d1530,#dec99d);box-shadow:0 0 10px #ddb46b33}.welcome{position:absolute;z-index:4;width:100%;top:12.5%;text-align:center;opacity:0;transform:translateY(18px);transition:opacity 1.7s,transform 1.7s}.welcome.show{opacity:1;transform:translateY(0)}.welcome h2{font-size:clamp(38px,4.6vw,77px);line-height:.99;margin:21px 0 18px}.welcome>p:not(.eyebrow){font-size:12px;letter-spacing:.09em;color:#e8e3d6d9}.welcome-actions{position:fixed;bottom:13%;width:100%;display:flex;flex-direction:column;align-items:center;gap:15px}.welcome-actions .button{background:#071726a6}.website-link{font-size:11px;text-underline-offset:5px;color:#eadac4}.ribbon{position:absolute;left:10%;right:10%;height:27px;top:58%;filter:drop-shadow(0 8px 6px #0006);z-index:2;transition:opacity .4s}.ribbon-left,.ribbon-right{position:absolute;width:50.1%;height:100%;top:0;background:linear-gradient(#ce1533 0%,#e72d45 12%,#9e0922 48%,#ac0c27 76%,#df2440 93%,#7c041c 100%);border-top:1px solid #f8c89038;border-bottom:1px solid #f8c89038;transition:transform 1.8s cubic-bezier(.4,.01,.9,.4),opacity 1.5s;backface-visibility:hidden}.ribbon-left{left:0;transform-origin:0 50%;clip-path:polygon(0 0,100% 0,99% 40%,100% 100%,0 100%)}.ribbon-right{right:0;transform-origin:100% 50%;clip-path:polygon(1% 0,100% 0,100% 100%,0 100%,1% 40%)}.ribbon-monogram{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:61px;height:61px;border-radius:50%;display:grid;place-items:center;color:#5f381c;background:radial-gradient(circle at 38% 27%,#f6e3ae,#c7a365 55%,#92713c);border:1px solid #ead1a0;box-shadow:0 0 0 4px #a5864d,0 0 0 5px #e9cb9380,0 5px 13px #0007;font-family:'Times New Roman',serif;letter-spacing:-.08em;font-size:28px;transition:transform .8s,opacity .5s}.ribbon.cut .ribbon-left{transform:rotate(20deg) translateY(170px);opacity:0}.ribbon.cut .ribbon-right{transform:rotate(-20deg) translateY(170px);opacity:0}.ribbon.cut .ribbon-monogram{transform:translate(-50%,200%) rotate(30deg);opacity:0}.silk-fallback{position:absolute;left:11.5%;right:11.5%;top:25%;bottom:21%;background:repeating-linear-gradient(93deg,#670717 0%,#c71b37 3%,#f03b50 4%,#9d1129 7%,#63071a 10%);border-radius:2% 2% 6% 5%;box-shadow:0 20px 35px #0008;transition:transform 5s cubic-bezier(.65,0,.35,1),opacity 4s;transform-origin:50% 0;overflow:hidden}.silk-fallback:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#6f091588,transparent 30%,#26030a60);box-shadow:inset 0 0 80px #38040f}.silk-fallback.lift{transform:translateY(-160%) scaleY(.55) skewX(-5deg);opacity:0}.silk-fallback[hidden]{display:none}#celebration{position:absolute;inset:0;pointer-events:none;z-index:3;width:100%;height:100%}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reduced-motion .world{transition:none}.reduced-motion #silk,.reduced-motion .ribbon{display:none}.reduced-motion .clinic{transition:none}.reduced-motion .intro,.reduced-motion .invitation{display:none}.reduced-motion .welcome{transition:none}
@media(min-aspect-ratio:19/10){.intro{top:13%}h1{font-size:9vh}.invitation{bottom:13%}.launch{min-height:500px}.welcome{top:13%}.welcome h2{font-size:10vh}}
@media(max-width:700px){.launch{min-height:560px}.masthead{top:27px;left:7%;right:7%}.wordmark>span{font-size:14px;letter-spacing:.12em}.wordmark svg{width:24px;height:32px}.wordmark{gap:9px}.wordmark small{font-size:6px;letter-spacing:.36em}.opening-label{font-size:7px;letter-spacing:.16em;gap:7px}.opening-label i{width:4px;height:4px}.intro{top:18%}.eyebrow{font-size:7px;letter-spacing:.19em;gap:10px}.eyebrow>span{width:16px}h1{font-size:clamp(32px,8.9vw,53px);line-height:1.12;margin-top:22px}.invitation{bottom:16%}.invitation>p{font-size:15px;padding:0 20px;text-align:center;margin-bottom:20px}.button{font-size:9px;min-height:55px;padding:15px 17px 15px 21px;gap:26px}.footer{bottom:28px;left:7%;right:7%;align-items:flex-end}.signature{font-size:6px;max-width:130px;line-height:2.1}.signature span{margin:0 5px}.controls{gap:14px}.utility{font-size:7px;gap:7px}.divider{height:12px}.welcome{top:17%}.welcome h2{font-size:48px}.welcome>p:not(.eyebrow){font-size:10px;letter-spacing:.03em}.welcome-actions{bottom:16%}.ribbon{height:21px}.ribbon-monogram{width:48px;height:48px;font-size:23px}.scene-caption{bottom:21%}}
/* Keep the invitation aligned with the viewport, including during its fade. */
/* Keep headline only inside the top navy band — never spill below it. */
.welcome{top:0!important;left:0;right:0;bottom:auto!important;height:26%!important;max-height:26%!important;padding:0!important;margin:0;transform:none!important;pointer-events:none;overflow:hidden;z-index:5;display:flex;align-items:flex-start;justify-content:center}
.welcome::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#061526 0%,#07182cf2 62%,#07182c00 100%);pointer-events:none}
.welcome-copy{position:relative;z-index:1;width:100%;padding:5.5svh 1.25rem 0;text-align:center}
.welcome.show{transform:none!important;opacity:1}
#welcome-actions.welcome-actions{position:absolute!important;top:auto!important;bottom:12%!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;z-index:8!important;pointer-events:auto;display:flex;flex-direction:column;align-items:center;gap:14px;width:max-content;max-width:calc(100% - 2rem);margin:0}
.welcome h2{font-size:clamp(26px,2.8vw,40px)!important;margin:10px 0 0!important;line-height:1.08!important;text-shadow:0 4px 22px #000a}
.welcome .eyebrow{color:var(--gold);text-shadow:0 2px 12px #0008;margin:0}
@media(min-width:901px){.welcome h2 br{display:none}.welcome h2 em:before{content:' '}}
@media(max-width:700px){.welcome{height:28%!important;max-height:28%!important}.welcome-copy{padding-top:6svh}.welcome h2{font-size:clamp(24px,6.2vw,34px)!important}}
.embedded .welcome{height:24%!important;max-height:24%!important}
.embedded .welcome-copy{padding-top:5svh}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.world{transition:none!important}}
.launch{min-height:0}
body{font-family:SourceSans,Arial,Helvetica,sans-serif}
.wordmark{position:relative;width:194px;height:48px}.brand-logo{position:absolute;left:-23px;top:-17px;width:241px;height:auto;filter:brightness(0) invert(1)}
.primary{background:#c8102e!important;border-color:transparent;border-radius:6px;box-shadow:0 10px 24px rgb(200 16 46 / .28);transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;transform:translateZ(0);justify-content:center;gap:12px;padding:14px 28px;min-height:48px;width:auto;max-width:100%}.primary:hover{background:#a70925!important;border-color:transparent;transform:translateY(-2px);box-shadow:0 14px 30px rgb(200 16 46 / .38)}.primary:active{transform:translateY(0) scale(.98);box-shadow:0 8px 18px rgb(200 16 46 / .24)}.button{justify-content:center!important;gap:12px!important}
.button.begin{background:#c8102e!important;border:1px solid #eb3653!important;border-radius:8px;min-height:58px;padding:16px 34px;font-size:12px;font-weight:700;letter-spacing:.18em;color:#fff!important;box-shadow:0 12px 28px rgb(200 16 46 / .42),0 0 0 1px rgb(255 255 255 / .08);text-shadow:0 1px 2px #0006;animation:unveilPulse 2.2s ease-in-out infinite}
.button.begin .arrow{color:#ffe3a8!important;font-size:22px}
.button.begin:hover{background:#a70925!important;border-color:#f06a7d!important;transform:translateY(-3px);box-shadow:0 18px 36px rgb(200 16 46 / .52)}
.button.begin:active{transform:translateY(0) scale(.98);animation:none}
.invitation>p{font-size:19px!important;color:#fff!important;font-weight:500;text-shadow:0 3px 14px #000a}
.invitation>small{font-size:11px!important;color:#f0e2c4!important;opacity:.95;letter-spacing:.14em}
@keyframes unveilPulse{0%,100%{box-shadow:0 12px 28px rgb(200 16 46 / .42),0 0 0 0 rgb(200 16 46 / 0)}50%{box-shadow:0 14px 32px rgb(200 16 46 / .5),0 0 0 10px rgb(200 16 46 / .08)}}
.website-link{display:inline-flex;align-items:center;justify-content:center;margin-top:4px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#f0e2c4;opacity:1;text-decoration:underline;text-underline-offset:6px;text-shadow:0 2px 10px #0008}.website-link:hover{color:#fff}.embedded .masthead,.embedded .signature{display:none}.embedded .controls{margin-left:auto}.embedded .intro{top:20%}
@media(min-aspect-ratio:19/10){.welcome{height:24%!important;max-height:24%!important}.welcome h2{font-size:clamp(26px,2.8vw,40px)!important}}
.intro{top:20%;padding-top:.5rem}
@media(max-width:700px){.intro{top:20%}}
@media(min-aspect-ratio:19/10){.intro{top:16%}}
@media(max-height:650px){.intro{top:18%}}
/* Fill the host iframe without nested page scrollbars or horizontal overflow. */
html:has(body.embedded),body.embedded{width:100%;height:100%;overflow:hidden}
body.embedded .launch{width:100%;height:100%;min-height:0;overflow:hidden}
/* Keep curtain framing locked until reveal; do not shrink on play/cut wait. */
.world{transform:translate(-50%,-50%) scale(1)!important;transition:none!important}
.launch.playing .world{transform:translate(-50%,-50%) scale(1)!important}
.launch.revealing .world,.launch.complete .world{transform:translate(-50%,-50%) scale(1)!important}
.world{background:#07182c}.world:before{content:'';position:absolute;inset:-3%;background:url('./assets/clinic-concept.webp') center/100% 100% no-repeat;filter:blur(26px) brightness(.35)}
.clinic{transform:scale(.84) translateY(3%);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent),linear-gradient(180deg,transparent,#000 8%,#000 89%,transparent);mask-composite:intersect}
.scissors{position:absolute;z-index:4;left:50%;top:58%;width:clamp(110px,10.8%,190px);aspect-ratio:140/150;opacity:0;transform:translate(8%,4%) rotate(18deg) scale(.9);filter:drop-shadow(0 12px 11px #0008);transition:transform 1.05s cubic-bezier(.2,.8,.3,1),opacity .55s;pointer-events:none}
.scissors svg{display:block;width:100%;height:100%;overflow:visible}.scissors.arrive{opacity:1;transform:translate(-50%,-32%) rotate(-5deg) scale(1)}
.scissor-arm{transform-origin:70px 80px;transition:transform .28s cubic-bezier(.6,0,.5,1)}.arm-one{transform:rotate(8deg)}.arm-two{transform:rotate(-8deg)}.snip .arm-one{transform:rotate(-13deg)}.snip .arm-two{transform:rotate(13deg)}
.scissors.leave{opacity:0;transform:translate(30%,45%) rotate(28deg) scale(.92);transition:transform .85s ease-in,opacity .55s}
.ribbon.unseal .ribbon-monogram{opacity:0;transform:translate(-50%,35%) rotate(-15deg) scale(.85);transition:transform .6s,opacity .4s}
.ribbon-left,.ribbon-right{transition:none;box-shadow:inset 0 3px 2px #ff799139,inset 0 -2px 3px #51051980}.ribbon-left:after,.ribbon-right:after{content:'';position:absolute;inset:5px 0;border-top:1px solid #ffc1a54a;border-bottom:1px solid #ffc1a54a}
.ribbon.cut .ribbon-left{animation:ribbonFallLeft 1.55s cubic-bezier(.3,0,.8,.5) forwards}.ribbon.cut .ribbon-right{animation:ribbonFallRight 1.65s .06s cubic-bezier(.3,0,.8,.5) forwards}
@keyframes ribbonFallLeft{0%{transform:rotate(0) translateY(0);opacity:1}20%{transform:rotate(3deg) translate(-4px,7px);opacity:1}55%{transform:rotate(11deg) translate(-16px,75px) skewY(3deg);opacity:.95}100%{transform:rotate(26deg) translate(-90px,265px) skewY(9deg);opacity:0}}
@keyframes ribbonFallRight{0%{transform:rotate(0) translateY(0);opacity:1}20%{transform:rotate(-4deg) translate(4px,9px);opacity:1}55%{transform:rotate(-14deg) translate(25px,90px) skewY(-4deg);opacity:.95}100%{transform:rotate(-30deg) translate(110px,285px) skewY(-8deg);opacity:0}}
.cut-glint{position:absolute;left:50%;top:29%;width:0;height:2px;opacity:0;background:linear-gradient(90deg,transparent,#fff4cd,white,#fff4cd,transparent);box-shadow:0 0 12px #ffe4a9;transform:translate(-50%,-50%) rotate(8deg)}
.snip .cut-glint{animation:cutGlint .6s .14s ease-out both}@keyframes cutGlint{0%{width:0;opacity:0}25%{width:95px;opacity:1}100%{width:145px;opacity:0}}
.reduced-motion .scissors{display:none}
.ribbon{left:0;right:0}.silk-fallback{left:0;right:0;top:0;bottom:16%;border-radius:0}
@media(max-width:700px){.wordmark{width:146px;height:38px}.brand-logo{width:194px;left:-20px;top:-15px}}
@media(max-height:650px){.masthead{top:22px}.intro{top:17%}h1{font-size:clamp(26px,7.3vh,49px);margin:14px 0}.eyebrow{font-size:7px}.invitation{bottom:13%}.invitation>p{margin-bottom:12px;font-size:14px}.button{min-height:43px;padding:11px 16px;font-size:8px}.invitation>small{margin-top:9px;font-size:7px}.footer{bottom:18px}.welcome{padding-top:12svh}.welcome h2{font-size:clamp(28px,7vh,44px);margin:12px 0}.welcome>p:not(.eyebrow){font-size:10px}.welcome-actions{bottom:14%}.wordmark>span{font-size:14px}.wordmark svg{width:24px;height:30px}}

/* Ceremony detailing: curved silk band, dimensional bow, polished shears. */
.ribbon{height:42px;perspective:1100px;filter:drop-shadow(0 10px 7px #19040f80);transform-style:preserve-3d}
.ribbon-left,.ribbon-right{height:100%;width:50.1%;background:none;border:0;box-shadow:none;backface-visibility:visible;transform-style:preserve-3d;transition:none;clip-path:none}
.ribbon-left{transform-origin:0 35%}.ribbon-right{transform-origin:100% 35%}
.ribbon-left:after,.ribbon-right:after{display:none}.ribbon-satin{display:block;width:100%;height:100%;overflow:visible}
.ribbon-monogram{display:block;width:clamp(122px,10.5vw,174px);height:auto;aspect-ratio:240/192;top:50%;border:0;border-radius:0;background:none;box-shadow:none;transform:translate(-50%,-41.7%) rotate(-2deg);filter:drop-shadow(1px 7px 5px #25000fb3);transition:transform 1.15s cubic-bezier(.3,.02,.7,.7),opacity .8s .3s}
.ceremony-bow{display:block;width:100%;height:100%;overflow:visible}.bow-loop{transform-origin:120px 80px;transition:transform 1.1s}.bow-tails{transform-origin:120px 85px;transition:transform 1.1s}
.ribbon.unseal .ribbon-monogram,.ribbon.cut .ribbon-monogram{opacity:0;transform:translate(-42%,45%) rotate(16deg) scale(.92);transition:transform 1.2s cubic-bezier(.3,.02,.7,.7),opacity .7s .35s}
.ribbon.unseal .bow-loop-one{transform:rotate(-9deg) translate(-3px,3px)}.ribbon.unseal .bow-loop-two{transform:rotate(8deg) translate(3px,3px)}.ribbon.unseal .bow-tails{transform:rotate(-6deg) translateY(5px)}
.scissors{width:clamp(120px,11.8%,190px);filter:drop-shadow(1px 2px 1px #12182680) drop-shadow(0 15px 11px #0008)}
.scissors.arrive{transform:translate(-50%,-32%) rotate(-3deg) scale(1);transition:transform 1.45s cubic-bezier(.2,.8,.3,1),opacity .75s}
.scissor-arm{transform-origin:70px 80px;transition:transform .55s cubic-bezier(.48,.02,.24,1)}
.arm-one{transform:rotate(10deg)}.arm-two{transform:rotate(-10deg)}
.snip .arm-one{transform:rotate(-18.5deg)}.snip .arm-two{transform:rotate(18.5deg)}
.scissors.leave{transform:translate(33%,51%) rotate(24deg) scale(.94);transition:transform 1.25s cubic-bezier(.4,.01,.85,.7),opacity .95s .15s}
.ribbon.cut .ribbon-left{clip-path:polygon(0 0,99.4% 0,99.7% 23%,99.35% 36%,99.8% 49%,99.3% 62%,99.7% 76%,99.3% 100%,0 100%);animation:satinDropLeft 2.65s cubic-bezier(.32,.02,.75,.55) both}
.ribbon.cut .ribbon-right{clip-path:polygon(.6% 0,100% 0,100% 100%,.7% 100%,.3% 76%,.7% 62%,.2% 49%,.65% 36%,.3% 23%);animation:satinDropRight 2.8s .08s cubic-bezier(.32,.02,.75,.55) both}
@keyframes satinDropLeft{0%{transform:translate3d(0,0,0) rotateZ(0) rotateX(0);opacity:1}14%{transform:translate3d(-5px,5px,12px) rotateZ(2deg) rotateX(-12deg);opacity:1}42%{transform:translate3d(-25px,41px,30px) rotateZ(9deg) rotateX(28deg) skewY(3deg);opacity:1}72%{transform:translate3d(-70px,130px,-30px) rotateZ(19deg) rotateX(-47deg) skewY(5deg);opacity:1}100%{transform:translate3d(-150px,340px,-110px) rotateZ(34deg) rotateX(96deg) skewY(8deg);opacity:0}}
@keyframes satinDropRight{0%{transform:translate3d(0,0,0) rotateZ(0) rotateX(0);opacity:1}14%{transform:translate3d(5px,7px,10px) rotateZ(-3deg) rotateX(14deg);opacity:1}42%{transform:translate3d(29px,53px,25px) rotateZ(-11deg) rotateX(-31deg) skewY(-3deg);opacity:1}72%{transform:translate3d(83px,155px,-40px) rotateZ(-24deg) rotateX(53deg) skewY(-6deg);opacity:1}100%{transform:translate3d(170px,365px,-120px) rotateZ(-39deg) rotateX(-105deg) skewY(-9deg);opacity:0}}
.cut-glint{top:42%;height:1px;filter:blur(.2px);box-shadow:0 0 9px #fff6db;transform:translate(-50%,-50%) rotate(-3deg)}
.snip .cut-glint{animation:cutGlint .7s .32s ease-out both}
@media(max-width:700px){.ribbon{height:36px}.ribbon-monogram{width:122px}.scissors{width:clamp(139px,11.8%,174px)}}
