.brand-block{display:flex;flex-direction:column;align-items:center;gap:21px;padding-top:3px}
.brand-socials{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--gold)}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px}
.social-icon svg{width:25px;height:25px;display:block}
a.social-icon{transition:color .2s,transform .2s}
a.social-icon:hover{color:white;transform:translateY(-2px)}
.language{display:flex;align-items:center;justify-content:space-between;gap:12px;width:300px;margin-top:30px}
.language span{float:none;white-space:nowrap}
.language select{font:inherit;font-size:12px;border:0;background:transparent;color:inherit;cursor:pointer;padding:4px 16px 4px 4px;max-width:135px;min-width:90px}
.language select option{background:var(--ink);color:var(--paper)}
.language select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.occasion-section{padding:70px 0 76px;background:var(--ink);color:var(--gold)}
.occasion-section .wrap{width:min(100% - 64px,1180px)}
.occasion-heading{text-align:center;margin:0 auto 34px;max-width:760px}
.occasion-heading .eyebrow{font:11px/1.5 Georgia,serif;letter-spacing:.28em;margin:0 0 12px}
.occasion-heading h2{font-size:30px;margin-bottom:14px}
.occasion-heading>p:last-child{font-size:14px;line-height:1.8;margin:0;color:#ded6c9}
.occasion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:21px}
.occasion-card{text-decoration:none;min-width:0;display:block}
.occasion-image{position:relative;overflow:hidden;background:var(--deep)}
.occasion-image img{aspect-ratio:3/4;width:100%;height:auto;object-fit:cover;transition:transform .6s ease,filter .6s ease}
.occasion-number{position:absolute;left:13px;top:11px;font:12px/1.5 Georgia,serif;color:white;text-shadow:0 1px 4px #000}
.occasion-copy{padding:19px 0 0}
.occasion-copy h3{font:25px/1.2 Georgia,serif;letter-spacing:.01em;margin:0 0 8px}
.occasion-name{font-family:SimSun,serif;font-size:17px;letter-spacing:.07em;margin:0}
.occasion-description{font-size:13px;line-height:1.8;color:#ded6c9;margin:11px 0 18px;min-height:46px}
.occasion-link{border-bottom:1px solid #e2bd9570;padding:0 0 6px;display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:.05em}
.occasion-link span{font-size:22px;transition:transform .3s}
.occasion-card:hover .occasion-image img{transform:scale(1.035);filter:brightness(1.08)}
.occasion-card:hover .occasion-link span{transform:translate(2px,-2px)}
.occasion-card:hover .occasion-link{border-color:var(--gold)}
html[lang="en"] .occasion-name{display:none}
html[lang="en"] .head nav{font-size:13px;gap:14px}
html[lang="en"] .wordmark strong{font-size:19px}
html[lang="en"] .head{gap:25px}
html[lang="en"] .occasion-description{min-height:70px}
html[lang="en"] h1,html[lang="en"] h2,html[lang="en"] h3{font-family:Georgia,serif;letter-spacing:.01em}
@media(max-width:850px){
 .occasion-grid{gap:16px}
 .occasion-copy h3{font-size:22px}
 .occasion-description{min-height:70px}
 .head{gap:20px}
 .head-links nav{gap:12px;font-size:14px}
 html[lang="en"] .head nav{gap:8px;font-size:12px}
}
@media(max-width:650px){
 .head{min-height:162px;padding-top:22px}
 .brand-block{align-items:flex-start;gap:12px;padding-top:7px}
 .brand-socials{gap:13px}
 .social-icon,.social-icon svg{width:23px;height:23px}
 .language{margin-top:15px;width:100%;padding:4px 9px}
 .language select{padding-right:5px}
 .occasion-section{padding:38px 0 42px}
 .occasion-section .wrap{width:calc(100% - 32px)}
 .occasion-heading{margin-bottom:24px;text-align:left}
 .occasion-heading h2{font-size:26px;margin-bottom:12px}
 .occasion-heading .eyebrow{font-size:10px}
 .occasion-heading>p:last-child{font-size:13px}
 .occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 14px}
 .occasion-copy{padding-top:13px}
 .occasion-copy h3{font-size:21px;min-height:26px}
 .occasion-name{font-size:15px}
 .occasion-description{font-size:12px;line-height:1.7;min-height:61px;margin:10px 0 13px}
 .occasion-link{font-size:11px}
 html[lang="en"] .head nav{font-size:15px;gap:0}
 html[lang="en"] .wordmark strong{font-size:16px}
 html[lang="en"] .occasion-description{min-height:82px}
 html[lang="en"] .occasion-copy h3{min-height:50px}
}
@media(prefers-reduced-motion:reduce){.occasion-image img,.occasion-link span,a.social-icon{transition:none}.occasion-card:hover .occasion-image img{transform:none}}
