:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#071a34;background:#020817;--navy:#03112f;--blue:#218cff;--red:#f01843;--gold:#ffc21c;--muted:#62738f}
*{box-sizing:border-box}body{min-height:100vh;margin:0;padding:28px;background:radial-gradient(circle at 78% 8%,rgb(240 24 67 / 18%),transparent 30rem),radial-gradient(circle at 10% 15%,rgb(33 140 255 / 18%),transparent 30rem),linear-gradient(145deg,#031431,#010612 72%)}a{color:#1267da}.certificate-shell,.verification-shell{width:min(100%,1040px);margin:auto}.certificate{position:relative;min-height:700px;overflow:hidden;padding:34px 46px 28px;border:10px solid var(--gold);border-radius:30px;background:linear-gradient(135deg,rgb(255 255 255 / 98%),rgb(239 246 255 / 98%));box-shadow:inset 0 0 0 3px var(--navy),inset 0 0 0 7px #fff,inset 0 0 0 10px var(--red),0 30px 90px rgb(0 0 0 / 45%);text-align:center;isolation:isolate}.certificate:before,.certificate:after{position:absolute;z-index:-1;border-radius:50%;content:""}.certificate:before{top:-250px;left:-210px;width:520px;height:520px;border:85px solid rgb(240 24 67 / 7%)}.certificate:after{right:-230px;bottom:-280px;width:570px;height:570px;border:95px solid rgb(33 140 255 / 7%)}.certificate-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 4px 18px;border-bottom:2px solid #d7ad3f;text-align:left}.certificate-logo,.verification-logo{display:block;width:min(100%,390px);height:auto}.certificate-title{display:grid;color:var(--muted);font-size:11px;font-weight:950;letter-spacing:.18em;text-align:right;text-transform:uppercase}.certificate-title strong{margin-top:3px;color:var(--red);font-size:19px}.certificate-title:after{content:"Hosted by Rumba the Numba";margin-top:7px;color:#8a6200;font-size:9px;letter-spacing:.12em}.award-seal{position:absolute;z-index:2;top:130px;right:52px;display:grid;width:120px;height:120px;place-content:center;border:4px double #7a5200;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff4b0 0 7%,#f2c94c 32%,#bd8412 78%,#8a5b00 100%);box-shadow:0 0 0 5px #f7e29a,0 0 0 7px #8a5b00,0 10px 22px rgb(59 40 0 / 24%);color:#4a3000;line-height:1.05;text-align:center;transform:rotate(4deg)}.award-seal:before,.award-seal:after{position:absolute;z-index:-1;bottom:-42px;width:37px;height:62px;background:linear-gradient(90deg,#9b0e26,#d31633 48%,#8b0b20);content:"";clip-path:polygon(0 0,100% 0,100% 100%,50% 77%,0 100%)}.award-seal:before{left:18px;transform:rotate(8deg)}.award-seal:after{right:18px;transform:rotate(-8deg)}.award-seal span,.award-seal b{display:block;text-transform:uppercase}.award-seal span{font-size:16px;font-weight:950}.award-seal b{margin-top:5px;padding-top:5px;border-top:1px solid rgb(74 48 0 / 45%);font-size:10px;letter-spacing:.1em}.certificate-content{position:relative;z-index:1;width:min(100%,720px);margin:30px auto 18px}.certificate-eyebrow,.certificate-number-label{margin:0;color:var(--muted);font-size:12px;font-weight:950;letter-spacing:.18em;text-transform:uppercase}.certificate h1{margin:8px 120px 3px;color:var(--navy);font-size:clamp(54px,8.5vw,94px);letter-spacing:-.055em;line-height:.95;overflow-wrap:anywhere;text-transform:uppercase}.certificate h1.certificate-name--long{margin-inline:105px;font-size:clamp(42px,6.6vw,72px)}.certificate h1.certificate-name--extra-long{margin-inline:95px;font-size:clamp(32px,5.2vw,56px);letter-spacing:-.035em}.certificate-number-label{color:#8a6200}.certificate-number,.verification-number{color:var(--red);font-family:Georgia,"Times New Roman",serif;font-size:clamp(94px,17vw,160px);font-weight:800;letter-spacing:-.07em;line-height:.83;text-shadow:0 3px 0 #f6d777}.certificate-number--long{font-size:clamp(78px,13vw,122px)}.certificate-number--extra-long{font-size:clamp(66px,11vw,104px)}.certificate-details{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;margin:18px 0 16px}.certificate-detail{min-width:0;padding:11px 12px;border:1px solid #c6d5e7;border-radius:13px;background:rgb(255 255 255 / 85%)}.certificate-detail dt,.certificate-footer span{color:#64748b;font-size:9px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.certificate-detail dd{display:flex;min-height:27px;align-items:center;justify-content:center;gap:9px;margin:3px 0 0;color:#0b2344;font-size:14px}.certificate-country-flag{width:38px;height:26px;border:1px solid #a8b7ca;border-radius:4px;object-fit:cover}.certificate-country-globe{font-size:22px}.certificate-footer{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(300px,1.1fr);align-items:end;gap:22px;padding-top:13px;border-top:2px solid #d7ad3f;text-align:left}.certificate-id{display:block;margin-top:4px;color:#334e6c;font:11px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.certificate-disclaimer{margin:0;color:#52677f;font-size:10px;line-height:1.4;text-align:right}.certificate-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px}.certificate-actions a,.certificate-actions button{min-height:48px;padding:0 20px;border:0;border-radius:14px;background:linear-gradient(135deg,#2a93ff,#1267da);color:#fff;cursor:pointer;font-weight:900;text-decoration:none}.certificate-actions a:nth-child(2){background:linear-gradient(135deg,#ffdb52,#ffb800);color:#281800}.certificate-actions a:last-child{background:#f01843}.certificate-not-found{min-height:420px;display:grid;place-content:center}.verification-shell{display:grid;min-height:calc(100vh - 56px);place-items:center}.verification-card{width:min(100%,650px);padding:38px;border:2px solid var(--blue);border-radius:28px;background:linear-gradient(145deg,#fff,#edf4ff);box-shadow:0 28px 80px rgb(0 0 0 / 42%);text-align:center}.verification-logo{margin:0 auto 20px}.verified-label,.not-verified-label{display:inline-block;padding:8px 13px;border-radius:999px;font-weight:950}.verified-label{background:#d9f5e4;color:#14532d}.not-verified-label{background:#ffe1e5;color:#7f1d2d}.verification-card h1{margin:16px 0 4px;font-size:clamp(46px,8vw,78px);letter-spacing:-.05em}.verification-number{margin:5px 0 20px}.verification-card dl{display:grid;gap:8px;text-align:left}.verification-card dl div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:12px;border-radius:12px;background:#fff}.verification-card dt{color:#64748b;font-weight:850}.verification-card dd{margin:0;overflow-wrap:anywhere}.verification-card p a{display:inline-flex;min-height:46px;align-items:center;padding:0 18px;border-radius:13px;background:#1267da;color:white;font-weight:900;text-decoration:none}@media(max-width:700px){body{padding:12px}.certificate{padding:25px 20px}.certificate-header{display:grid}.certificate-logo{width:100%}.certificate-title{text-align:left}.award-seal{position:relative;top:auto;right:auto;margin:22px auto}.certificate h1,.certificate h1.certificate-name--long,.certificate h1.certificate-name--extra-long{margin-inline:0}.certificate-details,.certificate-footer{grid-template-columns:1fr}.certificate-disclaimer{text-align:left}.verification-card dl div{grid-template-columns:1fr}}
@media print{body{padding:0;background:#fff}.certificate-shell{width:100%}.certificate{min-height:100vh;border-radius:0;box-shadow:none}.certificate-actions{display:none}}

.certificate-rumba-signature{display:flex;align-items:center;justify-content:center;gap:14px;margin:14px auto 20px;padding:10px 16px;max-width:430px;border-top:1px solid #d7b65a;border-bottom:1px solid #d7b65a}.certificate-rumba-signature img{width:62px;height:62px;border-radius:50%;object-fit:cover}.certificate-rumba-signature span,.certificate-rumba-signature small{display:block;color:#6c5a30;font-size:11px}.certificate-rumba-signature strong{display:block;font-family:Georgia,serif;font-size:20px;color:#1d2845}
.v3-hall--premium .v3-hall-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.v3-hall--premium .v3-hall-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;min-height:190px;padding:28px;border:1px solid rgba(255,197,44,.55);background:linear-gradient(145deg,rgba(16,42,87,.96),rgba(5,17,42,.98));box-shadow:0 20px 45px rgba(0,0,0,.28)}.v3-hall-crown{position:absolute;right:20px;top:18px;font-size:28px}.v3-hall--premium .v3-hall-number{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;background:radial-gradient(circle,#ffd866,#b8860b);color:#07162f;font-size:34px;font-weight:1000;box-shadow:0 0 28px rgba(255,197,44,.3)}.v3-hall--premium .v3-hall-card a{grid-column:1/-1;justify-self:stretch;text-align:center;padding:12px;border-radius:12px;background:#1f7bff;color:white;text-decoration:none;font-weight:900}.certificate-verification-qr{display:flex;align-items:center;justify-content:center;gap:18px;margin:24px auto;padding:16px;border:1px solid #c49a28;border-radius:16px;background:rgba(255,255,255,.7);max-width:520px}.certificate-verification-qr img{width:104px;height:104px}.certificate-verification-qr span,.certificate-verification-qr strong,.certificate-verification-qr small{display:block}.certificate-verification-qr span{color:#8b6914;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900}.verification-form{margin:26px 0}.verification-form label{display:block;font-weight:900;margin-bottom:8px}.verification-form div{display:flex;gap:10px}.verification-form input{min-width:0;flex:1;padding:14px;border:2px solid #cbd5e1;border-radius:12px}.verification-form button,.verification-actions a,.verification-actions button{border:0;border-radius:12px;padding:13px 16px;background:#1f7bff;color:white;font-weight:900;text-decoration:none;cursor:pointer}.verification-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.verification-id{overflow-wrap:anywhere}@media(max-width:600px){.certificate-verification-qr,.verification-form div{flex-direction:column}.certificate-verification-qr{text-align:center}}

/* Version 1.0.3: standalone certificate image containment and cache-safe layout. */
.certificate img,.verification-card img{max-width:100%;height:auto}
.certificate-header .certificate-logo{width:min(390px,52%);max-height:120px;object-fit:contain}
.certificate-verification-qr img{width:104px!important;height:104px!important;max-width:104px!important;object-fit:contain}
.certificate-rumba-signature img{width:62px!important;height:62px!important;max-width:62px!important;object-fit:cover}
@media(max-width:700px){.certificate-header .certificate-logo{width:min(100%,390px)}}
