@font-face{font-family:KYAF;src:local("Arial");font-weight:100 900;font-display:swap}
:root{color-scheme:light;--paper:#f4f3ee;--ink:#17202b;--muted:#626872;--blue:#2059ec;--line:#d8dbd7;--dark:#17202b;--pad:clamp(24px,5.2vw,84px);font-family:KYAF,"Helvetica Neue",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:5px}button[hidden],[hidden]{display:none!important}::selection{color:#fff;background:var(--blue)}.skip-link{position:fixed;top:8px;left:8px;z-index:10;background:#fff;padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
.site-header{display:flex;align-items:center;gap:32px;padding:28px var(--pad);max-width:1680px;margin:auto;border-bottom:1px solid var(--line)}.wordmark{display:inline-flex;align-items:baseline;gap:3px;font-size:30px;font-weight:800;letter-spacing:-1.8px;text-decoration:none}.wordmark-dot{width:6px;height:6px;border-radius:50%;background:var(--blue);margin-left:2px}.header-description{font-size:11px;line-height:1.4;font-weight:500;letter-spacing:.025em;border-left:1px solid var(--line);padding-left:24px}.site-header nav{margin-left:auto;display:flex;align-items:center;gap:38px;font-size:12px}.site-header nav a{text-decoration:none;display:flex;align-items:center;gap:14px}.site-header nav a:hover{color:var(--blue)}.nav-contact{border:1px solid var(--ink);border-radius:24px;padding:12px 19px}
.hero{display:grid;grid-template-columns:1.05fr 1fr;max-width:1680px;margin:auto;min-height:760px;padding:74px var(--pad) 58px;gap:16px;position:relative;overflow:hidden}.hero-copy{position:relative;z-index:1}.eyebrow{font-family:"Courier New",monospace;font-size:10px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:10px}.status-dot{height:6px;width:6px;background:var(--blue);border-radius:50%;flex-shrink:0}.hero h1{font-size:clamp(110px,13.8vw,214px);font-weight:600;line-height:.86;letter-spacing:-.082em;margin:44px 0 12px}.title-period{color:var(--blue)}.foundation-name{font-size:clamp(14px,1.32vw,19px);font-weight:500;letter-spacing:-.015em;margin:0 0 40px 5px}.hero-question{font-size:clamp(32px,3.1vw,49px);line-height:1.12;letter-spacing:-.04em;max-width:530px;margin:0 0 20px}.hero-question em{font-family:Georgia,"Times New Roman",serif;font-weight:400}.hero-answer{font-size:14px;line-height:1.6;color:var(--muted);max-width:315px;margin:0 0 32px}.text-link{font-size:11px;font-weight:500;display:inline-flex;align-items:center;gap:18px;text-decoration:none}.arrow-circle{display:grid;place-items:center;width:32px;height:32px;border:1px solid #c4c8ca;border-radius:50%;font-size:17px;transition:background .2s,color .2s,transform .2s}.text-link:hover .arrow-circle{background:var(--blue);color:#fff;transform:rotate(45deg);border-color:var(--blue)}
.hero-art{position:relative;min-width:0;min-height:615px;align-self:stretch;margin-top:6px}.art-grid{position:absolute;inset:3% -20% 10%;background-image:linear-gradient(#cbd1d526 1px,transparent 1px),linear-gradient(90deg,#cbd1d526 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse at 50% 50%,#000 0%,transparent 65%);pointer-events:none}.sculpture-wrap{position:absolute;inset:0 -10% 0 -10%}.sculpture-fallback,#sculpture{position:absolute;width:100%;height:100%;inset:0}.sculpture-fallback{transition:opacity .3s}.webgl-ready .sculpture-fallback{opacity:0;pointer-events:none}#sculpture{opacity:0;transition:opacity .6s;cursor:grab;touch-action:pan-y}.webgl-ready #sculpture{opacity:1}#sculpture:active{cursor:grabbing}
.section-divider{max-width:1680px;margin:auto;padding:22px var(--pad);border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font:9px/1.5 "Courier New",monospace;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.section-divider a{display:flex;gap:30px;text-decoration:none}.section-divider a span{font-size:18px;line-height:1}
.about{background:var(--dark);color:#f4f3ee;padding:52px var(--pad) 88px;scroll-margin-top:0}.about-top{max-width:1512px;margin:auto;display:flex;justify-content:space-between;align-items:center;margin-bottom:54px}.about-top .eyebrow{color:#acb5c1}.about-mark{font-size:12px;letter-spacing:-.02em}.about-layout{max-width:1512px;margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(55px,8vw,135px);align-items:center}.portrait-column{max-width:405px;width:100%;justify-self:start}.portrait{margin:0;position:relative}.portrait img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:2px}.portrait figcaption{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff27;padding:16px 0;font:9px/1.5 "Courier New",monospace;letter-spacing:.04em;color:#b8c3cd}.portrait figcaption span:last-child{font-size:17px}.about-copy h2{font-size:clamp(31px,4vw,61px);font-weight:400;line-height:1.07;letter-spacing:-.045em;margin:0 0 32px}.about-copy h2 span{color:#a8b4c3}.about-copy p{font-size:clamp(17px,1.65vw,23px);line-height:1.5;letter-spacing:-.02em;max-width:580px;margin:0 0 22px}.about-copy .about-secondary{font-size:14px;line-height:1.7;letter-spacing:0;color:#bac2cc;max-width:455px}.about-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.about-tags span{font-size:9px;color:#c6cdd6;border:1px solid #ffffff30;border-radius:20px;padding:8px 12px}
.contact-section{max-width:1680px;margin:auto;padding:96px var(--pad) 106px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.contact-heading h2{font-size:clamp(62px,8.5vw,133px);font-weight:400;letter-spacing:-.075em;line-height:1;margin:25px 0 0}.contact-heading h2 span{color:var(--blue)}.contact-copy{max-width:440px;justify-self:end}.contact-copy p{font-size:16px;line-height:1.75;color:var(--muted);margin:0 0 28px}.contact-copy p a{color:var(--ink)}.contact-links{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:48px;padding:14px 20px;border:1px solid var(--ink);border-radius:30px;display:inline-flex;align-items:center;justify-content:center;gap:15px;text-decoration:none;font-size:11px;font-weight:500;transition:transform .2s,background .2s,color .2s}.button-primary{background:var(--ink);color:#fff}.button-secondary{background:transparent;color:var(--ink)}.button:hover{background:var(--blue);border-color:var(--blue);color:#fff;transform:translateY(-2px)}.button>span{font-size:16px}
footer{max-width:1680px;margin:auto;border-top:1px solid var(--line);padding:26px var(--pad) 30px;display:flex;align-items:center;gap:32px}footer>.wordmark{font-size:24px}footer>span{font-size:10px;color:var(--muted)}.footer-top{font-size:10px;margin-left:auto;display:flex;align-items:center;gap:22px;text-decoration:none}
@media(min-width:1680px){.about{padding-left:max(var(--pad),calc((100vw - 1512px)/2));padding-right:max(var(--pad),calc((100vw - 1512px)/2))}}
@media(max-width:1100px){.hero{min-height:710px;padding-top:60px}.hero-art{min-height:580px}.hero-question{font-size:35px}.hero h1{font-size:145px}.about-layout{gap:55px}.about-copy h2{font-size:42px}.contact-section{gap:30px}.contact-copy p{font-size:14px}}
@media(max-width:760px){:root{--pad:24px}.site-header{padding-top:23px;padding-bottom:23px;gap:20px}.wordmark{font-size:27px}.header-description{font-size:9px;padding-left:18px}.site-header nav{gap:0}.site-header nav>a:first-child{display:none}.nav-contact{padding:10px 13px;font-size:10px}.hero{grid-template-columns:1fr;gap:14px;padding-top:43px;padding-bottom:25px;min-height:0}.hero h1{font-size:clamp(105px,25vw,174px);margin-top:30px}.foundation-name{font-size:14px;margin-left:3px;margin-bottom:31px}.hero-question{font-size:clamp(32px,6.5vw,43px);max-width:570px;margin-bottom:15px}.desktop-break{display:none}.hero-answer{font-size:12px;margin-bottom:24px;max-width:none}.hero-art{height:470px;min-height:0;margin:0;order:2}.sculpture-wrap{inset:-30px -24px 0}.hero-link{font-size:10px}.eyebrow{font-size:9px}.section-divider{font-size:8px;gap:15px;padding-top:20px;padding-bottom:20px}.section-divider>a{gap:14px}.about{padding-top:35px;padding-bottom:48px}.about-top{margin-bottom:34px}.about-mark{font-size:10px}.about-layout{grid-template-columns:1fr;gap:35px}.about-copy{grid-row:1}.about-copy h2{font-size:clamp(35px,7.4vw,52px);margin-bottom:24px}.about-copy p{font-size:18px;max-width:540px}.about-copy .about-secondary{font-size:13px;max-width:490px}.about-tags{margin-top:24px}.portrait-column{max-width:360px}.portrait img{aspect-ratio:1.12;object-position:50% 38%}.contact-section{grid-template-columns:1fr;padding-top:52px;padding-bottom:54px;gap:30px}.contact-heading h2{font-size:85px;margin-top:21px}.contact-copy{justify-self:start;max-width:510px}.contact-copy p{font-size:14px}.contact-links .button{min-height:48px;font-size:11px}footer{gap:20px;padding-top:23px}footer>span{font-size:8px;max-width:100px;line-height:1.5}.footer-top{font-size:9px;gap:10px}}
@media(max-width:380px){.header-description{display:none}.hero-art{height:395px}.hero-question{font-size:31px}.contact-heading h2{font-size:74px}.section-divider{font-size:7px}.button{padding:13px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

#sculpture:focus-visible{outline:2px solid var(--blue);outline-offset:-8px;border-radius:12px}
.language-switch{display:flex;align-items:center;padding:2px;border:1px solid var(--line);border-radius:24px;gap:1px}
.site-header nav .language-switch a{min-width:34px;min-height:34px;justify-content:center;font-size:10px;line-height:1;text-decoration:none;border-radius:20px;color:var(--muted)}
.site-header nav .language-switch a[aria-current="page"]{background:var(--ink);color:#fff}
.site-header nav .language-switch a:hover{background:#e4e8ec;color:var(--ink)}
.site-header nav .language-switch a[aria-current="page"]:hover{background:var(--blue);color:#fff}
.copy-email{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 0;border:0;background:transparent;color:var(--muted);font-size:12px;margin-top:10px}
.copy-email:hover{color:var(--blue)}
.copy-status{display:block;min-height:18px;font-size:12px;line-height:1.5;color:var(--muted)}
html[lang="nb"] .contact-heading h2{font-size:clamp(60px,7.3vw,114px);line-height:.98}
@media(max-width:1100px){.site-header nav{gap:22px}}
@media(max-width:760px){
  .site-header{gap:14px}.header-description{display:none}.site-header nav{gap:8px}
  .site-header nav .language-switch a{min-height:40px;min-width:30px;font-size:11px}
  .nav-contact{min-height:44px;padding:10px 12px;font-size:11px;gap:8px!important}
  .eyebrow{font-size:10px;letter-spacing:.06em}
  .hero-answer{font-size:14px}.hero-link{font-size:12px}
  .section-divider{font-size:9px;letter-spacing:0;gap:10px;line-height:1.7}
  .section-divider>span{max-width:225px}.section-divider>a{gap:8px;white-space:nowrap}
  .about-top .eyebrow{font-size:10px}.about-mark{font-size:11px}
  .portrait figcaption{font-size:11px}.about-tags span{font-size:11px}
  .about-copy .about-secondary{font-size:15px}.contact-copy p{font-size:15px}
  .contact-links .button{font-size:12px}footer>span{font-size:10px;max-width:130px}
  .footer-top{font-size:11px;gap:8px}
  html[lang="nb"] .contact-heading h2{font-size:72px}
}
@media(max-width:380px){.nav-contact{font-size:10px;padding:10px 9px}.section-divider>span{max-width:180px}footer{gap:14px}}

/* KYAF_BOOKING_CSS_START */
.booking-section{max-width:1680px;margin:0 auto;padding:72px var(--pad) 80px;border-top:1px solid var(--line);background:var(--paper);scroll-margin-top:24px;min-width:0}
.booking-heading{margin:0 auto 34px;max-width:1150px}
.booking-heading h2{max-width:1050px;font-size:clamp(44px,6vw,88px);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin:22px 0 20px;overflow-wrap:break-word}
.booking-heading h2 span{color:var(--blue)}
.booking-heading p{font-size:16px;line-height:1.7;color:var(--muted);margin:0}
.booking-embed{width:100%;max-width:1150px;min-width:0;margin:0 auto;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--paper)}
.booking-embed iframe{display:block;width:100%;max-width:100%;min-width:0;height:800px;border:0;background:var(--paper)}
.booking-fallback{max-width:1150px;margin:20px auto 0;font-size:13px;line-height:1.7;color:var(--muted)}
.booking-fallback a{color:var(--ink);display:inline-block;padding:10px 0}
.booking-fallback a:hover{color:var(--blue)}
@media(max-width:760px){
  .booking-section{padding:48px 0 44px}
  .booking-heading,.booking-fallback{padding-inline:var(--pad)}
  .booking-heading{margin-bottom:26px}
  .booking-heading h2{font-size:clamp(42px,8vw,60px);line-height:1.08;margin-top:20px}
  .booking-heading p{font-size:15px}
  .booking-embed{border-inline:0;border-radius:0}
  .booking-fallback{font-size:13px}
}
/* KYAF_BOOKING_CSS_END */

html.booking-open{overflow:hidden;scroll-behavior:auto}
body.booking-open{position:fixed;width:100%;overflow:hidden}
.booking-dialog{padding:0;border:0;margin:0;inset:0;max-width:none;max-height:none;width:100%;height:100%;height:100dvh;background:var(--paper);color:var(--ink);overscroll-behavior:none}
.booking-dialog[open]{display:flex;flex-direction:column}
.booking-dialog::backdrop{background:#17202b66}
.booking-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;padding:calc(14px + env(safe-area-inset-top)) 18px 14px;border-bottom:1px solid var(--line)}
.booking-dialog-header h2{font-size:22px;font-weight:500;letter-spacing:-.035em;margin:0;line-height:1.2}
.booking-dialog-duration{font-size:14px;color:var(--muted);margin:5px 0 0}
.booking-dialog-close{width:48px;height:48px;flex:none;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink)}
.booking-dialog-close:hover{background:#e4e8ec}
.booking-dialog-frame{border:0;display:block;width:100%;flex:1;min-height:0;background:#fff}
.booking-dialog-footer{flex:none;border-top:1px solid var(--line);padding:0 18px env(safe-area-inset-bottom);background:var(--paper)}
.booking-dialog-external{display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:13px;text-decoration:none}
