/* Refinements for the touch layout and the supplied photographic assets. */
.site-header{z-index:40;isolation:isolate}
.mobile-nav{z-index:39}
.language-control{z-index:42}
.language-trigger{gap:9px;transition:background .25s,box-shadow .25s,transform .25s}
.language-trigger:hover,.language-trigger[aria-expanded=true]{background:color-mix(in srgb,var(--surface) 94%,white);box-shadow:0 10px 30px rgba(31,111,150,.17)}
.language-trigger[aria-expanded=true]{transform:translateY(1px)}
.language-flag,.option-flag{font-family:system-ui,sans-serif;font-variant-emoji:emoji;line-height:1;flex:none}
.language-flag{font-size:1.15rem}
.language-list{width:265px;padding:10px;background:rgba(248,253,255,.98);border-color:rgba(79,167,201,.25);box-shadow:0 25px 65px rgba(17,69,99,.24);backdrop-filter:blur(24px);transform-origin:top right;animation:language-open .24s cubic-bezier(.2,.75,.25,1) both}
.language-list-head{padding:10px 14px 12px;color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.045em;border-bottom:1px solid var(--line);margin-bottom:5px;direction:ltr;text-align:start}
.language-option{display:flex;align-items:center;gap:13px;text-align:start;min-height:48px;font-size:.91rem;font-weight:600;transition:background .18s,transform .18s}
.language-option:hover,.language-option:focus-visible{transform:translateX(2px)}
.option-flag{font-size:1.25rem}
.option-name{flex:1}
.option-check{color:var(--accent);font-size:1.05rem;opacity:0}
.language-option[aria-selected=true] .option-check{opacity:1}
html[dir=rtl] .language-list{left:0;right:auto;transform-origin:top left}
html[dir=rtl] .language-option:hover{transform:translateX(-2px)}
body[data-theme=dark] .language-list{background:rgba(11,34,52,.98);border-color:rgba(146,215,240,.26);box-shadow:0 25px 65px rgba(0,7,20,.58)}
body[data-theme=dark] .language-trigger:hover,body[data-theme=dark] .language-trigger[aria-expanded=true]{background:rgba(38,78,100,.92)}
@keyframes language-open{from{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}

/* Color on the fine edge makes the background bubbles legible in daylight. */
.ambient-bubble{border-color:rgba(56,157,203,.62);background:radial-gradient(circle at 28% 24%,rgba(255,255,255,.99) 0 4%,transparent 15%),radial-gradient(circle at 74% 77%,rgba(231,108,184,.38),transparent 47%),radial-gradient(circle at 19% 73%,rgba(35,148,209,.44),transparent 46%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.02) 43%,rgba(139,211,237,.2) 69%,rgba(42,151,201,.35) 94%,rgba(255,255,255,.76));box-shadow:inset -5px -7px 13px rgba(62,151,198,.25),inset 5px 5px 10px rgba(255,255,255,.96),0 4px 18px rgba(34,128,181,.18)}
body[data-theme=dark] .ambient-bubble{border-color:rgba(159,226,255,.53);opacity:calc(var(--alpha) * .8)}
.bubble-one,.bubble-two{border-color:rgba(91,187,222,.68);box-shadow:inset -7px -9px 18px rgba(70,163,207,.24),inset 6px 6px 11px rgba(255,255,255,.95),0 12px 25px rgba(37,126,183,.15)}

/* Show the complete panoramic Antanu artwork rather than magnifying its centre. */
.hero-art{width:100%;max-width:680px;margin-inline:auto}
.hero-art-frame{aspect-ratio:1.8;display:grid;place-items:center;transform:rotate(-1.4deg);background:linear-gradient(135deg,#ccecf8 0%,#effaff 52%,#f6d6e8 100%)}
.hero-art-frame img,.hero-art-frame:hover img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;transform:none}
.hero-art-frame::after{content:"";position:absolute;inset:-45%;pointer-events:none;background:linear-gradient(110deg,transparent 45%,rgba(255,255,255,.26) 50%,transparent 55%);transform:translateX(-90%) rotate(-8deg);animation:art-sheen 15s ease-in-out infinite}
@keyframes art-sheen{0%,60%,100%{transform:translateX(-90%) rotate(-8deg)}78%{transform:translateX(90%) rotate(-8deg)}}
.hero-brand{background-size:190% 100%;animation:brand-shimmer 13s ease-in-out infinite alternate}
@keyframes brand-shimmer{to{background-position:100% 0}}
.story-ring{animation:ring-breathe 15s ease-in-out infinite alternate}
@keyframes ring-breathe{to{transform:rotateX(14deg) rotate(14deg) scale(1.045);box-shadow:0 0 0 28px rgba(157,228,243,.07),0 0 0 70px rgba(162,222,241,.045),inset 0 0 50px rgba(228,255,255,.75)}}
body[data-theme=dark] .hero-art-frame{background:linear-gradient(125deg,#0e2b46,#162940 55%,#372846)}
.editorial-grid .reveal:nth-child(2){transition-delay:.1s}
.editorial-grid .reveal:nth-child(3){transition-delay:.18s}
.story-copy.reveal,.feature-copy.reveal{transform:translateX(26px);filter:blur(5px)}
.feature-image.reveal{transform:translateX(-26px) scale(.975)}
.film-secondary.reveal{transform:translateY(34px) scale(.975)}
.story-copy.reveal.visible,.feature-copy.reveal.visible,.feature-image.reveal.visible,.film-secondary.reveal.visible{transform:none;filter:none}
html[dir=rtl] .story-copy.reveal,html[dir=rtl] .feature-copy.reveal{transform:translateX(-26px)}
html[dir=rtl] .story-copy.reveal.visible,html[dir=rtl] .feature-copy.reveal.visible{transform:none}

/* Fixed scene sizes prevent portrait source images from dictating page height. */
.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.editorial-grid .editorial-main{grid-column:1/-1;grid-row:auto;height:min(112vw,440px)}
.editorial-grid .editorial-small,.editorial-grid .editorial-tall{height:min(58vw,250px);margin:0}
.editorial-grid img,.editorial-main img,.editorial-small img,.editorial-tall img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain}
.editorial-grid .image-shell{background:linear-gradient(140deg,#e1f4f9,#f9e7f0)}
body[data-theme=dark] .editorial-grid .image-shell{background:linear-gradient(135deg,#173d52,#3b2b4c)}
.gallery-slide{flex-basis:clamp(230px,66vw,360px)}
.gallery-slide img{aspect-ratio:4/5;object-fit:contain;background:linear-gradient(145deg,#e9f7fa,#fbeaf2)}
body[data-theme=dark] .gallery-slide img{background:linear-gradient(140deg,#173950,#342b44)}
.feature-image{width:100%;max-width:630px;justify-self:center}
.stack-gallery{width:100%;max-width:670px;margin-inline:auto}
.stack-images{width:min(68%,330px)}
.stack-image img{object-fit:contain;background:linear-gradient(140deg,#e8f6f9,#f8e6ef)}
body[data-theme=dark] .stack-image img{background:#183649}
.video-frame{width:100%;min-width:0}
.film-secondary{max-width:360px;justify-self:center}
.film-secondary video{aspect-ratio:4/5}

/* The contact links arrive in the requested order, with a brief stagger. */
.js .contact-bars:not(.visible) .contact-bar{opacity:0;transform:translateY(18px)}
.js .contact-bars.visible .contact-bar{animation:contact-enter .62s cubic-bezier(.2,.7,.2,1) backwards}
.js .contact-bars.visible .contact-bar:nth-child(2){animation-delay:.11s}
.js .contact-bars.visible .contact-bar:nth-child(3){animation-delay:.22s}
.js .contact-bars.visible .contact-bar:nth-child(4){animation-delay:.33s}
@keyframes contact-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.gallery-slide.active{box-shadow:0 22px 54px rgba(27,101,137,.2)}
.video-frame{transition:transform .35s,box-shadow .35s}
.video-frame:hover{transform:translateY(-4px);box-shadow:0 28px 72px rgba(25,101,143,.22)}

@media(max-width:699px){
  .site-header,.hero{width:calc(100% - 32px)}
  .site-header{gap:8px}
  .wordmark{font-size:1.37rem;flex:none}
  .header-actions{gap:7px;min-width:0}
  .language-control{position:static;min-width:0}
  .language-trigger{min-width:0;max-width:138px;padding-inline:10px;gap:6px}
  .language-trigger strong{display:block;max-width:76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .language-trigger .chevron{flex:none}
  html[dir] .language-list{position:fixed;top:82px;left:16px;right:16px;inset-inline-start:16px;inset-inline-end:16px;width:auto;max-height:min(560px,calc(100dvh - 100px));overflow:auto;transform-origin:top center;padding:12px 14px 16px}
  .language-option{min-height:51px;font-size:.97rem}
  .language-list-head{font-size:.8rem}
  .hero-meta{justify-content:center;padding-block:10px 16px}
  .hero-index{display:none}
  .hero-composition{gap:22px}
  .hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center;padding-block:12px 0}
  .hero h1{max-width:100%;text-align:center;font-size:clamp(2rem,7vw,2.8rem);letter-spacing:-.035em;line-height:1.2}
  html[dir=rtl] .hero-brand{text-align:center}
  .hero-brand{font-size:clamp(4rem,16vw,6rem);line-height:1.08}
  .hero-description{max-width:37rem;margin:20px auto 24px;line-height:1.8;text-align:center}
  .text-link{justify-content:center;gap:18px}
  .hero-art{width:min(100%,560px);margin-block:12px 10px}
  .hero-art-frame{aspect-ratio:1.75;border-radius:30% 20% 25% 25% / 24% 23% 21% 23%}
  .hero-bottom{padding-block:18px;gap:12px}
  .section-heading,.collection-intro,.sponge-intro,.films-head,.audience,.contact-intro{text-align:center}
  .section-heading p:last-child,.sponge-intro p:not(.eyebrow),.films-head p:not(.eyebrow),.contact-intro p:not(.eyebrow){margin-inline:auto}
  .collection-intro>div{text-align:start}
  .story-visual{margin-inline:auto;width:100%;max-width:430px}
  .story-copy,.feature-copy{max-width:620px;margin-inline:auto}
  .feature-image img{max-height:490px;object-fit:contain}
  .film-primary video{aspect-ratio:16/10}
  .contact-bars,.location-panel{width:100%;max-width:620px;margin-inline:auto}
}
@media(max-width:380px){
  .wordmark{font-size:1.22rem}
  .header-actions{gap:5px}
  .language-trigger{max-width:126px}
  .language-trigger strong{max-width:67px}
  .theme-button,.menu-button{width:42px;height:42px}
}
@media(min-width:700px){
  .hero-art{margin-inline:0;max-width:none}
  .hero-art-frame{aspect-ratio:1.55}
  .editorial-grid{grid-template-columns:1.28fr .88fr .78fr}
  .editorial-grid .editorial-main{grid-column:auto;height:min(42vw,560px)}
  .editorial-grid .editorial-small{height:min(30vw,390px);margin-top:80px}
  .editorial-grid .editorial-tall{height:min(37vw,490px);margin-top:27px}
  .gallery-slide{flex-basis:clamp(300px,29vw,430px)}
  .film-secondary video{aspect-ratio:4/5}
}
@media(min-width:1050px){.hero-art-frame{aspect-ratio:1.55}}
@media(prefers-reduced-motion:reduce){
  .hero-art-frame::after{display:none}
  .ambient-bubble{display:block;animation:none;bottom:auto;top:var(--static-y);opacity:.34}
  .story-copy.reveal,.feature-copy.reveal,.feature-image.reveal,.film-secondary.reveal{transform:none;filter:none}
  .js .contact-bars:not(.visible) .contact-bar{opacity:1;transform:none}
}

/* Language switches change the reading direction of text, never the page geometry. */
.language-flag,.option-flag{display:block;width:27px;height:27px;object-fit:cover;flex:none;border-radius:50%;background:#e6f3f8;box-shadow:0 2px 8px rgba(17,88,125,.18),0 0 0 1px rgba(255,255,255,.9)}
.language-flag{width:25px;height:25px}
.language-option{direction:ltr}
.option-name{text-align:start}

/* Give every horizontal-gallery item a real, bounded image viewport. */
.horizontal-gallery{align-items:center;min-height:0}
.gallery-slide{height:clamp(310px,84vw,440px);max-height:440px;min-height:0;align-self:center;position:relative;display:block;overflow:hidden}
.gallery-slide img{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;background:linear-gradient(145deg,#e9f7fa,#fbeaf2)}
.gallery-slide figcaption{z-index:1;padding:8px 13px;border-radius:20px;background:rgba(17,56,78,.64);backdrop-filter:blur(7px);line-height:1.2}
body[data-theme=dark] .gallery-slide img{background:linear-gradient(140deg,#173950,#342b44)}
@media(min-width:700px){.gallery-slide{height:clamp(370px,35vw,500px);max-height:500px}}

/* A quieter, more precise glass language ties the header, hero and contact scene together. */
.site-header{align-items:center}
.site-header::after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);opacity:.7;pointer-events:none}
.glass-control{background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(244,251,255,.54) 54%,rgba(249,234,245,.45));border:1px solid rgba(255,255,255,.85);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 9px 25px rgba(30,105,142,.1)}
body[data-theme=dark] .glass-control{background:linear-gradient(130deg,rgba(42,83,110,.76),rgba(21,51,76,.72) 65%,rgba(51,40,79,.66));border-color:rgba(176,221,246,.2);box-shadow:inset 0 1px 0 rgba(208,240,255,.17),0 14px 30px rgba(0,9,26,.23)}
.theme-button,.menu-button{transition:transform .25s,box-shadow .25s,background .25s}
.theme-button:hover,.menu-button:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(33,117,155,.18)}
.language-trigger{position:relative;overflow:hidden;min-height:47px;border-radius:999px;padding-inline:8px 13px;gap:8px}
.language-trigger::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.27) 48%,transparent 62%);transform:translateX(-130%);transition:transform .7s;pointer-events:none}
.language-trigger:hover::after,.language-trigger[aria-expanded=true]::after{transform:translateX(130%)}
.flag-orb,.option-flag-shell{width:35px;height:35px;display:grid;place-items:center;flex:none;border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(171,224,241,.4));border:1px solid rgba(255,255,255,.94);box-shadow:inset 0 1px 4px rgba(255,255,255,.88),0 4px 10px rgba(48,137,170,.15)}
.flag-orb .language-flag,.option-flag-shell .option-flag{width:27px;height:27px;box-shadow:0 1px 5px rgba(25,76,105,.23)}
.option-flag-shell{width:39px;height:39px;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(194,232,244,.55))}
body[data-theme=dark] .flag-orb,body[data-theme=dark] .option-flag-shell{background:linear-gradient(145deg,rgba(186,232,255,.3),rgba(28,66,92,.68));border-color:rgba(215,244,255,.33);box-shadow:inset 0 1px 3px rgba(235,249,255,.23),0 5px 13px rgba(0,9,26,.2)}
.language-list{width:286px;padding:12px;background:linear-gradient(155deg,rgba(255,255,255,.97),rgba(237,250,255,.96) 60%,rgba(252,240,248,.96));border:1px solid rgba(255,255,255,.95);border-radius:23px;box-shadow:inset 0 1px 0 white,0 28px 80px rgba(24,83,117,.24)}
.language-list-head{display:flex;align-items:center;justify-content:space-between;font-size:.77rem;letter-spacing:.09em;padding:9px 11px 14px;margin-bottom:7px}
.language-list-mark{display:block;width:18px;height:18px;border:1px solid rgba(56,161,202,.6);border-radius:50%;box-shadow:inset 2px 2px 4px rgba(255,255,255,.9),0 0 0 3px rgba(145,220,239,.13);background:radial-gradient(circle at 35% 32%,white,transparent 36%),linear-gradient(135deg,rgba(69,176,216,.28),rgba(241,156,209,.27))}
.language-option{min-height:51px;padding:6px 10px;gap:11px;border-radius:14px}
.language-option[aria-selected=true]{background:linear-gradient(100deg,rgba(126,207,232,.22),rgba(248,211,233,.22));box-shadow:inset 0 0 0 1px rgba(76,177,213,.1)}
.language-option:hover{background:rgba(92,188,221,.14)}
.option-code{font-size:.64rem;font-weight:700;letter-spacing:.13em;color:var(--muted);opacity:.72}
.option-check{min-width:12px}
body[data-theme=dark] .language-list{background:linear-gradient(155deg,rgba(25,61,86,.98),rgba(10,36,57,.98) 60%,rgba(47,36,68,.97));border-color:rgba(174,221,243,.22);box-shadow:inset 0 1px 0 rgba(218,243,255,.12),0 30px 80px rgba(0,6,19,.57)}
body[data-theme=dark] .language-option[aria-selected=true]{background:linear-gradient(105deg,rgba(48,143,182,.28),rgba(155,96,163,.2))}

.hero{position:relative;isolation:isolate}
.hero::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:4% -8% 12%;background:radial-gradient(ellipse at 75% 42%,rgba(113,199,227,.18),transparent 46%),radial-gradient(ellipse at 20% 75%,rgba(244,178,215,.11),transparent 47%)}
body[data-theme=dark] .hero::before{background:radial-gradient(ellipse at 70% 42%,rgba(45,132,184,.16),transparent 48%),radial-gradient(ellipse at 20% 75%,rgba(155,92,181,.1),transparent 46%)}
.hero-copy{isolation:isolate}
.hero-copy::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset:-25px -36px;background:radial-gradient(ellipse at center,rgba(246,252,255,.75),rgba(246,252,255,.36) 55%,transparent 76%);filter:blur(12px)}
body[data-theme=dark] .hero-copy::before{background:radial-gradient(ellipse at center,rgba(8,26,42,.72),rgba(8,26,42,.32) 56%,transparent 78%)}
.hero-copy .location-pill{align-self:flex-start;width:max-content;min-height:46px;display:inline-flex;gap:10px;padding:6px 8px 6px 13px;margin-bottom:29px;direction:ltr;white-space:nowrap;border:1px solid rgba(116,194,221,.36);background:linear-gradient(110deg,rgba(255,255,255,.76),rgba(239,250,254,.66) 65%,rgba(248,227,241,.63));box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 11px 26px rgba(46,123,158,.09);transition:transform .25s,box-shadow .25s,border-color .25s}
.hero-copy .location-pill:hover{transform:translateY(-2px);border-color:rgba(64,166,207,.6);box-shadow:0 16px 32px rgba(39,113,153,.16)}
.location-arrow{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:rgba(79,174,208,.13);color:var(--accent);font-size:.95rem;transition:transform .25s,background .25s}
.location-pill:hover .location-arrow{transform:translate(2px,2px);background:rgba(79,174,208,.22)}
body[data-theme=dark] .hero-copy .location-pill{background:linear-gradient(110deg,rgba(33,73,96,.84),rgba(21,51,75,.76) 66%,rgba(55,44,79,.7));border-color:rgba(140,211,238,.3)}
.hero h1>span[data-i18n]{font-weight:650;line-height:1.22}
.hero-brand{background-image:linear-gradient(120deg,#0c648f 0%,#4da9c9 38%,#94a9d0 66%,#c584b6 87%,#266e9d 100%);filter:drop-shadow(0 8px 16px rgba(39,129,169,.13))}
.hero-description{line-height:1.78}
.hero-art{position:relative}
.hero-art::before{content:"";position:absolute;z-index:-1;inset:7% 4% -5%;border-radius:46%;background:linear-gradient(115deg,rgba(88,187,226,.35),rgba(235,155,205,.27));filter:blur(32px);pointer-events:none}
.hero-art-frame{transform:none;border-radius:44px 58px 44px 58px;border:2px solid rgba(255,255,255,.88);box-shadow:inset 0 1px rgba(255,255,255,.9),0 27px 70px rgba(38,115,151,.16);animation:hero-drift 11s ease-in-out infinite alternate}
@keyframes hero-drift{to{transform:translateY(-5px)}}
html[data-text-direction=rtl] .eyebrow{letter-spacing:0}
html[data-text-direction=rtl] .hero h1>span[data-i18n],html[data-text-direction=rtl] h2[data-i18n]{letter-spacing:normal}
.image-shell{border-color:rgba(255,255,255,.88);box-shadow:0 18px 55px rgba(38,108,141,.12)}
.section-heading h2,.story h2,.collection h2,.feature h2,.sponge-scene h2,.films h2,.audience h2,.contact-scene h2{font-weight:650}
.contact-bar{transition:transform .3s,box-shadow .3s,border-color .3s}
.contact-bar:hover{border-color:rgba(255,255,255,.97)}
#location{scroll-margin-top:26px}
#location:target .map-shell{outline:2px solid rgba(55,165,205,.42);outline-offset:6px}
@media(max-width:699px){
  .hero{min-height:calc(100svh - 76px)}
  .hero-composition{gap:15px}
  .hero-copy{padding-block:7px 0}
  .hero-copy::before{inset:-12px -8px}
  .hero-copy .location-pill{align-self:center;margin-bottom:23px}
  .hero .eyebrow{margin-bottom:10px}
  .hero h1{line-height:1.17}
  .hero-description{margin:16px auto 19px;line-height:1.74}
  .hero-art{margin-block:10px 5px}
  .hero-art-frame{border-radius:29px 38px 29px 38px}
  .hero-bottom{padding-block:16px}
  .language-trigger{min-height:45px;padding-inline:5px 9px;gap:5px}
  .flag-orb{width:31px;height:31px}
  .flag-orb .language-flag{width:25px;height:25px}
  html[dir] .language-list{padding:12px 13px 14px}
  .language-option{min-height:49px}
}
@media(max-width:380px){.hero-copy .location-pill{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){.hero-art-frame{animation:none}}

/* The language control stays a compact two-line glass switch on small screens. */
.language-trigger{min-height:52px;gap:7px;padding-inline:7px 11px;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.language-trigger:hover,.language-trigger[aria-expanded=true]{border-color:rgba(110,202,233,.74);box-shadow:inset 0 1px rgba(255,255,255,.95),0 13px 30px rgba(30,105,142,.17);transform:translateY(-1px)}
.language-trigger-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;line-height:1.15;text-align:left;direction:ltr}
.language-trigger-copy strong{font-size:.78rem;line-height:1.25;max-width:108px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:auto}
.language-trigger-copy small{display:block;color:var(--muted);font-size:.57rem;line-height:1.4;font-weight:650;letter-spacing:.015em;white-space:nowrap}
.language-trigger .chevron{align-self:center;margin-inline-start:1px;font-size:.96rem}
.flag-orb,.option-flag-shell{width:39px;height:33px;border-radius:11px;position:relative;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(197,233,245,.63));box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 5px 12px rgba(40,110,148,.14)}
.option-flag-shell{width:47px;height:38px;border-radius:12px}
.language-flag,.option-flag,.flag-orb .language-flag,.option-flag-shell .option-flag{width:32px;height:24px;object-fit:cover;border-radius:3px;box-shadow:0 1px 5px rgba(11,49,80,.23),0 0 0 1px rgba(255,255,255,.66)}
.flag-orb .language-flag{width:30px;height:22px}
.language-option{direction:ltr;text-align:left}
.option-name{direction:auto;text-align:left!important;unicode-bidi:isolate;min-width:0}
.language-list{animation:none;opacity:0;transform:translateY(-9px) scale(.967);filter:blur(5px);pointer-events:none;transition:opacity .24s ease,transform .3s cubic-bezier(.2,.75,.2,1),filter .24s ease;will-change:transform,opacity}
.language-list.is-open{opacity:1;transform:translateY(0) scale(1);filter:blur(0);pointer-events:auto}
.language-list-head{padding-block:12px 15px;margin-bottom:9px}
.language-list-mark{width:20px;height:20px;background:radial-gradient(circle at 28% 27%,white 0 5%,transparent 29%),radial-gradient(circle at 78% 79%,rgba(232,146,205,.6),transparent 48%),linear-gradient(135deg,rgba(96,201,234,.53),rgba(237,247,251,.6));border:1px solid rgba(82,166,208,.42);box-shadow:inset -2px -2px 5px rgba(43,137,185,.2),inset 1px 1px 3px white,0 2px 8px rgba(30,103,156,.15)}
.language-option{border:1px solid transparent;transition:background .24s ease,transform .24s ease,border-color .24s ease}
.language-option[aria-selected=true]{border-color:rgba(111,192,219,.2)}
.language-option:hover,.language-option:focus-visible{transform:translateX(3px)}
.language-list.is-open .language-option{animation:glass-row-in .3s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--row-index,0) * 23ms)}
@keyframes glass-row-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.menu-button{overflow:hidden;transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}
.menu-button span{height:1.8px;border-radius:3px;transition:transform .3s cubic-bezier(.2,.75,.2,1),background .3s ease}
.menu-button.is-open{border-color:rgba(111,200,231,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 28px rgba(32,111,149,.21)}
.menu-button.is-open span:first-child{transform:rotate(45deg)}
.menu-button.is-open span:last-child{transform:rotate(-45deg)}
.mobile-nav{overflow:hidden;padding:14px;border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(229,249,253,.85) 61%,rgba(248,232,245,.87));border:1px solid rgba(255,255,255,.94);box-shadow:inset 0 1px rgba(255,255,255,.96),0 28px 65px rgba(24,87,125,.2);backdrop-filter:blur(28px);opacity:0;transform:translateY(-12px) scale(.96);filter:blur(5px);transform-origin:top center;pointer-events:none;transition:opacity .25s ease,transform .32s cubic-bezier(.2,.75,.2,1),filter .25s ease}
.mobile-nav.is-open{opacity:1;transform:none;filter:none;pointer-events:auto}
.mobile-nav::before{content:"";position:absolute;left:-20%;right:-20%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.98),rgba(106,204,231,.55),transparent);pointer-events:none}
.mobile-nav a{border-radius:13px;padding:14px 17px;min-height:50px;transition:background .22s,transform .22s}
.mobile-nav a:hover,.mobile-nav a:focus-visible{background:rgba(105,196,224,.16);transform:translateX(3px)}
.mobile-nav a+a{border-top:1px solid rgba(104,174,206,.13)}
.mobile-nav.is-open a{animation:glass-row-in .34s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--nav-index,0) * 45ms)}
body[data-theme=dark] .mobile-nav{background:linear-gradient(145deg,rgba(34,73,98,.95),rgba(11,39,61,.96) 66%,rgba(49,39,73,.95));border-color:rgba(176,221,243,.23);box-shadow:inset 0 1px rgba(211,237,253,.12),0 30px 70px rgba(0,8,24,.54)}
@media(max-width:699px){
  .site-header{gap:5px}
  .header-actions{gap:5px}
  .wordmark{font-size:1.23rem}
  .language-trigger{min-height:46px;max-width:139px;gap:5px;padding-inline:5px 7px}
  .language-trigger-copy strong{font-size:.7rem;max-width:73px}
  .language-trigger-copy small{font-size:.53rem;letter-spacing:-.025em}
  .flag-orb{width:33px;height:31px;border-radius:9px}
  .flag-orb .language-flag{width:27px;height:20px}
  .theme-button,.menu-button{width:42px;height:42px;flex:none}
  html[dir] .language-list{transform-origin:top center}
  .mobile-nav{left:16px;right:16px}
}
@media(max-width:380px){
  .wordmark{font-size:1.12rem}
  .language-trigger{max-width:128px;gap:4px}
  .language-trigger-copy strong{max-width:66px}
  .flag-orb{width:31px}
  .theme-button,.menu-button{width:40px;height:40px}
}
@media(prefers-reduced-motion:reduce){
  .language-list,.mobile-nav,.menu-button span{transition:none;filter:none}
  .language-list.is-open .language-option,.mobile-nav.is-open a{animation:none}
}

.language-trigger-copy strong{text-align:left}
.language-list[hidden],.mobile-nav[hidden]{display:none!important}

/* A thin glass lens holds the day and night symbols. */
.theme-button{position:relative;isolation:isolate;overflow:hidden;border-color:rgba(255,255,255,.85);background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(194,234,246,.69));box-shadow:inset 0 1px 1px rgba(255,255,255,.98),inset 0 -3px 8px rgba(91,181,211,.09),0 9px 23px rgba(31,116,156,.12);transition:transform .28s cubic-bezier(.2,.75,.2,1),box-shadow .28s ease,background .4s ease,border-color .4s ease}
.theme-button::before{content:"";position:absolute;inset:3px;border-radius:50%;background:radial-gradient(circle at 31% 21%,rgba(255,255,255,.96),transparent 46%),radial-gradient(circle at 73% 78%,rgba(230,166,211,.18),transparent 49%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.62);z-index:-1;pointer-events:none}
.theme-button::after{content:"";position:absolute;inset:3px;border-radius:50%;border:1px solid rgba(99,175,207,.25);pointer-events:none}
.theme-button:hover{transform:translateY(-2px) rotate(-5deg);box-shadow:inset 0 1px 1px white,0 12px 28px rgba(33,117,155,.2)}
.theme-button:active{transform:scale(.95)}
.theme-icon{position:relative;display:block;width:23px;height:23px;font-size:initial;line-height:normal;color:#1a6388}
.theme-icon svg{position:absolute;inset:0;width:100%;height:100%;transition:opacity .4s ease,transform .46s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.theme-icon .moon-icon{opacity:1;transform:rotate(0) scale(1)}
.theme-icon .sun-icon{opacity:0;transform:rotate(-65deg) scale(.55)}
body[data-theme=dark] .theme-button{border-color:rgba(156,216,244,.37);background:linear-gradient(145deg,rgba(68,111,149,.63),rgba(21,52,83,.79));box-shadow:inset 0 1px 1px rgba(226,248,255,.25),inset 0 -3px 12px rgba(1,15,42,.2),0 9px 24px rgba(0,10,29,.3)}
body[data-theme=dark] .theme-button::before{background:radial-gradient(circle at 31% 21%,rgba(200,239,255,.24),transparent 44%),radial-gradient(circle at 77% 78%,rgba(203,133,213,.21),transparent 49%);box-shadow:inset 0 0 0 1px rgba(215,240,255,.15)}
body[data-theme=dark] .theme-button::after{border-color:rgba(170,226,255,.19)}
body[data-theme=dark] .theme-icon{color:#bde8ff}
body[data-theme=dark] .theme-icon .moon-icon{opacity:0;transform:rotate(65deg) scale(.55)}
body[data-theme=dark] .theme-icon .sun-icon{opacity:1;transform:rotate(0) scale(1)}
body.theme-reveal .theme-button::after{animation:theme-lens-pulse .6s ease-out both}
@keyframes theme-lens-pulse{35%{inset:-6px;opacity:.72}100%{inset:-14px;opacity:0}}
.theme-button:focus-visible,.language-trigger:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.theme-button,.theme-icon svg{transition:none!important}body.theme-reveal .theme-button::after{animation:none}}

/* Both header menus unfold as the same glass sheet. */
.language-trigger{min-height:46px;padding:5px 12px 5px 7px;gap:8px;max-width:none;border-color:rgba(255,255,255,.82);box-shadow:inset 0 1px rgba(255,255,255,.9),0 6px 18px rgba(31,111,150,.07)}
.language-trigger:hover,.language-trigger[aria-expanded=true]{transform:none;border-color:rgba(255,255,255,.95);background:linear-gradient(135deg,rgba(255,255,255,.91),rgba(225,244,250,.79));box-shadow:inset 0 1px white,0 8px 22px rgba(31,111,150,.13)}
.language-trigger-copy strong{font-size:.81rem;max-width:100px}
.language-trigger-copy small{font-size:.625rem;letter-spacing:0;line-height:1.5}
.header-panel.language-list,.header-panel.mobile-nav{padding:14px;border-radius:26px;border:1px solid rgba(255,255,255,.93);background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(229,249,253,.9) 61%,rgba(248,232,245,.92));box-shadow:inset 0 1px rgba(255,255,255,.96),0 28px 65px rgba(24,87,125,.2);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);opacity:0;transform:translateY(-8px) scale(.985);clip-path:inset(0 0 100% 0 round 26px);filter:none;transform-origin:top right;pointer-events:none;transition:clip-path .32s cubic-bezier(.22,.8,.25,1),transform .32s cubic-bezier(.22,.8,.25,1),opacity .24s ease;will-change:auto}
.header-panel.language-list.is-open,.header-panel.mobile-nav.is-open{opacity:1;transform:none;clip-path:inset(0 0 0 0 round 26px);pointer-events:auto}
.header-panel .language-option,.header-panel.mobile-nav a{animation:none;opacity:0;transform:translateY(-5px);transition:opacity .18s ease,transform .23s ease,background .2s ease;transition-delay:0s}
.header-panel.is-open .language-option,.header-panel.mobile-nav.is-open a{animation:none;opacity:1;transform:translateY(0);transition-delay:calc(40ms + var(--row-index,var(--nav-index,0)) * 18ms)}
.header-panel .language-list-head{padding:8px 10px 13px;margin-bottom:7px;letter-spacing:.035em}
.header-panel .language-list-mark{display:none}
.header-panel .language-option{min-height:50px}
body[data-theme=dark] .header-panel.language-list,body[data-theme=dark] .header-panel.mobile-nav{background:linear-gradient(145deg,rgba(34,73,98,.96),rgba(11,39,61,.97) 66%,rgba(49,39,73,.96));border-color:rgba(176,221,243,.23);box-shadow:inset 0 1px rgba(211,237,253,.12),0 30px 70px rgba(0,8,24,.54)}
body[data-theme=dark] .language-trigger:hover,body[data-theme=dark] .language-trigger[aria-expanded=true]{background:linear-gradient(135deg,rgba(50,90,115,.84),rgba(28,58,82,.88));border-color:rgba(176,221,243,.3);box-shadow:inset 0 1px rgba(211,237,253,.14),0 8px 22px rgba(0,8,24,.2)}
@media(max-width:699px){
  .language-trigger{width:140px;max-width:140px;padding-inline:7px 10px;gap:7px}
  .language-trigger-copy strong{font-size:.77rem;max-width:83px}
  .language-trigger-copy small{font-size:.625rem;letter-spacing:-.025em}
  .theme-button,.menu-button{width:44px;height:44px}
  html[dir] .header-panel.language-list,.header-panel.mobile-nav{position:fixed;top:82px;left:16px;right:16px;width:auto;max-height:calc(100dvh - 102px);overflow-y:auto;overscroll-behavior:contain;transform-origin:top center}
}
@media(max-width:359px){
  .wordmark{font-size:1.05rem}
  .header-actions{gap:4px}
  .language-trigger{width:125px;max-width:125px;padding-inline:5px 7px;gap:5px}
  .language-trigger .flag-orb{width:29px}
  .language-trigger-copy strong{font-size:.75rem;max-width:73px}
  .language-trigger-copy small{font-size:.5625rem}
}
@media(prefers-reduced-motion:reduce){
  .header-panel.language-list,.header-panel.mobile-nav,.header-panel .language-option,.header-panel.mobile-nav a{transition:none!important}
}

/* Standard flag artwork stays complete inside a quiet glass frame. */
.flag-orb,.option-flag-shell{border-radius:8px;background:linear-gradient(150deg,rgba(255,255,255,.9),rgba(216,236,244,.6));box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 3px 9px rgba(27,89,119,.1)}
.option-flag-shell{width:46px;height:35px;padding:5px}
.flag-orb .language-flag,.option-flag-shell .option-flag{object-fit:contain;border-radius:2px;box-shadow:none;filter:drop-shadow(0 1px 1px rgba(14,43,61,.15))}
.option-flag-shell .option-flag{width:36px;height:25px}
.language-option .option-name{text-align:left!important;unicode-bidi:isolate}
.header-panel.language-list,.header-panel.mobile-nav{background:linear-gradient(140deg,rgba(255,255,255,.94),rgba(237,249,253,.9) 66%,rgba(250,237,246,.92));border-color:rgba(255,255,255,.97);box-shadow:inset 0 1px 0 white,inset 0 -1px 0 rgba(118,188,211,.12),0 24px 65px rgba(27,83,110,.19)}
.header-panel::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.2) 48%,transparent 62%);transform:translateX(-110%);opacity:0}
.header-panel.is-open::after{animation:menu-reflection .75s ease-out both}
@keyframes menu-reflection{0%{transform:translateX(-110%);opacity:0}25%{opacity:1}100%{transform:translateX(110%);opacity:0}}
@media(prefers-reduced-motion:reduce){.header-panel.is-open::after{animation:none}}
