@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@400;500&family=Noto+Serif+Thai:wght@400;500;600&display=swap');
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#062f2b}
body{font-family:"Noto Serif Thai",Georgia,serif;color:#704a1c}
.memorial-cover{min-height:100vh;min-height:100svh;display:grid;place-items:center}
.cover-artwork{position:relative;isolation:isolate;width:100%;min-height: max(720px,100svh);display:grid;grid-template-columns:48% 52%;align-items:center;overflow:hidden;background:#f7f0e2}
picture{position:absolute;inset:0;z-index:-1}
picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.memorial-copy{grid-column:2;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:52px 24px 58px;margin-right:8%;margin-left:2%}
.memorial-copy p,.memorial-copy h1{margin:0}
.eyebrow{font-family:"Noto Sans Thai",sans-serif;font-size:14px;letter-spacing:.16em;color:#95723e}
.date{font-size:clamp(28px,2.6vw,42px);line-height:1.6;font-weight:400;margin-top:10px!important}
h1{font-size:clamp(38px,4.3vw,68px);font-weight:600;line-height:1.5;white-space:nowrap;margin:4px 0 18px!important}
.royal-name{font-size:clamp(20px,2vw,29px);line-height:1.7;font-weight:500}
.divider{display:flex;align-items:center;justify-content:center;gap:14px;width:190px;max-width:65%;color:#ac813b;font-size:13px;margin:22px 0}
.eyebrow+.divider{width:100px;margin:16px 0 0}
.divider::before,.divider::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#b58b49)}
.divider::after{transform:rotate(180deg)}
.tribute{font-size:clamp(18px,1.5vw,23px);line-height:1.9}
.signature{font-family:"Noto Sans Thai",sans-serif;font-size:14px;line-height:1.9;margin-top:26px!important;color:#7a6343}
.enter-website{display:inline-flex;justify-content:center;align-items:center;gap:28px;min-height:48px;margin-top:26px;padding:10px 30px;border:1px solid #a77a36;color:#704a1c;background:#fffaf0b3;text-decoration:none;font-size:17px;line-height:1.6;transition:background .2s,color .2s}
.enter-website:hover{background:#775321;color:#fff8e8}
.enter-website:focus-visible{outline:3px solid #79551b;outline-offset:5px}
@media(min-width:768px) and (max-aspect-ratio: 3/2){picture img{object-position:39% center}.cover-artwork{grid-template-columns:45% 55%}.memorial-copy{margin-right:4%;padding-left:12px;padding-right:12px}h1{font-size:clamp(34px,4.3vw,58px)}}
@media(max-width:767px){
html,body{background:#f6efdf}
.cover-artwork{display:block;min-height:100svh;overflow:hidden;background:#f6efdf}
picture{bottom:auto}
picture img{height:auto;object-fit:initial}
.memorial-copy{margin:0;padding:83vw 24px 54px;background:linear-gradient(180deg,transparent 0,transparent 74vw,#faf4e955 84vw,#faf4e9e8 109vw,#f6efdf 100%);min-height:150vw}
.eyebrow{font-size:12px;letter-spacing:.12em}
.date{font-size:30px;margin-top:10px!important}
h1{font-size:clamp(34px,9vw,48px);margin:4px 0 16px!important}
.royal-name{font-size:21px}
.divider{margin:20px 0}
.tribute{font-size:18px;line-height:1.9}
.signature{font-size:13px;margin-top:24px!important}
.enter-website{font-size:16px;min-height:48px;margin-top:24px}
}
@media(prefers-reduced-motion:reduce){.enter-website{transition:none}}

/* Keep the complete artwork inside the viewport and tighten the typography. */
.cover-artwork{width:min(100%,220.35503svh);min-height:0;aspect-ratio:1862 / 845;container-type:inline-size;display:block}
picture{inset:0}
picture img{height:100%;object-fit:contain;object-position:center}
.memorial-copy{position:absolute;left:51%;right:12%;top:9%;bottom:8%;margin:0;padding:0;justify-content:center;gap:0}
.eyebrow{font-size:1.05cqw;line-height:1.4}
.date{font-size:2.35cqw;line-height:1.35;margin-top:.65cqw!important}
h1{font-size:3.8cqw;line-height:1.35;margin:.3cqw 0 .8cqw!important}
.royal-name{font-size:1.9cqw;line-height:1.45}
.divider{font-size:.8cqw;width:11cqw;margin:1cqw 0;gap:.7cqw}
.eyebrow+.divider{width:7cqw;margin:.65cqw 0 0}
.tribute{font-size:1.35cqw;line-height:1.5}
.signature{font-size:1.05cqw;line-height:1.5;margin-top:1.15cqw!important}
.enter-website{font-size:1.2cqw;line-height:1.4;min-height:0;padding:.6cqw 2cqw;margin-top:1.15cqw;gap:1.7cqw}
@media(max-width:767px){
html,body{background:#062f2b}
.cover-artwork{width:min(100%,66.666667svh);aspect-ratio:2 / 3;min-height:0}
picture{inset:0}
picture img{width:100%;height:100%;object-fit:contain}
.memorial-copy{left:13%;right:13%;top:54%;bottom:5%;padding:0;margin:0;min-height:0;background:none;justify-content:center}
.eyebrow{font-size:2.6cqw;line-height:1.35}
.date{font-size:4.5cqw;line-height:1.3;margin-top:1cqw!important}
h1{font-size:7cqw;line-height:1.3;margin:.5cqw 0 1.1cqw!important}
.royal-name{font-size:4cqw;line-height:1.35}
.divider{font-size:1.8cqw;width:25cqw;margin:1.4cqw 0;gap:1.6cqw}
.eyebrow+.divider{width:18cqw;margin:1cqw 0 0}
.tribute{font-size:3.25cqw;line-height:1.45}
.signature{font-size:2.65cqw;line-height:1.45;margin-top:1.7cqw!important}
.enter-website{font-size:3.2cqw;line-height:1.35;padding:1.4cqw 5cqw;min-height:0;margin-top:2cqw;gap:4cqw}
}

/* Mobile content flows naturally so the signature and entry button never clip. */
@media(max-width:767px){
html,body{background:#f7f0e2}
.memorial-cover{display:block;min-height:100svh}
.cover-artwork{width:100%;max-width:600px;margin:0 auto;aspect-ratio:auto;min-height:100svh;overflow:hidden;background:#f7f0e2}
picture{position:absolute;inset:0 0 auto;z-index:-1}
picture img{width:100%;height:auto;object-fit:initial}
.memorial-copy{position:relative;inset:auto;margin:0;padding:87vw 24px max(32px,env(safe-area-inset-bottom));min-height:0;display:flex;justify-content:flex-start;align-items:center;background:linear-gradient(to bottom,transparent 0,transparent 80vw,#faf5e990 89vw,#faf5e9ed 105vw,#f7f0e2 136vw);text-align:center}
.eyebrow{font-size:12px;line-height:1.4;letter-spacing:.08em}
.eyebrow+.divider{width:90px;margin:8px 0 0}
.date{font-size:28px;line-height:1.3;margin-top:8px!important}
h1{font-size:clamp(32px,8vw,46px);line-height:1.35;margin:4px 0 12px!important}
.royal-name{font-size:clamp(18px,4.5vw,24px);line-height:1.4}
.divider{width:140px;gap:10px;font-size:10px;margin:14px 0}
.tribute{font-size:clamp(15px,3.7vw,19px);line-height:1.5}
.signature{font-size:13px;line-height:1.5;margin-top:18px!important}
.enter-website{font-size:16px;line-height:1.4;min-height:48px;min-width:190px;padding:11px 26px;margin-top:20px;gap:26px;flex-shrink:0;background:#fffaf2;border:1px solid #9e7130}
}
@media(min-width:601px) and (max-width:767px){
.memorial-copy{padding-top:522px;background:linear-gradient(to bottom,transparent 0,transparent 480px,#faf5e990 534px,#faf5e9ed 630px,#f7f0e2 816px)}
}

.signature-group{display:block;text-wrap:balance}
@media(max-width:767px){.signature{width:100%;font-size:clamp(11px,2.8vw,13px)}}

/* Typography follows the supplied reference: date, title, tribute, royal name, signature. */
.memorial-copy .date{font-weight:600}
.memorial-copy h1{font-size:3.6cqw;font-weight:600;margin:.45cqw 0 .7cqw!important;line-height:1.35}
.memorial-copy .tribute{font-size:1.6cqw;line-height:1.45}
.memorial-copy .royal-name{font-size:1.4cqw;line-height:1.5;margin-top:.5cqw}
.memorial-copy .divider{width:85%;max-width:85%;margin:1.6cqw 0 0}
.memorial-copy .signature{margin-top:1.6cqw!important;line-height:1.5}
@media(max-width:767px){
.memorial-copy .date{font-size:28px;line-height:1.3}
.memorial-copy h1{font-size:clamp(32px,8vw,46px);margin:6px 0 12px!important}
.memorial-copy .tribute{font-size:clamp(15px,3.8vw,20px);line-height:1.45}
.memorial-copy .royal-name{font-size:clamp(12px,3.2vw,17px);line-height:1.5;margin-top:6px;white-space:nowrap}
.memorial-copy .divider{width:90%;max-width:90%;margin:20px 0 0}
.memorial-copy .signature{margin-top:20px!important;line-height:1.6}
}
