:root {
  --ink: #06374f;
  --paper: #f1f0ea;
  --accent: #ef5b3f;
  --yellow: #f3ca52;
  --line: rgba(24, 24, 24, .22);
  --pad: clamp(1.25rem, 4vw, 4.5rem);
}

* { box-sizing: border-box; }
html { background: var(--paper); }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
#fullpage, .fp-section { backface-visibility: hidden; -webkit-backface-visibility: hidden; }
#fullpage { will-change: transform; }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
.skip-link { position: fixed; z-index: 1000; left: 1rem; top: -5rem; padding: .8rem 1rem; background: var(--ink); color: white; }
.skip-link:focus { top: 1rem; }
.section-background:first-child img {
    object-fit: contain!important;
}

.site-header {background: rgba(255, 255, 255, 0.35);position: fixed; z-index: 20; top: 0; left: 0; width: 100%; height: 76px; padding: 0 var(--pad); display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); color:var(--site-header-text,#06374f); mix-blend-mode: normal; }
.brand { display: inline-flex; align-items: center; gap: .7rem; text-decoration: none; font-weight: 700; letter-spacing: -.03em; }
.brand-mark { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; overflow: hidden; border-radius: 38px;}
.brand-mark img { display: block; width: 100%; height: 100%; object-fit: contain; transform: scale(1.3);}
.site-menu { display: flex; gap: clamp(1rem, 2vw, 3.2rem); max-width: 72vw; overflow-x: auto; scrollbar-width: none; font-weight: bold;}
.site-menu::-webkit-scrollbar { display: none; }
.site-menu a { position: relative; text-decoration: none; font-size: .99rem; text-transform: uppercase; letter-spacing: .12em; }
.site-menu a::after { content: ""; position: absolute; left: 0; bottom: -.35rem; width: 100%; height: 1px; background: currentColor; transform: scaleX(0); transform-origin: right; transition: transform .3s ease; }
.site-menu a:hover::after, .site-menu a.active::after { transform: scaleX(1); transform-origin: left; }
.menu-toggle { display: none; border: 0; background: transparent; color: inherit; font: inherit; }
.menu-backdrop{display:none}

.section { overflow: hidden; contain: layout paint; }
.section-inner { width: min(100%, 1600px); min-height: 100dvh; margin: 0 auto; padding: clamp(7rem, 12vh, 9rem) var(--pad) clamp(3rem, 7vh, 5rem); }
.section-label, .kicker { margin: 0; font-size: .7rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.page-index { position: fixed; z-index: 15; right: calc(var(--pad) / 2); top: 50%; display: grid; justify-items: center; gap: .5rem; transform: translateY(-50%); font-size: .65rem; letter-spacing: .1em; }
.page-index__line { display: block; width: 1px; height: 72px; background: var(--line); }

.hero { background: var(--paper); }
.hero__grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr); align-items: center; gap: 4vw; }
.hero__content { align-self: center; }
.hero__title { margin: clamp(1.4rem, 3vh, 2.8rem) 0 1.5rem; max-width: 1000px; font-size: clamp(4rem, 9.6vw, 10rem); font-weight: 700; line-height: .82; letter-spacing: -.075em; }
.title-line { display: block; overflow: hidden; padding: .04em .08em .09em 0; }
.title-line > span { display: block; transform: translateY(110%); }
.title-line--offset { padding-left: 8vw; }
.hero__title em { color: var(--accent); font-weight: inherit; }
.hero__copy { width: min(480px, 78%); margin: 0 0 1.7rem 8vw; font-size: clamp(1rem, 1.3vw, 1.25rem); line-height: 1.45; }
.text-link { margin-left: 8vw; display: inline-flex; gap: 1rem; align-items: center; font-size: .8rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; text-underline-offset: .35rem; }
.hero__object { position: relative; aspect-ratio: 1; width: min(30vw, 410px); justify-self: end; }
.sun-disc { position: absolute; inset: 17%; border-radius: 50%; background: var(--yellow); }
.orbit { position: absolute; inset: 7%; border: 1px solid var(--ink); border-radius: 50%; }
.orbit--one { transform: rotate(55deg) scaleY(.38); }
.orbit--two { transform: rotate(-28deg) scaleY(.58); }
.object-note { position: absolute; right: 5%; bottom: 7%; font-size: .65rem; letter-spacing: .12em; line-height: 1.4; text-transform: uppercase; }

.about { color: var(--paper); background: var(--ink); }
.about__grid { display: grid; grid-template-columns: minmax(140px, .3fr) 1fr; gap: 6vw; align-items: center; }
.statement { max-width: 1120px; margin: 0; font-size: clamp(3.4rem, 7.8vw, 8.2rem); line-height: .94; letter-spacing: -.065em; font-weight: 650; }
.word { display: inline-block; overflow: hidden; vertical-align: bottom; margin-right: .16em; }
.word > span { display: inline-block; transform: translateY(110%); }
.about__footer { display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem; margin-top: clamp(2rem, 6vh, 5rem); padding-top: 1.5rem; border-top: 1px solid rgba(241, 240, 234, .24); }
.about__footer p { max-width: 560px; margin: 0; color: rgba(241, 240, 234, .72); line-height: 1.6; }
.roundel { width: 100px; height: 100px; display: grid; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: .52rem; letter-spacing: .09em; }

.work { background: var(--accent); }
.work__layout { display: grid; grid-template-rows: auto 1fr; gap: 4vh; }
.work__intro { display: grid; grid-template-columns: .55fr 1fr; gap: 6vw; align-items: start; }
.work__intro h2 { max-width: 760px; margin: 0; font-size: clamp(2.5rem, 5.2vw, 5.6rem); line-height: .95; letter-spacing: -.055em; }
.services { list-style: none; margin: auto 0 0; padding: 0; border-top: 1px solid var(--ink); }
.service-item { display: grid; grid-template-columns: 70px 1fr minmax(240px, .6fr); gap: 1.5rem; align-items: center; padding: clamp(1rem, 2.5vh, 1.8rem) 0; border-bottom: 1px solid var(--ink); }
.service-item span { font-size: .7rem; }
.service-item h3 { margin: 0; font-size: clamp(1.6rem, 3vw, 3.3rem); letter-spacing: -.045em; }
.service-item p { margin: 0; line-height: 1.45; }

.contact { color: var(--paper); background: #1c4e45; }
.contact__layout { display: grid; grid-template-rows: auto 1fr auto; }
.contact__main { align-self: center; }
.contact__title { margin: 0; font-size: clamp(3.6rem, 9vw, 9.6rem); line-height: .85; letter-spacing: -.075em; }
.contact__email { display: inline-flex; gap: 1.4rem; margin: clamp(2rem, 5vh, 4rem) 0 0 9vw; font-size: clamp(1.1rem, 2vw, 2rem); text-underline-offset: .5rem; }
.contact__footer { display: flex; justify-content: space-between; gap: 1rem; padding-top: 1.2rem; border-top: 1px solid rgba(241, 240, 234, .35); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }

.reveal { opacity: 0; transform: translateY(18px); }
.fp-watermark { display: none !important; }
:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
body.orientation-locked::before { display: none; }

.dynamic-section { position: relative; isolation: isolate; color: var(--section-text); background: var(--section-bg); }
.section-background{position:absolute;z-index:0;inset:0;overflow:hidden;pointer-events:none}.section-background img,.section-background video{display:block;width:100%;height:100%;object-fit:cover}.dynamic-section .section-inner{position:relative;z-index:1}
.dynamic-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr); align-items: center; gap: clamp(2rem, 7vw, 8rem); }
.dynamic-layout--text-only { grid-template-columns: 1fr; }
.dynamic-copy { position: relative; z-index: 2; max-width: 980px; }
.dynamic-label { margin: 0 0 clamp(1.5rem, 4vh, 3rem); font-size: .92rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.dynamic-title { margin: 0; font-size: clamp(3.6rem, 8vw, 8.5rem); font-weight: 700; line-height: .88; letter-spacing: -.065em; text-wrap: balance; }
.dynamic-title span { display: block; }
.dynamic-title span:nth-child(even) { padding-left: min(8vw, 110px); }
.dynamic-description { max-width: 58ch; margin: clamp(1.4rem, 4vh, 2.8rem) 0 0 min(8vw, 110px); font-size: clamp(1rem, 1.35vw, 1.25rem); line-height: 1.55; white-space: pre-line; text-wrap: pretty; }
.dynamic-media-grid { position: relative; display: grid; gap: clamp(.5rem, 1.3vw, 1.1rem); align-content: center; min-height: 45vh; }
.dynamic-media-grid--1 { grid-template-columns: 1fr; }
.dynamic-media-grid--2, .dynamic-media-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dynamic-media-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dynamic-media-grid--3 .dynamic-media:first-child { grid-row: span 2; }
.dynamic-media-grid--scrollable { display: flex; align-items: center; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x proximity; overscroll-behavior-inline: contain; touch-action: pan-x; scrollbar-gutter: stable; padding-block: 1rem; }
.dynamic-media-grid--scrollable .dynamic-media { flex: 0 0 min(78%, 420px); width: min(78%, 420px); scroll-snap-align: start; }
.dynamic-media-grid--scrollable:focus-visible { outline: none; }
.dynamic-media { position: relative; min-height: 0; margin: 0; overflow: hidden; background: rgba(0,0,0,.08); aspect-ratio: 4/5; }
.dynamic-media.is-media-pending::before{content:"Đang xử lý ảnh…";position:absolute;inset:0;display:grid;place-items:center;padding:1rem;color:currentColor;font-size:.68rem;letter-spacing:.06em}.dynamic-media.is-media-unavailable::before{content:"Ảnh chưa sẵn sàng";position:absolute;inset:0;display:grid;place-items:center;padding:1rem;color:currentColor;font-size:.68rem}
.dynamic-media:nth-child(even) { transform: translateY(4vh); }
.dynamic-media img, .dynamic-media video, .dynamic-media iframe { display: block; width: 100%; height: 100%; border: 0; object-fit: cover; }
.dynamic-media--image { box-shadow: 0 18px 42px rgba(24,24,24,.18), 0 4px 12px rgba(24,24,24,.12); transition: box-shadow .34s cubic-bezier(.22,1,.36,1); }
.dynamic-media--image::after { content: ""; position: absolute; z-index: 2; inset: 10px; border: 1px solid rgba(241,240,234,.82); opacity: 0; transform: scale(.97); pointer-events: none; transition: opacity .22s ease, transform .34s cubic-bezier(.22,1,.36,1); }
.dynamic-media--image img { transform: scale(1.001); transition: transform .55s cubic-bezier(.22,1,.36,1); }
@media (hover: hover) and (pointer: fine) {
  .dynamic-media--image:hover::after { opacity: 1; transform: scale(1); }
  .dynamic-media--image:hover { box-shadow: 0 24px 58px rgba(24,24,24,.24), 0 7px 18px rgba(24,24,24,.14); }
  /*.dynamic-media--image:hover img { transform: scale(1.045); will-change: transform; }*/
}
.dynamic-media--youtube { aspect-ratio: 16/9; }
.dynamic-layout--text-only .dynamic-media-grid { display: none; }
.position-relative{position:relative}.position-absolute{position:absolute}.dynamic-section--slides{isolation:isolate}.dynamic-section--slides .section-content{z-index:6;bottom:0;left:var(--pad);width:min(720px,calc(100% - 2 * var(--pad)));padding:clamp(1.25rem,3vw,2.4rem);color:var(--section-text);background:var(--section-bg);transform:translateY(-50%)}.dynamic-section--slides .section-content .dynamic-description{margin-left:0}.dynamic-section--slides .media-slide,.dynamic-section--slides .fp-tableCell{width:100%;height:100dvh}.dynamic-section--slides .media-slide .dynamic-media{width:100%;height:100dvh;aspect-ratio:auto;border-radius:0;box-shadow:none}.dynamic-section--slides .media-slide .dynamic-media img,.dynamic-section--slides .media-slide .dynamic-media video,.dynamic-section--slides .media-slide .dynamic-media iframe{width:100%;height:100%;object-fit:cover}.dynamic-section--slides .fp-controlArrow{z-index:8;display:grid!important;place-items:center;width:46px!important;height:46px!important;margin-top:-23px!important;border:1px solid currentColor!important;border-radius:50%;color:var(--section-text);background:var(--section-bg)}.dynamic-section--slides .fp-controlArrow::before{font-family:"bootstrap-icons"!important;font-size:20px;line-height:1}.dynamic-section--slides .fp-controlArrow.fp-prev{left:var(--pad)!important}.dynamic-section--slides .fp-controlArrow.fp-prev::before{content:"\f284"}.dynamic-section--slides .fp-controlArrow.fp-next{right:var(--pad)!important}.dynamic-section--slides .fp-controlArrow.fp-next::before{content:"\f285"}.dynamic-section--slides .fp-slidesNav{z-index:9}.dynamic-section--slides .fp-slidesNav.fp-bottom{bottom:22px}.dynamic-section--slides .fp-slidesNav ul li a span{background: #1c4e45;}

@media (max-width: 860px) {
  .site-header { height: 66px; mix-blend-mode: normal; background: var(--paper); }
  .menu-toggle { display: inline-flex; align-items: center; gap: .7rem; z-index: 2; cursor: pointer; }
  .menu-toggle__label { font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; }
  .menu-toggle__icon { width: 24px; height: 8px; border-top: 1px solid; border-bottom: 1px solid; }
  .site-menu { position: fixed; z-index:2; top:0; right:0; bottom:0; left:auto; width:min(86vw,430px); padding: 8rem var(--pad); display: flex; flex-direction: column; gap: 1.5rem; background: var(--paper); transform: translateX(105%); transition: transform .45s cubic-bezier(.77, 0, .18, 1); }
  .site-menu.is-open { transform: translateX(0); }
  .menu-backdrop{display:block;position:fixed;z-index:19;inset:0;padding:0;border:0;background:rgba(24,24,24,.38);opacity:0;pointer-events:none;transition:opacity .3s ease}.menu-open .menu-backdrop{opacity:1;pointer-events:auto}
  .site-menu a { font-size: clamp(1.5rem, 5.5vw, 5rem); font-weight: 700; letter-spacing: -.05em; text-transform: none; }
  .page-index { display: none; }
  .hero__grid { grid-template-columns: 1fr; }
  .hero__object { position: absolute; right: -16vw; bottom: -10vw; width: min(62vw, 380px); opacity: .72; }
  .hero__content { position: relative; z-index: 1; }
  .hero__title { font-size: clamp(3.6rem, 17vw, 7rem); }
  .hero__copy { width: min(82%, 430px); }
  .about__grid, .work__intro { grid-template-columns: 1fr; align-content: center; }
  .about__grid { gap: 4vh; }
  .statement { font-size: clamp(3rem, 13vw, 6rem); }
  .roundel { display: none; }
  .work__layout { align-content: center; }
  .service-item { grid-template-columns: 40px 1fr; gap: .7rem 1rem; }
  .service-item p { grid-column: 2; font-size: .86rem; }
  .contact__footer { flex-wrap: wrap; }
  .dynamic-layout { grid-template-columns: 1fr; align-content: center; gap: 3vh; }
  .dynamic-title { font-size: clamp(3.25rem, 15vw, 6.5rem); letter-spacing: -.055em; }
  .dynamic-description { margin-left: 0; }
  .dynamic-media-grid { position: absolute; right: -8vw; bottom: -5vh; width: min(62vw, 430px); min-height: 32vh; opacity: .76; }
  .dynamic-media-grid--scrollable { right: 0; width: min(82vw, 560px); min-height: 28vh; }
  .dynamic-media-grid--scrollable .dynamic-media { flex-basis: min(72vw, 340px); width: min(72vw, 340px); }
  .dynamic-copy { max-width: 88%; }
  .dynamic-section--slides .section-content{position:relative;top:auto;left:auto;width:100%;max-width:none;height:100dvh;padding:7rem var(--pad) 5rem;display:flex;flex-direction:column;justify-content:center;background:var(--section-bg);transform:none}.dynamic-section--slides .section-content .dynamic-title{font-size:clamp(3.25rem,15vw,6.5rem)}.dynamic-section--slides .fp-controlArrow{width:40px!important;height:40px!important;margin-top:-20px!important}.dynamic-section--slides .fp-controlArrow.fp-prev{left:12px!important}.dynamic-section--slides .fp-controlArrow.fp-next{right:12px!important}.dynamic-section--slides .fp-slidesNav.fp-bottom{bottom:16px}
}

@media (max-height: 680px) and (min-width: 861px) {
  .section-inner { padding-top: 6rem; padding-bottom: 2rem; }
  .hero__title { font-size: clamp(4rem, 8vw, 7rem); }
  .statement { font-size: clamp(3rem, 6vw, 5rem); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
  .title-line > span, .word > span { transform: none; }
  [data-animation] { opacity: 1 !important; transform: none !important; }
  .dynamic-media video { animation: none !important; }
  .dynamic-media--image img { transform: none !important; will-change: auto; }
  .dynamic-media--image::after { display: none; }
}

@media (orientation: landscape) and (max-height: 560px) and (max-width: 1000px) {
  body.orientation-locked::before { content: "Trang này được khóa ở màn hình dọc. Vui lòng xoay thiết bị."; position: fixed; z-index: 100; inset: 0; display: grid; place-items: center; padding: 2rem; color: #f1f0ea; background: #181818; text-align: center; font: 700 clamp(1.5rem, 5vw, 3rem)/1.1 "Helvetica Neue", Arial, sans-serif; }
}
.contact-channels{position:fixed;z-index:24;right:var(--pad);bottom:clamp(1.1rem,3vh,2rem);display:flex;flex-direction:column;align-items:flex-end;gap:.45rem}.contact-channels a{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;color:var(--ink);text-decoration:none}.contact-channels span{display:grid;place-items:center;width:38px;height:38px;border:none;background:transparent;font-size:.72rem;font-weight:800}.contact-channels a:last-child span{color:var(--paper);background:transparent;}.contact-channels strong{padding:.35rem .55rem;color:var(--ink);background:var(--paper);font-size:.7rem;opacity:0;transform:translateX(.4rem);transition:opacity .16s ease,transform .16s ease}.contact-channels a:hover strong,.contact-channels a:focus-visible strong{opacity:1;transform:none}.contact-channels a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.contact-channels span img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:860px){.contact-channels{right:1rem;bottom:1rem}.contact-channels strong{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
.dynamic-section--slides .section-content{transform:none;translate:0 -15%}
@media(max-width:860px){.dynamic-section--slides .section-content{transform:none;translate:none}}
.dynamic-section--slides .section-content{isolation:isolate;background:transparent;text-shadow:0 2px 4px rgba(0,0,0,.72),0 8px 24px rgba(0,0,0,.46)}
.dynamic-section--slides .section-content::before{content:"";position:absolute;z-index:-1;inset:0px;background:transparent;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none}
.dynamic-section--slides .fp-slidesNav{left:50%!important;right:auto!important;width:max-content;transform:translateX(-50%)}
html,body,.fp-overflow,.fp-slides,.dynamic-media-grid--scrollable{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body::-webkit-scrollbar,.fp-overflow::-webkit-scrollbar,.fp-slides::-webkit-scrollbar,.dynamic-media-grid--scrollable::-webkit-scrollbar{display:none;width:0;height:0}
.dynamic-section--slides .fp-slides{cursor:grab}.dynamic-section--slides.is-dragging .fp-slides{cursor:grabbing;user-select:none}.dynamic-section--slides .media-slide img{-webkit-user-drag:none;user-select:none}
.dynamic-section--slides .fp-controlArrow{color:#fff;background:rgba(0,0,0,.24);border-color:rgba(255,255,255,.58)!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color .2s ease,border-color .2s ease,transform .2s cubic-bezier(.22,1,.36,1)}
.dynamic-section--slides .fp-controlArrow:hover{background:rgba(0,0,0,.48);border-color:rgba(255,255,255,.9)!important;transform:scale(1.08)}
.dynamic-section--slides .fp-controlArrow:active{transform:scale(.96)}
.dynamic-section--slides .fp-controlArrow,.dynamic-section--slides .fp-slidesNav a{cursor:pointer}
.media-actions{position:absolute;z-index:12;right:clamp(1rem,2vw,1.5rem);bottom:clamp(3.8rem,8vh,5.5rem);display:flex;gap:.55rem}.media-action{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.6);border-radius:50%;color:#fff;background:rgba(0,0,0,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,transform .2s cubic-bezier(.22,1,.36,1)}.media-action:hover{background:rgba(0,0,0,.56);border-color:#fff;transform:translateY(-2px)}.media-action:active{transform:scale(.95)}.media-action.is-copied{color:#181818;background:#ffd447;border-color:#ffd447}.media-action i{font-size:1rem;line-height:1}.dynamic-media>.media-actions{right:1rem;bottom:1rem}.dynamic-section--slides .dynamic-media>.media-actions{bottom:clamp(3.8rem,8vh,5.5rem)}
.contact-channels{left:var(--pad);right:auto;align-items:flex-start}.contact-channels a{justify-content:flex-start}@media(max-width:860px){.contact-channels{left:1rem;right:auto}}
.media-actions .media-action:first-child{background:rgba(28,78,69,.84);border-color:rgba(214,239,231,.82)}.media-actions .media-action:first-child:hover{background:#1c4e45;border-color:#fff}.media-actions .media-action:nth-child(2){background:rgba(239,91,63,.86);border-color:rgba(255,226,218,.88)}.media-actions .media-action:nth-child(2):hover{background:#d94731;border-color:#fff}.media-actions .media-action.is-copied{color:#181818;background:#f3ca52;border-color:#fff}
.dynamic-section--copy-slide .section-content{position:relative;top:auto;bottom:auto;left:auto;width:100%;max-width:none;height:100dvh;padding:7rem var(--pad) 5rem;display:flex;flex-direction:column;justify-content:center;background:var(--section-bg);text-shadow:none;transform:none;translate:none}.dynamic-section--copy-slide .section-content::before{display:none}
.dynamic-section--media-descriptions .media-description{position:absolute;z-index:7;left:clamp(1rem,4vw,var(--pad));right:clamp(5rem,12vw,10rem);bottom:clamp(4.8rem,10vh,7rem);max-width:58ch;margin:0;padding:.75rem 1rem;color:#fff;background:rgba(0,0,0,.42);font-size:clamp(.9rem,1.15vw,1.08rem);line-height:1.55;white-space:pre-line;text-wrap:pretty;text-shadow:0 2px 12px rgba(0,0,0,.65);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
@media(max-width:860px){.dynamic-section--media-descriptions .media-description{left:1rem;right:4.5rem;bottom:4.5rem;max-width:calc(100% - 5.5rem);font-size:.9rem}}
@media(prefers-reduced-motion:reduce){.dynamic-section--media-descriptions .media-description{opacity:1!important;transform:none!important}}
.contact-channel{display:flex;align-items:center;gap:.55rem}.contact-channel__label{padding:.35rem .55rem;border:0;color:var(--ink);background:var(--paper);font:700 .7rem/1.2 inherit;opacity:0;transform:translateX(.4rem);cursor:pointer;transition:opacity .16s ease,transform .16s ease,background-color .16s ease}.contact-channel:hover .contact-channel__label,.contact-channel:focus-within .contact-channel__label{opacity:1;transform:none}.contact-channel__label:hover,.contact-channel__label.is-copied{background:var(--yellow)}@media(max-width:860px){.contact-channel__label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}}
.dynamic-media.is-gallery-clickable{cursor:zoom-in}.media-gallery-hitarea{position:absolute;z-index:6;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.media-gallery-hitarea--background{z-index:0}.media-gallery-hitarea:focus-visible{outline:2px solid currentColor;outline-offset:-4px}.contact-channels{z-index:1100}
@media(max-width:860px){.contact-channels{flex-direction:row;align-items:center;gap:.65rem}.contact-channel{flex:0 0 auto}}
.dynamic-media--display-contain video,.dynamic-media--display-contain iframe{object-fit:contain!important}.dynamic-section--slides .media-slide .dynamic-media--display-portrait,.dynamic-section--slides .media-slide .dynamic-media--display-auto.is-portrait{display:grid;place-items:center;background:var(--section-bg)}.dynamic-section--slides .media-slide .dynamic-media--display-portrait video,.dynamic-section--slides .media-slide .dynamic-media--display-portrait iframe,.dynamic-section--slides .media-slide .dynamic-media--display-auto.is-portrait video{width:min(46vw,520px)!important;height:min(88dvh,900px)!important;object-fit:contain!important}.dynamic-section--slides .media-slide .dynamic-media--display-split{background:var(--section-bg)}.dynamic-section--slides .media-slide .dynamic-media--display-split video,.dynamic-section--slides .media-slide .dynamic-media--display-split iframe{width:52%!important;height:100%!important;margin-left:auto;object-fit:cover!important}@media(max-width:860px){.dynamic-section--slides .media-slide .dynamic-media--display-portrait video,.dynamic-section--slides .media-slide .dynamic-media--display-portrait iframe,.dynamic-section--slides .media-slide .dynamic-media--display-auto.is-portrait video,.dynamic-section--slides .media-slide .dynamic-media--display-split video,.dynamic-section--slides .media-slide .dynamic-media--display-split iframe{width:100%!important;height:100%!important;margin:0!important;object-fit:contain!important}}
.site-header,.page-index,.fp-slidesNav,.media-actions{transition:opacity .22s ease}.dynamic-section--slides .fp-controlArrow{transition:opacity .22s ease,background-color .2s ease,border-color .2s ease,transform .2s cubic-bezier(.22,1,.36,1)}.controls-idle .site-header,.controls-idle .page-index,.controls-idle .fp-controlArrow,.controls-idle .fp-slidesNav,.controls-idle .media-actions{opacity:0!important;pointer-events:none!important}@media(prefers-reduced-motion:reduce){.site-header,.page-index,.fp-controlArrow,.fp-slidesNav,.media-actions{transition-duration:.01ms!important}}
.site-footer{position:fixed;z-index:14;right:2rem;bottom:1rem;max-width:min(36rem,calc(100vw - 4rem));white-space:pre-line;text-align:right;font-size:clamp(.72rem,.9vw,.9rem);font-weight:650;line-height:1.45;text-wrap:pretty;text-shadow:0 1px 2px rgba(0,0,0,.72),0 4px 14px rgba(0,0,0,.42);pointer-events:none}
.site-media-fancybox .fancybox__content:has(.fancybox__html5video),.site-media-fancybox .fancybox__content:has(>video),.fancybox__container .fancybox__content:has(.fancybox__html5video){width:min(92vw,1440px)!important;height:min(86dvh,900px)!important;max-width:none!important;max-height:none!important;padding:0!important;background:#111}.site-media-fancybox .fancybox__html5video,.site-media-fancybox .fancybox__content>video{display:block;width:100%!important;height:100%!important;object-fit:contain!important}@media(max-width:860px){.site-media-fancybox .fancybox__content:has(.fancybox__html5video),.site-media-fancybox .fancybox__content:has(>video){width:calc(100vw - 1rem)!important;height:calc(100dvh - 5rem)!important}}
.pull-refresh-indicator{position:fixed;z-index:1200;top:0;left:50%;padding:.65rem 1rem;border:1px solid rgba(255,255,255,.55);border-radius:999px;color:#fff;background:rgba(24,24,24,.82);font-size:.72rem;font-weight:700;opacity:0;pointer-events:none;transform:translate(-50%,calc(-100% + var(--pull-distance,0px)));transition:opacity .16s ease,transform .16s ease}.pull-refresh-indicator.is-visible{opacity:1}.pull-refresh-indicator.is-ready{color:#181818;background:#f3ca52;border-color:#fff}@media(prefers-reduced-motion:reduce){.pull-refresh-indicator{transition:none}}
