:root{--green:#002e27;--ink:#103e35;--cream:#f6f6f0;--gold:#ac9154}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Tahoma,Arial,sans-serif;min-height:100svh;display:flex;flex-direction:column}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}[hidden]{display:none!important}.top{max-width:1320px;width:100%;margin:auto;padding:30px 6%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:var(--ink);font-size:22px;font-weight:700}.brand small{display:block;font-size:12px;line-height:1.8;font-weight:400}.mark{display:grid;place-items:center;background:var(--green);color:#ddd4a2;border-radius:50%;width:53px;height:53px;font-size:26px}.university{font-size:13px;line-height:1.7;color:#53675e}main{width:100%;max-width:1320px;margin:auto;flex:1;padding:20px 6% 0}.entry{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;column-gap:7%;min-height:660px}.intro{padding:20px 0 10px;position:relative;z-index:2}.eyebrow{font-size:15px;font-weight:700;color:#69735a;display:flex;align-items:center;gap:12px}.eyebrow>span{width:24px;height:1px;background:#a28f5d}h1{font-size:clamp(45px,5.3vw,75px);line-height:1.5;letter-spacing:-2px;margin:17px 0;font-weight:700}h1 em{font-style:normal;color:#a28f5d}.lead{font-size:18px;line-height:1.9;color:#63716a;margin:12px 0 30px}form{max-width:430px}label{font-size:15px;font-weight:700;display:block;margin-bottom:12px}input{width:100%;height:62px;border:1px solid #c9d0c4;background:#fff;border-radius:9px;padding:0 18px;color:var(--green);font-size:18px}input:focus{outline:3px solid #adbc9950;border-color:#477c61}.primary{width:100%;border:0;background:var(--green);color:white;border-radius:9px;min-height:60px;display:flex;justify-content:space-between;align-items:center;padding:15px 22px;font-weight:700;font-size:17px;transition:background .2s,transform .2s}.primary:hover{background:#145442;transform:translateY(-1px)}button:focus-visible,a:focus-visible{outline:3px solid #b29a59;outline-offset:5px}.error{color:#a63232;font-size:14px;min-height:21px;margin:7px 0}.note{font-size:13px;color:#6b7b71;line-height:1.8;margin-top:15px}.visual{position:relative;height:540px;display:flex;align-items:center;justify-content:center;flex-direction:column}.halo{width:92%;aspect-ratio:1;border:1px solid #dce2d5;border-radius:50%;position:absolute;top:0;background:radial-gradient(circle,#dde5d5 0,transparent 68%)}.halo:after{content:"";position:absolute;inset:20px;border:1px solid #e1e5da;border-radius:50%}.fan{width:100%;height:410px;position:relative;direction:ltr}.card{position:absolute;width:68%;max-width:335px;box-shadow:0 22px 38px #153c3228;border-radius:3px;top:60px;left:15%;border:4px solid #fff}.c1{transform:translateX(-50px) rotate(-15deg);top:40px}.c2{transform:translateX(45px) rotate(13deg);top:27px}.c3{transform:rotate(-3deg);top:65px;animation:arrive 1s both}.visual-label{position:relative;text-align:center;font-size:24px;font-weight:bold;margin-top:28px}.visual-label span{display:block;font-weight:400;font-size:14px;color:#758272;margin-top:10px}.identities{grid-column:1/-1;display:flex;justify-content:center;gap:28px;border-top:1px solid #dde2d8;padding:26px 0 20px;margin-top:30px;flex-wrap:wrap}.identities span{font-size:14px;display:flex;gap:9px;align-items:center}.identities span:before{content:"";width:8px;height:8px;background:var(--c);transform:rotate(45deg)}footer{display:flex;justify-content:space-between;gap:15px;max-width:1320px;width:100%;margin:0 auto;padding:24px 6%;font-size:12px;color:#718076}.loading{min-height:600px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.loading-mark{border:1px solid #c8b577;border-radius:50%;width:100px;height:100px;background:var(--green);color:#dfd29e;display:grid;place-items:center;font-size:45px;animation:pulse 1s infinite alternate}.loading h2{font-size:27px}.loading p{color:#63716a}.result{display:grid;grid-template-columns:.75fr 1.25fr;gap:6%;align-items:center;padding:30px 0;animation:arrive .6s both}.result h1{font-size:48px;letter-spacing:-1px}.result-copy>p{font-size:18px;line-height:1.9;overflow-wrap:anywhere}.result-copy .note{font-size:13px}.result-actions{max-width:350px;margin-top:30px}.secondary{width:100%;background:transparent;border:1px solid #bccaba;color:var(--ink);min-height:53px;border-radius:9px;margin-top:12px}.invitation-wrap{width:100%;box-shadow:0 15px 45px #002e2720;background:var(--green)}#invitation{display:block;width:100%;height:auto}body.busy .top{opacity:.6}@keyframes arrive{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}@keyframes pulse{to{scale:1.08;box-shadow:0 0 0 15px #dbe2ce}}@media(max-width:760px){.top{padding:22px 6%}.brand{font-size:18px}.mark{width:46px;height:46px;font-size:24px}.university{font-size:11px;max-width:160px}.entry{grid-template-columns:1fr;min-height:0;gap:0}.intro{padding-top:8px}h1{font-size:48px;margin:12px 0;line-height:1.4}.lead{font-size:16px;margin:10px 0 24px}.desktop{display:none}form{max-width:none}.visual{height:350px;max-width:380px;width:100%;margin:32px auto 0}.fan{height:265px}.card{width:58%;left:21%;top:28px}.c1{top:15px;transform:translateX(-41px) rotate(-15deg)}.c2{top:12px;transform:translateX(40px) rotate(13deg)}.c3{top:34px}.halo{width:82%;max-height:305px}.visual-label{font-size:21px;margin:4px 0}.identities{gap:18px 24px;margin-top:18px;padding:24px 6px}.identities span{font-size:13px}footer{font-size:12px;flex-direction:column;text-align:center;gap:7px}.result{grid-template-columns:1fr;padding-top:10px;gap:25px}.result-copy{display:contents}.result .eyebrow{margin-top:10px}.result h1{font-size:35px;margin:0}.result-copy>p{margin:0}.invitation-wrap{grid-row:4}.result-actions{max-width:none;margin:0}.result-copy .note{grid-row:6}.loading{min-height:65svh}main{padding-top:6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:370px){.university{display:none}h1{font-size:42px}.identities{gap:15px}}
/* University / National Day green-and-gold identity */
:root{--green:#073e30;--ink:#f5eed7;--cream:#022d25;--gold:#cfb374}body{background:radial-gradient(ellipse at 0 35%,#164937 0,transparent 48%),linear-gradient(140deg,#052f25,#011e1a);color:var(--ink)}.top{border-bottom:1px solid #cdb46f30;padding-top:20px;padding-bottom:20px}.brand{color:#f3e8c6}.mark{border:1px solid #cdb46f;background:transparent;color:#e1c37e}.university-logo{position:relative;width:280px;height:104px;overflow:hidden;border-radius:3px;background:#d9d9d9;flex-shrink:0}.university-logo img{position:absolute;width:870px;max-width:none;left:-37px;top:-183px}.preview-notice{font-size:13px;color:#ddca98;border-bottom:1px solid #c9aa6b25;padding:10px 0 13px;line-height:1.8}.entry{column-gap:5%;grid-template-columns:1fr 1.03fr;min-height:700px}.eyebrow{color:#d5c18c;font-weight:400}.eyebrow>span{background:#d5c18c}h1{font-size:clamp(42px,4.7vw,65px);letter-spacing:-1.5px;line-height:1.65;margin-top:13px}h1 em{color:#d8ba76}.lead{color:#ced5c9;font-size:17px;line-height:1.9}label{color:#f1e5c9}input{background:#f6f1e6;border:1px solid #d2bd88;color:#163d2e}.primary{background:linear-gradient(110deg,#c0a05d,#ead399);color:#163829;border:1px solid #efdb9b;box-shadow:0 6px 20px #0002}.primary:hover{background:#f0daa2;color:#0a3225}.note{color:#bac9bb}.error{color:#ffb4ae}.secondary{border-color:#b7a573;color:#eee0ba}.visual{height:580px;align-self:center}.tower-scene{position:absolute;top:0;left:0;right:0;height:285px;overflow:hidden;border-radius:160px 160px 5px 5px;border:1px solid #c3a36580;box-shadow:0 20px 40px #0003}.tower-scene img{width:110%;height:110%;object-fit:cover;object-position:80% 50%;position:absolute;left:-5%;top:-5%}.tower-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#032d25,transparent 70%)}.halo{top:30px;border-color:#cbb47540;background:none;width:100%;height:445px;border-radius:45%}.halo:after{border-color:#cbb47520}.fan{top:135px;height:375px}.card{width:53%;left:24%;border:2px solid #cbbf93;border-radius:2px;box-shadow:0 24px 44px #0008}.c1{transform:translateX(-54px) rotate(-14deg);top:60px}.c2{transform:translateX(50px) rotate(13deg);top:47px}.c3{top:78px;transform:rotate(-2deg)}.visual-label{margin-top:132px;color:#eed6a0;font-size:25px}.visual-label span{color:#b6c4af}.ornament{width:172px;height:25px;position:relative;overflow:hidden;grid-column:1/-1;margin:22px auto 0;opacity:.7;display:none}.identities{margin-top:35px;border-color:#c8af6a40;background:#021e1833;border-bottom:1px solid #c8af6a25}.identities span{color:#dedbc3}footer{color:#aebdb0;border-top:1px solid #c6a96825}.result h1{color:#dec58c}.result .eyebrow{color:#c1b689}.result-copy>p{color:#d8dfcf}.result-copy .note{color:#b9c6b8}.invitation-wrap{border:1px solid #b49b64;box-shadow:0 15px 45px #0005}.loading p{color:#d9d6bc}.loading-mark{color:#e0c483;border-color:#e0c483}.loading h2{color:#f3e6c5}input:focus{outline:3px solid #cdb26d70;border-color:#edd28b}@media(max-width:760px){.top{padding:17px 6%;gap:12px}.brand{font-size:15px}.brand small{font-size:12px}.mark{display:none}.university-logo{width:168px;height:63px}.university-logo img{width:522px;left:-22px;top:-110px}.preview-notice{font-size:12px;padding-bottom:12px}.entry{grid-template-columns:1fr;min-height:0}.intro{padding-top:25px}h1{font-size:42px;line-height:1.55}.lead{font-size:16px}.visual{height:420px;margin-top:32px;max-width:400px}.tower-scene{height:205px}.halo{height:320px}.fan{top:85px;height:280px}.card{width:52%;left:24%}.c1{top:44px}.c2{top:30px}.c3{top:61px}.visual-label{margin-top:84px;font-size:21px}.identities{margin-top:24px}.result .result-copy>p{font-size:16px}.result h1{font-size:34px}.top .brand{gap:5px}.university{display:none}}@media(max-width:370px){.university-logo{width:145px;height:56px}.university-logo img{width:452px;left:-19px;top:-95px}h1{font-size:37px}}
.ornament{display:block;width:66px;height:66px;border-radius:50%;border:1px solid #c5aa67;opacity:.9;margin-top:30px}.ornament img{position:absolute;width:470px;max-width:none;left:-27px;top:-121px}.identities{margin-top:20px}
/* Architecture is part of the page, not a framed illustration. */
body{overflow-x:hidden}.entry{position:relative;isolation:isolate;min-height:730px}.entry:before{content:"";position:absolute;z-index:-1;pointer-events:none;width:64%;height:810px;left:-8%;top:-25px;background:url('assets/tower-linework.png') center 55%/cover no-repeat;opacity:.9;mask-image:linear-gradient(to right,transparent 0%,black 12%,black 75%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 12%,black 75%,transparent 100%)}.architecture-space{height:560px;justify-content:flex-end;align-items:flex-start;padding:0 0 0 22px}.architecture-space .visual-label{margin:0 0 0 18px;font-size:25px;text-shadow:0 3px 15px #001a14;background:linear-gradient(0deg,#022d25dd,transparent);padding:14px 25px}.entry .intro{padding-bottom:38px}.entry .identities{background:#02271fe8;position:relative;z-index:2}.entry .ornament{display:none}.preview-notice{position:relative;z-index:3}.result{position:relative;z-index:2}@media(max-width:760px){.entry{min-height:0}.entry:before{width:115%;height:630px;left:-29%;top:5px;opacity:.26;background-position:center 35%;mask-image:linear-gradient(to bottom,black 0%,black 50%,transparent 94%);-webkit-mask-image:linear-gradient(to bottom,black 0%,black 50%,transparent 94%)}.entry .intro{padding-top:28px;padding-bottom:10px}.architecture-space{height:270px;max-width:none;margin:0;padding:0;position:relative;align-items:center;justify-content:flex-end;background:url('assets/tower-linework.png') center 62%/100% auto no-repeat;mask-image:linear-gradient(to bottom,transparent 0%,black 25%,black 85%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 25%,black 85%,transparent 100%)}.architecture-space .visual-label{margin:0;padding:14px 20px 30px;font-size:21px}.entry .identities{margin-top:0}.lead{color:#e1e4d5}form{position:relative;z-index:2}}
/* Gold filigree, brand cutout and a choreographed entrance. */
body{font-family:'Tajawal',Tahoma,Arial,sans-serif;background:radial-gradient(ellipse at 8% 12%,#1e594330,transparent 46%),radial-gradient(ellipse at 95% 65%,#49614022,transparent 42%),#02271f;position:relative;isolation:isolate}body:before{content:"";position:fixed;pointer-events:none;inset:12px;z-index:-1;border:1px solid #c7a96726;background:repeating-linear-gradient(45deg,transparent 0 79px,#d4b77504 80px 81px,transparent 82px 160px)}body:after{content:"";pointer-events:none;position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at center,transparent 38%,#00120b66)}.top{border-bottom:0;padding-top:30px;animation:brand-arrival 1s both}.brand{font-weight:700;letter-spacing:0}.mark{border-radius:0;clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%);background:#c9b07915}.university-logo{background:transparent;border:0;border-radius:0;mix-blend-mode:screen;animation:brand-hover 7s ease-in-out infinite}.university-logo img{filter:grayscale(1) invert(1) contrast(5);mix-blend-mode:screen}.brand small{color:#b7c5b8}.entry h1{font-family:'Amiri',Georgia,serif;font-size:clamp(53px,6vw,82px);font-weight:700;letter-spacing:0;line-height:1.35;margin:25px 0 27px;text-shadow:0 3px 26px #051c15}.entry h1 em{color:#e4c782;text-shadow:0 0 35px #bfa46022}.eyebrow{font-size:16px;letter-spacing:0}.lead{font-weight:400;font-size:20px;line-height:1.9}.intro .eyebrow{animation:rise-in .8s .12s both}.intro h1{animation:rise-in 1s .25s both}.intro .lead{animation:rise-in .9s .4s both}#name-form{animation:rise-in .9s .55s both}.intro>.note{animation:rise-in .9s .65s both}.entry:before{animation:architecture-in 1.8s .1s both}.architecture-space .visual-label{font-family:'Amiri',serif;font-size:30px;animation:rise-in 1s .8s both}.architecture-space .visual-label span{font-family:'Tajawal',sans-serif;font-size:16px}.preview-notice{border:0;opacity:.75;font-size:12px}label{font-size:16px}input{border:1px solid #d1b57277;border-radius:3px;background:linear-gradient(110deg,#092f27ed,#123e30ed);color:#fff2d1;height:64px;font-size:20px;box-shadow:inset 0 0 18px #0002}input::placeholder{color:#b8bca7}input:focus{background:#123c30;box-shadow:0 0 22px #c9ad5820}.primary{position:relative;isolation:isolate;border-radius:0;min-height:67px;justify-content:center;gap:22px;font-size:20px;background:linear-gradient(100deg,#ad8b42 0%,#e4c98b 32%,#f3dfad 51%,#c7a15b 100%);color:#102f21;border:0;clip-path:polygon(17px 0,calc(100% - 17px) 0,100% 17px,100% calc(100% - 17px),calc(100% - 17px) 100%,17px 100%,0 calc(100% - 17px),0 17px);box-shadow:none;transition:filter .25s,translate .25s}.primary:before{content:"";position:absolute;inset:6px;border:1px solid #57461488;clip-path:polygon(11px 0,calc(100% - 11px) 0,100% 11px,100% calc(100% - 11px),calc(100% - 11px) 100%,11px 100%,0 calc(100% - 11px),0 11px);pointer-events:none}.primary:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#ffffff70 48%,transparent 70%);translate:125% 0;transition:translate .8s;pointer-events:none}.primary:hover{background:linear-gradient(100deg,#c3a05a,#f4e0ae,#cfab68);filter:brightness(1.08);translate:0 -2px}.primary:hover:after{translate:-125% 0}.button-gem{font-size:20px;color:#4a4b25;display:inline-block;line-height:1}.primary:focus-visible{outline:0;filter:brightness(1.22);box-shadow:inset 0 0 0 4px #fff}.secondary{font-family:'Tajawal',sans-serif;font-size:17px}.identities{border-color:#ac914f66;gap:27px;padding:28px 10px;background:linear-gradient(90deg,transparent,#092d23e8,transparent)!important;animation:rise-in 1s .75s both}.identities span{font-size:16px}.identities span:before{width:6px;height:6px;outline:1px solid var(--c);outline-offset:4px}.result h1{font-family:'Amiri',serif;line-height:1.5}.note{font-size:14px}footer{font-size:13px;color:#c1c6b7;border-color:#a68a472b}.ambient{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1;min-height:100svh}.floating-symbol{position:absolute;width:68px;height:68px;mix-blend-mode:screen;opacity:.3;animation:float-symbol 12s ease-in-out infinite}.floating-symbol img{position:absolute;width:500px;max-width:none;filter:grayscale(1) invert(1) contrast(2) brightness(1.7) sepia(.7);top:-136px;left:-29px}.fs1{top:17%;left:3%;rotate:-12deg}.fs2{top:55%;left:48%;scale:.6;animation-delay:-4s}.fs2 img{left:-92px}.fs3{top:79%;left:89%;animation-delay:-2s;scale:.75}.fs3 img{left:-164px}.fs4{top:4%;left:53%;animation-delay:-7s;scale:.7}.fs4 img{left:-237px}.fs5{top:49%;left:1%;animation-delay:-9s}.fs5 img{left:-306px}.fs6{top:89%;left:24%;animation-delay:-5s;scale:.55}.fs6 img{left:-379px}.gold-dust{position:absolute;width:3px;height:3px;background:#ead79c;border-radius:50%;box-shadow:70px 140px 0 #e9c47766,180px 320px 0 #e9c47766,40px 450px 0 #e9c47766,240px 580px 0 #e9c47766;animation:dust 14s ease-in-out infinite;opacity:.6}.d1{left:9%;top:17%}.d2{left:51%;top:4%;animation-delay:-5s}.d3{left:78%;top:37%;animation-delay:-9s}@keyframes rise-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes brand-arrival{from{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}@keyframes architecture-in{from{opacity:0;transform:translateX(-35px)}to{opacity:.9;transform:translateX(0)}}@keyframes float-symbol{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-23px) rotate(7deg)}}@keyframes brand-hover{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes dust{0%,100%{transform:translateY(0);opacity:.3}50%{transform:translateY(-32px);opacity:.7}}@media(max-width:760px){body:before{inset:7px}.top{padding-top:22px}.entry h1{font-size:58px;line-height:1.35;margin:22px 0}.lead{font-size:18px}.intro .eyebrow{font-size:14px}.primary{font-size:19px;min-height:64px}.identities{gap:21px 28px}.identities span{font-size:14px}.entry:before{animation:none;opacity:.19}.architecture-space .visual-label{font-size:26px}.floating-symbol{opacity:.18}.fs2{left:78%;top:40%}.fs4{display:none}.gold-dust{opacity:.3}.note{font-size:14px}}@media(max-width:370px){.entry h1{font-size:49px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.intro h1,.intro .eyebrow,.intro .lead,#name-form,.intro>.note{opacity:1;transform:none}}

.floating-symbol{overflow:hidden}

/* Transparent artwork and a separate name step. */
.university-logo{width:250px;height:100px;overflow:visible;background:none;mix-blend-mode:normal}
.university-logo img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain;filter:none;mix-blend-mode:normal}
.floating-symbol{overflow:visible;mix-blend-mode:normal;background:none;width:90px;height:90px;opacity:.32}
.floating-symbol img{position:static;inset:auto;width:100%;height:100%;max-width:100%;object-fit:contain;filter:none;mix-blend-mode:normal}
.entry h1,.result h1,.name-entry h1{font-family:'Tajawal',Tahoma,Arial,sans-serif;font-weight:800;line-height:1.5;letter-spacing:0}
.entry h1{font-size:clamp(43px,5.2vw,72px)}
#discover{max-width:430px;margin-top:32px;animation:rise-in .9s .55s both}
.name-entry{position:relative;min-height:650px;padding:30px 0 60px;animation:rise-in .6s both}
.name-entry:before{content:"";position:absolute;inset:0;z-index:-1;background:url('assets/tower-linework.png') left center/auto 100% no-repeat;opacity:.13;pointer-events:none}
.name-card{max-width:510px;margin:45px auto 0;padding:35px 30px;border:1px solid #cdb46f50;background:linear-gradient(130deg,#103c30ee,#03271fee);box-shadow:0 25px 75px #00150d50;position:relative}
.name-card:before,.name-card:after{content:"";position:absolute;width:22px;height:22px;border:2px solid #d4b775;pointer-events:none}
.name-card:before{top:-2px;right:-2px;border-left:0;border-bottom:0}.name-card:after{bottom:-2px;left:-2px;border-right:0;border-top:0}
.name-card h1{font-size:48px;margin:20px 0 0}.name-card form{max-width:none}.name-card .lead{margin-top:0}
.back-button{border:0;background:none;color:#ddc58c;font:inherit;font-size:17px;padding:12px 0;cursor:pointer}
@media(max-width:760px){.university-logo{width:168px;height:69px}.entry h1{font-size:clamp(36px,9.5vw,58px)}#discover{max-width:none}.name-entry{min-height:65svh;padding-top:10px}.name-card{margin-top:25px;padding:28px 22px}.name-card h1{font-size:40px}.floating-symbol{width:72px;height:72px;opacity:.23}}
@media(max-width:370px){.university-logo{width:142px;height:59px}}
@media(prefers-reduced-motion:reduce){#discover,.name-entry{animation:none!important}}

/* Supplied Saudi typeface, full tower silhouette and six invitation identities. */
body,button,input,.secondary,.entry h1,.result h1,.name-entry h1,.architecture-space .visual-label,.architecture-space .visual-label span{font-family:'Saudi','Tajawal',Tahoma,sans-serif}
.entry h1,.result h1,.name-entry h1{font-weight:700}.entry h1{line-height:1.55;font-size:clamp(40px,4.8vw,66px)}
.lead{line-height:2}.brand{font-size:20px}.primary{font-size:19px}.note{line-height:1.9}
.entry:before{width:59%;height:690px;left:-5%;top:10px;background-position:center top;background-size:contain;background-repeat:no-repeat;opacity:.65;animation:tower-arrival 1.3s ease-out both;mask-image:linear-gradient(to bottom,transparent,black 7%,black 78%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent,black 7%,black 78%,transparent 100%)}
.architecture-space{height:580px;background:none;mask-image:none;-webkit-mask-image:none}
.architecture-space .visual-label{font-size:25px;background:none;margin-bottom:4px}
.entry .identities{display:block;grid-column:1/-1;width:100%;margin:28px 0 0;padding:30px 0 20px;background:transparent!important;border-bottom:0}
.identities h2{text-align:center;font-size:25px;font-weight:700;color:#e4ce96;margin:0 0 26px}
.identity-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.identity-card{min-width:0;margin:0;transition:transform .35s ease}
.identity-card img{display:block;width:100%;height:auto;border:1px solid #cdb46f40;border-radius:5px;box-shadow:0 10px 28px #00130f40}
.identity-card figcaption{color:var(--c);font-size:15px;text-align:center;line-height:1.8;margin-top:13px}
@media(hover:hover){.identity-card:hover{transform:translateY(-5px)}}
@keyframes tower-arrival{from{opacity:0;transform:translateY(12px)}to{opacity:.65;transform:none}}
@media(max-width:1000px){.identity-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 18px}}
@media(max-width:760px){.brand{font-size:16px}.entry:before{display:none}.entry h1{font-size:clamp(34px,8.7vw,56px);line-height:1.6;margin:18px 0}.entry .intro{padding-top:22px;padding-bottom:0}.architecture-space{height:480px;height:clamp(350px,112vw,550px);width:100%;margin:4px 0 0;background:url('assets/tower-linework.png') center top/contain no-repeat;mask-image:linear-gradient(to bottom,transparent,black 7%,black 78%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent,black 7%,black 78%,transparent 100%)}.architecture-space .visual-label{margin-bottom:6px;padding-bottom:25px;font-size:23px}.entry .identities{margin:0;padding-top:28px}.identity-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.identity-card figcaption{font-size:15px}.name-card h1{font-size:38px}.floating-symbol{opacity:.15}.gold-dust{opacity:.25}}
@media(prefers-reduced-motion:reduce){.entry:before,.identity-card{animation:none!important;transition:none!important}}

/* A continuous architectural backdrop on every step. */
.site-tower{position:fixed;inset:0;z-index:-1;pointer-events:none;background:url('assets/tower-linework.png') left center/auto 100% no-repeat;opacity:.26;mask-image:linear-gradient(to right,black 0%,black 40%,transparent 85%);-webkit-mask-image:linear-gradient(to right,black 0%,black 40%,transparent 85%)}
.entry:before,.name-entry:before{display:none!important}.architecture-space{background:none!important;mask-image:none!important;-webkit-mask-image:none!important;height:400px}.architecture-space .visual-label{background:none}.entry{min-height:620px}.name-card{background:linear-gradient(130deg,#103c30d9,#03271fd9)}
.entry .identities{padding:30px 0 35px;border-top:1px solid #cdb46f30}.identities h2{margin-bottom:8px}.gallery-hint{text-align:center;color:#bfcab8;font-size:16px;margin:0 0 30px;line-height:1.8}
.identity-gallery{display:flex;gap:24px;overflow-x:auto;padding:22px 18px 35px;scroll-snap-type:x mandatory;scroll-padding-inline:18px;scrollbar-width:thin;scrollbar-color:#b89c5180 #03271f60;border-radius:12px;outline-offset:4px}
.identity-card{flex:0 0 230px;scroll-snap-align:center;padding:12px 12px 15px;background:linear-gradient(145deg,#164536d9,#04291fe6);border:1px solid #d4b77540;border-radius:13px;box-shadow:0 15px 28px #00120b45;transform:rotate(-2deg);transform-origin:center 80%}
.identity-card:nth-child(even){transform:rotate(2deg)}.identity-card img{border-radius:6px;border-color:#ffffff18;box-shadow:none}.identity-card figcaption{font-size:16px;margin-top:16px}
.identity-gallery:focus-visible{outline:2px solid #d4b775}@media(hover:hover){.identity-card:hover{transform:translateY(-9px) rotate(0);border-color:#d4b775aa}}
@media(min-width:1250px){.identity-card{flex-basis:calc((100% - 48px)/3)}}
@media(max-width:760px){.site-tower{background-position:center top;background-size:auto 100%;opacity:.19;mask-image:linear-gradient(to bottom,black 0%,black 70%,transparent);-webkit-mask-image:linear-gradient(to bottom,black 0%,black 70%,transparent)}.architecture-space{height:auto!important;min-height:80px;margin:20px 0}.architecture-space .visual-label{padding:0 0 16px}.entry{min-height:0}.entry .identities{margin-top:18px}.identity-card{flex-basis:76%;max-width:300px}.identity-gallery{gap:20px;padding-inline:12px;scroll-padding-inline:12px}.name-card{background:linear-gradient(130deg,#103c30d9,#03271fd9)}}
@media(prefers-reduced-motion:reduce){.identity-card,.identity-card:nth-child(even){transform:none}}

/* Constrain grid intrinsic sizes so the gallery never widens the page. */
html{width:100%;overflow-x:clip}body{width:100%;min-width:0;overflow-x:clip}
.top,main,footer{width:100%;max-width:1280px;min-width:0;margin-inline:auto;padding-inline:clamp(20px,5vw,64px)}
main{margin-block:0;flex:1}.top{margin-block:0;padding-block:24px}
.entry{width:100%;min-width:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:5%;min-height:0}
.entry>* ,.result>*,.intro,.identities,.identity-gallery,.name-entry,.name-card{min-width:0;max-width:100%}
.intro{padding-block:38px!important}.entry h1{font-size:clamp(36px,4.4vw,62px);line-height:1.55;overflow-wrap:break-word}
.lead{max-width:100%;text-wrap:pretty;overflow-wrap:break-word}.primary{width:100%;max-width:100%;min-width:0;white-space:normal;text-align:center}
#discover{width:100%;max-width:430px}.architecture-space{width:100%;min-width:0;align-items:center;padding:0}.architecture-space .visual-label{margin:0;text-align:center;font-size:clamp(22px,2.5vw,30px)}
.identity-gallery{width:100%;max-width:100%;contain:inline-size;overscroll-behavior-x:contain}.identity-card{flex-shrink:0}.result{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
.university-logo{width:clamp(145px,21vw,250px);height:auto;aspect-ratio:2.5}.brand{min-width:0}.preview-notice{white-space:normal;overflow-wrap:break-word;line-height:1.9}
@media(min-width:761px) and (max-width:1024px){.entry h1{font-size:40px}.brand{font-size:17px}.entry{column-gap:30px}.primary{font-size:18px}.identity-card{flex-basis:43%}}
@media(max-width:760px){.top,main,footer{padding-inline:24px}.top{gap:16px;padding-block:22px}.brand{font-size:14px;line-height:1.6}.brand small{font-size:12px}.university-logo{width:145px}.entry{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.intro{padding-block:26px 12px!important}.entry h1{font-size:clamp(32px,8.4vw,52px);line-height:1.6;margin:18px 0}.lead{font-size:17px;line-height:1.9;margin:12px 0 24px}.desktop{display:initial}.lead .desktop{display:block}#discover{max-width:none;margin-top:24px;min-height:60px;font-size:18px;padding-inline:16px;gap:18px}.intro .note{font-size:14px;margin-top:16px}.architecture-space{margin:18px 0 24px;min-height:70px}.architecture-space .visual-label{font-size:23px;padding:0}.architecture-space .visual-label span{font-size:14px;line-height:1.8}.entry .identities{margin:0;padding-block:24px}.identity-gallery{padding:14px 10px 25px;gap:18px}.identity-card{flex-basis:82%;max-width:300px;transform:none}.identity-card:nth-child(even){transform:none}.identity-card figcaption{font-size:15px}.identities h2{font-size:24px}.gallery-hint{font-size:15px;margin-bottom:20px}.result{grid-template-columns:minmax(0,1fr);gap:22px}.name-card{width:100%;padding:26px 20px}.name-entry{min-height:0;padding-bottom:35px}.site-tower{background-size:auto 100svh;background-position:center top}.preview-notice{font-size:12px}.result-actions{width:100%}}
@media(max-width:360px){.top,main,footer{padding-inline:18px}.university-logo{width:128px}.top{gap:10px}.brand{font-size:13px}.entry h1{font-size:31px}.primary{gap:12px;font-size:17px}}

/* Keep the architectural backdrop and welcome content aligned on wider screens. */
@media(min-width:761px){
  .site-tower{background-position:center top;background-size:auto 100svh;opacity:.19;mask-image:linear-gradient(to bottom,black 0%,black 70%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 0%,black 70%,transparent 100%)}
  .entry{grid-template-columns:minmax(0,1fr);column-gap:0}
  .entry .intro{width:100%;max-width:760px;margin-inline:auto;text-align:center;padding-block:38px 12px!important}
  .intro .eyebrow{justify-content:center}
  .intro .lead{margin-inline:auto}
  #discover{margin-inline:auto}
  .architecture-space{height:auto;min-height:80px;margin:24px 0 30px;justify-content:center;align-items:center}
  .architecture-space .visual-label{padding:0}
  .entry .identities{margin-top:0}
}

/* Fade the artwork at its own edges, not at the wider viewport edges. */
@media(min-width:761px){
  .site-tower{inset:0 auto auto 50%;width:66.666667svh;height:100svh;transform:translateX(-50%);background-size:100% 100%;background-position:center;mask-image:radial-gradient(ellipse at 50% 49%,black 52%,transparent 72%);-webkit-mask-image:radial-gradient(ellipse at 50% 49%,black 52%,transparent 72%)}
}

.share-x{display:flex;align-items:center;justify-content:center;text-decoration:none;padding:12px 18px;background:#cfb37412;transition:background .2s}.share-x:hover{background:#cfb37426}.result .result-actions .share-hint{font-size:14px;line-height:1.9;margin:10px 0 4px;color:#cbd4c3}

/* Designer credit and social profiles. */
.site-footer{display:flex;flex-direction:column;gap:0;text-align:center;font-size:14px;line-height:1.9}
.footer-info{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.creator-credit{width:100%;margin-top:22px;padding-top:22px;border-top:1px solid #cdb46f30}
.creator-credit p{margin:0 0 8px}.creator-credit strong{color:#e4ce96;font-weight:700}
.creator-links{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap}
.creator-links a{display:inline-flex;align-items:center;min-height:44px;color:#e4ce96;text-decoration:underline;text-underline-offset:5px}.creator-links a:hover{color:#fff2cf}
.creator-credit .copyright{margin:10px 0 0;color:#bfcab8;font-size:14px}
@media(max-width:760px){.footer-info{flex-direction:column;align-items:center;gap:7px}.creator-credit{margin-top:18px;padding-top:18px}}



.creator-credit .team-credit{font-size:12px;line-height:1.9;color:#bfcab8;margin:8px 0 10px}.creator-credit .team-credit p{margin:0 0 4px}
