/*
 * The Kissing Project: all front-end styling.
 *
 * Sections 1-7 are Nick Missiaen's original styles, kept in the same order the
 * live site loaded them, so the page looks the same. Later rules win over
 * earlier ones. Section 8 is new: it adapts those styles to WordPress block
 * markup. To change the look, the safest place to add a rule is the bottom
 * of this file.
 */

/* ==========================================================================
   1. Original theme stylesheet (Nick's site.css v3.2)
   ========================================================================== */
:root{--tkp-header-background:#241610;--tkp-header-text:#fbf8f1;--tkp-hero-overlay:#251711;--tkp-hero-overlay-opacity:13%;--tkp-idea-background:#f4eee2;--tkp-idea-text:#2a1c15;--tkp-documentary-background:#241610;--tkp-documentary-text:#fbf8f1;--tkp-story-background:#fbf8f1;--tkp-story-text:#2a1c15;--tkp-mosaic-background:#f4eee2;--tkp-mosaic-text:#2a1c15;--tkp-mosaic-detail-background:#251711;--tkp-artists-background:#fbf8f1;--tkp-artists-text:#2a1c15;--tkp-conversation-background:#251711;--tkp-conversation-text:#fbf8f1;--tkp-opportunities-background:#f4eee2;--tkp-opportunities-text:#2a1c15;--tkp-footer-background:#251711;--tkp-footer-text:#fbf8f1}
:root{--ink:#2a1c15;--paper:#fbf8f1;--sand:#f4eee2;--gold:#ad8a50;--dark:#251711;--line:#d7c39e;--serif:"Cormorant Garamond",Georgia,serif;--display:"Poiret One",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:400 20px/1.45 var(--serif)}img,video{display:block;max-width:100%}button,input,textarea{font:inherit}a{color:inherit}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:fixed;z-index:50;left:20px;top:10px;padding:10px 14px;color:var(--ink);background:var(--paper);transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}
.site-header{color:var(--tkp-header-text);background:var(--tkp-header-background)}.header-photo{width:100%;height:106px;object-fit:cover;object-position:center 78%}.site-nav-wrap{position:relative;display:flex;min-height:48px;max-width:1440px;margin:auto;align-items:center;justify-content:center;padding:0 48px}.brand{position:absolute;left:48px;top:50%;width:106px;transform:translateY(-50%)}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;justify-content:center;gap:31px;margin-left:130px;font:400 10px/1 var(--serif);letter-spacing:.035em;text-transform:uppercase}.site-header nav a{color:inherit;text-decoration:none;white-space:nowrap;transition:opacity .2s ease}.site-header nav a:hover{opacity:.7}
.hero{position:relative;height:min(53vw,725px);min-height:570px;overflow:hidden;background:var(--dark)}.hero__video{width:100%;height:100%;object-fit:cover;object-position:center 46%}.hero__veil{position:absolute;inset:0;background:color-mix(in srgb,var(--tkp-hero-overlay) var(--tkp-hero-overlay-opacity),transparent);pointer-events:none}.hero__overlay{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.hero h1{margin:0}.hero h1 img{width:min(345px,58vw)}.video-toggle{position:absolute;right:24px;bottom:20px;display:grid;width:28px;height:28px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:50%;color:#fff;background:rgba(37,23,17,.7);cursor:pointer}
.panel{padding:112px max(6.1vw,44px);color:var(--ink)}.panel--dark{color:var(--paper)}.idea{display:flex;min-height:430px;flex-direction:column;align-items:center;justify-content:center;padding-top:80px;padding-bottom:80px;color:var(--tkp-idea-text);background:var(--tkp-idea-background);text-align:center}.documentary{display:grid;min-height:600px;place-items:center;color:var(--tkp-documentary-text);background:var(--tkp-documentary-background)}.story{color:var(--tkp-story-text);background:var(--tkp-story-background)}.mosaic{color:var(--tkp-mosaic-text);background:var(--tkp-mosaic-background)}.artists{color:var(--tkp-artists-text);background:var(--tkp-artists-background)}.conversation{color:var(--tkp-conversation-text);background:var(--tkp-conversation-background)}.opportunities{padding-bottom:0;color:var(--tkp-opportunities-text);background:var(--tkp-opportunities-background)}
.section-label,h3{margin:0;font:400 39px/.98 var(--display);letter-spacing:0}.section-label{margin-bottom:56px}.idea .section-label{margin-bottom:23px;font-size:29px}.idea h2{max-width:720px;margin:0;font:400 23px/1.25 var(--serif)}.idea .lead{max-width:550px;margin:13px 0 0;white-space:pre-line;font:italic 13px/1.45 var(--serif)}
.video-shell{display:grid;width:min(100%,1040px);min-height:406px;place-items:center;background:#2e1d16}.video-shell iframe{display:block;width:100%;min-height:406px;border:0}.video-shell__placeholder{display:grid;width:100%;min-height:406px;place-items:center;background-color:#2e1d16;background-position:center;background-size:cover;color:var(--paper)}.video-shell__placeholder span{display:grid;width:29px;height:29px;place-items:center;margin-bottom:-18px;overflow:hidden;border:1px solid rgba(255,255,255,.75);border-radius:50%;font-size:10px}.video-shell__placeholder small{margin-top:-18px;font-size:0}
.story__header,.story__grid{max-width:1152px;margin-right:auto;margin-left:auto}.story__header{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:60px}.story__header .section-label{margin:0;font-size:39px}.story h2{margin:0;white-space:pre-line;font:400 34px/1.25 var(--serif)}.story__grid{display:grid;grid-template-columns:1fr 1fr;gap:76px;font-size:23px;line-height:1.4}.story__grid p{margin:0 0 25px}.story__facts{color:var(--gold);font-style:italic}
.mosaic>.section-label,.mosaic__stage,.mosaic-facts{max-width:1316px;margin-right:auto;margin-left:auto}.mosaic>.section-label{margin-bottom:60px;font-size:42px}.mosaic__stage{display:grid;grid-template-columns:minmax(0,4fr) minmax(230px,1.15fr);gap:92px;align-items:stretch}.mosaic figure{position:relative;align-self:start;margin:0}.mosaic figure>img{width:100%;aspect-ratio:1;object-fit:cover}.mosaic-marker{position:absolute;display:grid;width:38px;height:38px;place-items:center;border:1px solid #f5eee0;border-radius:50%;color:#fff;background:var(--dark);font:400 11px/1 var(--serif);cursor:pointer;transition:transform .2s ease,background .2s ease}.mosaic-marker:hover,.mosaic-marker:focus-visible,.mosaic-marker.is-active{color:var(--dark);background:var(--paper);transform:scale(1.12)}.marker-one{left:49%;top:15%}.marker-two{left:29%;top:39%}.marker-three{left:35%;top:68%}.marker-four{left:74%;top:86%}.mosaic-detail{display:flex;min-height:100%;flex-direction:column;padding:28px;color:var(--paper);background:var(--tkp-mosaic-detail-background)}.mosaic-detail img{width:100%;aspect-ratio:1.45;object-fit:cover}.detail-count{margin:28px 0 25px;padding-bottom:25px;border-bottom:1px solid var(--gold);font-size:13px}.detail-caption{margin:0;font-size:28px;line-height:1.25}.mosaic-facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:76px;padding:0;list-style:none;border-right:1px solid var(--line)}.mosaic-facts li{display:flex;min-height:77px;align-items:flex-start;gap:8px;padding:19px 18px;border-top:1px solid var(--line);border-left:1px solid var(--line);font-size:16px;line-height:1.22}.mosaic-facts li:nth-child(n+5){border-bottom:1px solid var(--line)}.ornament-swirl{display:inline-block;width:15px;height:15px;flex:0 0 15px;object-fit:contain}
.artists>.section-label,.artists__hero,.artists__bios,.artists-gallery{max-width:1152px;margin-right:auto;margin-left:auto}.artists>.section-label{margin-bottom:56px}.artists__hero{width:100%;aspect-ratio:1.78;object-fit:cover;object-position:center}.artists__bios{display:grid;grid-template-columns:1fr 1fr;gap:116px;padding:67px 0 55px}.artists h3{margin-bottom:16px;font-size:31px}.artists__bios p{margin:0 0 25px;font-size:20px;line-height:1.45}.artists__bios .roles{display:flex;align-items:center;gap:8px;margin-bottom:34px;font-size:18px;font-style:italic}.artists-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.artists-gallery>div{display:grid;gap:28px;align-content:start}.artists-gallery button{display:block;width:100%;padding:0;overflow:hidden;border:0;background:transparent;cursor:zoom-in}.artists-gallery img{width:100%;object-fit:cover;transition:transform .45s ease}.artists-gallery button:hover img,.artists-gallery button:focus-visible img{transform:scale(1.035)}.artists-gallery>div:nth-child(1) button:first-child img,.artists-gallery>div:nth-child(2) button:first-child img{aspect-ratio:1.45}.artists-gallery>div:nth-child(1) button:last-child img,.artists-gallery>div:nth-child(2) button:last-child img{aspect-ratio:.77}.artists-gallery>div:nth-child(3) button:first-child img{aspect-ratio:.77}.artists-gallery>div:nth-child(3) button:last-child img{aspect-ratio:1}
.conversation{display:flex;flex-direction:column;align-items:center;padding-top:124px;padding-bottom:122px;text-align:center}.conversation .section-label{margin-bottom:36px;font-size:40px}.conversation h2{max-width:650px;margin:0 0 56px;font:400 29px/1.32 var(--serif)}.conversation .video-shell,.conversation .video-shell iframe,.conversation .video-shell__placeholder{min-height:490px}.abc-link{margin-top:56px;padding-bottom:5px;border-bottom:2px solid var(--gold);color:inherit;text-decoration:none;font-size:20px;transition:color .2s ease}.abc-link:hover{color:var(--gold)}
.opportunities__top{display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:1152px;margin:auto}.opportunities__top>.section-label{margin:0;font-size:40px}.opportunities h2{max-width:620px;margin:0 0 15px;font:400 29px/1.25 var(--serif)}.opportunities .lead{max-width:620px;margin:0 0 15px;font-size:25px;line-height:1.3}.contact-line{max-width:620px;margin:34px 0 0;font-size:22px;line-height:1.35}.enquiry-form{position:relative;display:grid;gap:16px;max-width:620px;margin-top:25px}.enquiry-form label{display:grid;gap:3px;font-size:18px}.enquiry-form input,.enquiry-form textarea{width:100%;min-height:39px;padding:0 0 6px;border:0;border-bottom:1px solid currentColor;border-radius:0;color:inherit;background:transparent;outline-offset:4px}.enquiry-form textarea{resize:vertical}.enquiry-form button{justify-self:end;width:31px;height:31px;border:0;color:var(--paper);background:var(--dark);cursor:pointer;transition:background .2s ease,transform .2s ease}.enquiry-form button:hover{background:var(--gold);transform:translateX(3px)}.form-note{min-height:1.4em;margin:0;font-size:16px}.opportunities__closing{max-width:1035px;margin:110px auto 55px;text-align:center;font-size:28px;line-height:1.35}.opportunities__closing p{margin:0 0 8px}.opportunities__image{width:min(1152px,100%);max-height:680px;margin:0 auto;object-fit:cover;object-position:center}
.site-footer{color:var(--tkp-footer-text);background:var(--tkp-footer-background);font-size:16px}.site-footer__feet{width:100%;height:108px;object-fit:cover;object-position:center 78%}.site-footer__content{display:grid;grid-template-columns:1fr auto 1fr;max-width:1152px;min-height:144px;margin:auto;align-items:center;gap:28px;padding:28px 0}.site-footer__content>div:last-child{text-align:right}.site-footer p{margin:0 0 6px}.site-footer a{text-underline-offset:5px}.site-footer__logo{width:164px;height:auto}
.gallery-lightbox{width:min(1000px,94vw);max-height:92vh;padding:50px 55px;border:0;color:var(--paper);background:var(--dark);box-shadow:0 30px 80px rgba(0,0,0,.45)}.gallery-lightbox::backdrop{background:rgba(16,10,8,.78)}.gallery-lightbox figure{margin:0}.gallery-lightbox img{width:auto;max-width:100%;max-height:74vh;margin:auto;object-fit:contain}.gallery-lightbox figcaption{margin-top:15px;text-align:center;font-size:18px}.gallery-lightbox button{color:var(--paper);background:transparent;cursor:pointer}.gallery-lightbox__close{position:absolute;right:15px;top:8px;border:0;font-size:32px}.gallery-lightbox__nav{position:absolute;top:50%;width:40px;height:40px;border:1px solid currentColor;border-radius:50%;transform:translateY(-50%)}.gallery-lightbox__prev{left:8px}.gallery-lightbox__next{right:8px}
@media (min-width:801px){.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}}@media (max-width:1050px) and (min-width:801px){.site-header nav{gap:19px;font-size:9px}.brand{left:28px}.site-nav-wrap{padding:0 28px}}@media (max-width:800px){body{font-size:18px}.header-photo{height:76px}.site-nav-wrap{min-height:50px;justify-content:flex-end;padding:0 20px}.brand{left:20px;width:92px}.site-header nav{gap:15px;margin-left:0;font-size:8px}.site-header nav a:nth-child(n+4){display:none}.hero{height:590px;min-height:0}.hero h1 img{width:260px}.panel{padding:75px 24px}.idea{min-height:330px}.section-label,.idea .section-label{font-size:29px}.idea h2{font-size:20px}.documentary{min-height:350px;padding:38px 24px}.video-shell,.video-shell iframe,.video-shell__placeholder{min-height:230px}.story__header,.story__grid,.mosaic__stage,.artists__bios,.opportunities__top{grid-template-columns:1fr;gap:34px}.story__header{margin-bottom:35px}.story h2{font-size:29px}.story__grid{font-size:20px}.mosaic>.section-label{margin-bottom:40px}.mosaic__stage{gap:25px}.mosaic-detail{min-height:330px}.detail-count{margin-top:25px}.detail-caption{font-size:24px}.mosaic-facts{grid-template-columns:repeat(2,1fr);margin-top:45px}.mosaic-facts li{font-size:14px}.artists__bios{padding:45px 0}.artists__bios p{font-size:19px}.artists-gallery,.artists-gallery>div{gap:12px}.conversation .section-label{margin-bottom:26px}.conversation h2{margin-bottom:35px;font-size:25px}.conversation .video-shell,.conversation .video-shell iframe,.conversation .video-shell__placeholder{min-height:260px}.opportunities__top>.section-label{margin-bottom:5px}.opportunities h2{font-size:25px}.opportunities .lead{font-size:22px}.contact-line{margin-top:32px;font-size:20px}.opportunities__closing{margin:75px auto 52px;font-size:22px}.site-footer__feet{height:90px}.site-footer__content{grid-template-columns:1fr;min-height:0;gap:18px;padding:30px 24px;text-align:center}.site-footer__content>div:last-child{text-align:center}.site-footer__logo{margin:auto}.gallery-lightbox{padding:48px 38px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__video{display:none}.hero{background:var(--kissing-hero-still) center/cover no-repeat}.video-toggle{display:none}.reveal{opacity:1!important;transform:none!important;transition:none!important}}

/* ==========================================================================
   2. Font rules the original added in the page head: headings and section labels in Poiret One, everything else in Cormorant Garamond, 16px base
   ========================================================================== */
:root{--tkp-studio-accent:#ad8a50;--tkp-studio-heading-font:"Poiret One", sans-serif;--tkp-studio-body-font:"Cormorant Garamond", serif;--tkp-studio-content-width:1316px;--tkp-studio-motion:.65s;}body,body button,body input,body select,body textarea,body p,body a,body li,body label,body small,body strong,body em,body figcaption,body dt,body dd,body summary,body blockquote,body address{font-family:var(--tkp-studio-body-font)!important;}body{font-size:calc(16px * 1)}body h1,body h2,body h3,body h4,body h5,body h6,body .section-label,body h1 a,body h2 a,body h3 a,body h4 a,body h5 a,body h6 a,body .section-label a,body #artists article h3 a{font-family:var(--tkp-studio-heading-font)!important;}.mosaic>.section-label,.mosaic__stage,.mosaic-facts{max-width:var(--tkp-studio-content-width)}.mosaic-marker,.tkp-extra__button{background:var(--tkp-studio-accent)}.reveal{transition-duration:var(--tkp-studio-motion)}@media (prefers-reduced-motion:reduce){html *{animation:none!important;transition:none!important}}

/* ==========================================================================
   3. Original refinements.css v3.2.9 (sticky header, hero, nav, footer, reveal animation)
   ========================================================================== */
/* Final visual refinements: the WordPress Customizer still supplies the section colours. */
:root{--tkp-idea-title-size:29px;--tkp-idea-lead-size:18px;--tkp-detail-caption-size:32px}
.site-header{position:sticky;top:-138px;z-index:30;box-shadow:0 8px 24px rgba(28,17,12,.14)}
.header-photo{height:138px;object-position:center 59%}
.site-nav-wrap{min-height:72px;max-width:none;padding:0 56px;background:#ad8a50}
.brand{left:56px;width:124px}
.site-header nav{gap:38px;margin-left:160px;color:#241610;font-size:11px;letter-spacing:.05em}
.site-header a:hover,.site-header a:focus-visible{opacity:.68}
.hero{height:min(56vw,760px);min-height:620px;background:#d4d1cd}
.hero__still{position:absolute;inset:0;background:center/cover no-repeat}
.hero__video{display:none}
.hero--video .hero__still{display:none}
.hero--video .hero__video{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}
.hero::after{position:absolute;bottom:30px;left:50%;z-index:2;content:"SCROLL TO EXPLORE  ↓";color:#fff;font:400 10px/1 var(--serif);letter-spacing:.18em;transform:translateX(-50%);text-shadow:0 1px 12px rgba(0,0,0,.55);pointer-events:none;animation:tkp-scroll-cue 2.2s ease-in-out infinite}
.hero::before{position:absolute;bottom:54px;left:50%;z-index:2;width:1px;height:24px;content:"";background:rgba(255,255,255,.76);transform:translateX(-50%);pointer-events:none}
@keyframes tkp-scroll-cue{50%{transform:translate(-50%,7px);opacity:.45}}
.idea h2{font-size:var(--tkp-idea-title-size)}
.idea .lead{max-width:660px;font-size:var(--tkp-idea-lead-size);line-height:1.5}
.documentary,.conversation{min-height:820px}
.video-shell,.video-shell iframe,.video-shell__placeholder{width:min(100%,1210px);min-height:min(66vh,760px)}
.video-shell__placeholder{background-image:none!important;background:#2b1a12}
.video-shell__placeholder span,.video-shell__placeholder small{opacity:0}
.mosaic__stage{grid-template-columns:minmax(0,1.22fr) minmax(390px,.92fr);gap:48px;align-items:stretch}
.mosaic__stage figure{display:flex;min-height:0;flex-direction:column;align-self:stretch}
.mosaic__stage figure>img{flex:1 1 auto;min-height:0;object-fit:cover}
.mosaic-detail{min-height:0;padding:38px}
.mosaic-detail img{aspect-ratio:1/1;min-height:0;object-fit:cover}
.detail-count{margin:30px 0 20px;padding-bottom:20px;font-size:14px}
.detail-caption{font-size:var(--tkp-detail-caption-size)}
.detail-explainer{margin:18px 0 0;color:var(--tkp-mosaic-text);font-size:16px;line-height:1.45}
.mosaic-facts li{position:relative;min-height:96px;padding:24px 20px;transition:color .35s ease,background .35s ease,transform .35s ease,box-shadow .35s ease}
.mosaic-facts li:hover,.mosaic-facts li:focus-within{z-index:1;color:#fbf8f1;background:#251711;transform:translateY(-5px);box-shadow:0 12px 20px rgba(37,23,17,.18)}
.ornament-swirl{width:21px;height:21px;flex-basis:21px}
.mosaic-facts li:hover .ornament-swirl{filter:invert(1)}
.site-footer{margin-top:48px;border-top:1px solid rgba(173,138,80,.4)}
.site-footer__feet{height:148px;object-position:center 59%}
@media (min-width:801px){.reveal{opacity:0;filter:blur(7px);clip-path:inset(0 0 13% 0);transform:translateY(52px) scale(.985);transition:opacity .75s ease,transform 1.1s cubic-bezier(.2,.7,.2,1),clip-path 1.1s cubic-bezier(.2,.7,.2,1),filter .75s ease}.reveal.is-visible{opacity:1;filter:none;clip-path:inset(0);transform:none}}
@media (max-width:1050px) and (min-width:801px){.site-nav-wrap{padding:0 32px}.brand{left:32px}.site-header nav{gap:24px;margin-left:125px;font-size:9px}.mosaic__stage{grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:30px}.mosaic-detail{padding:26px}.mosaic-detail img{min-height:280px}}
@media (max-width:800px){.site-header{top:-96px}.header-photo{height:96px;object-position:center 58%}.site-nav-wrap{min-height:62px;padding:0 20px}.brand{left:20px;width:105px}.site-header nav{gap:13px;font-size:8px}.hero{height:calc(100vw + 84px);min-height:0}.hero--video{height:82vh;min-height:620px}.hero::after{bottom:24px;font-size:8px}.hero::before{bottom:46px}.idea h2{font-size:calc(var(--tkp-idea-title-size) - 3px)}.idea .lead{font-size:calc(var(--tkp-idea-lead-size) - 1px)}.documentary,.conversation{min-height:590px}.video-shell,.video-shell iframe,.video-shell__placeholder{min-height:420px}.mosaic__stage{grid-template-columns:1fr;gap:25px}.mosaic-detail{padding:28px}.mosaic-detail img{min-height:0;aspect-ratio:1/1}.detail-explainer{font-size:16px}.mosaic-facts li{min-height:84px;padding:17px 14px}.site-footer{margin-top:36px}.site-footer__feet{height:118px;object-position:center 58%}}
@media (prefers-reduced-motion:reduce){.hero::after{animation:none}.reveal{opacity:1!important;filter:none!important;clip-path:none!important;transform:none!important;transition:none!important}.mosaic-facts li{transition:none!important}}

/* Navigation, artist links and the accessible header-video control. */
.site-header nav a{position:relative;padding:29px 0 27px;color:#fff!important;opacity:1!important}
.site-header nav a::after{position:absolute;right:0;bottom:21px;left:0;height:1px;content:"";background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .28s ease}
.site-header nav a:hover::after,.site-header nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.site-header nav a:focus-visible{outline:1px solid rgba(255,255,255,.9);outline-offset:5px}
.nav-toggle{display:none}
.video-toggle [aria-hidden="true"]{display:block;width:10px;height:12px;background:linear-gradient(90deg,currentColor 0 3px,transparent 3px 7px,currentColor 7px)}
.video-toggle[aria-pressed="true"] [aria-hidden="true"]{width:0;height:0;background:transparent;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:10px solid currentColor}
.artist-link{position:relative;color:inherit;text-decoration:none}
.artist-link::after{position:absolute;right:0;bottom:-5px;left:0;height:1px;content:"";background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .25s ease}
.artist-link:hover::after,.artist-link:focus-visible::after{transform:scaleX(1);transform-origin:left}
.artist-link:focus-visible{outline:1px solid var(--gold);outline-offset:6px}

@media (max-width:800px){
  .site-nav-wrap{justify-content:space-between}
  .nav-toggle{display:grid;width:38px;height:38px;margin-left:auto;place-content:center;gap:5px;padding:0;border:1px solid rgba(255,255,255,.56);border-radius:50%;color:#fff;background:transparent;cursor:pointer}
  .nav-toggle span{display:block;width:15px;height:1px;background:currentColor;transition:transform .25s ease,opacity .2s ease}
  .nav-toggle[aria-expanded="true"] span:first-child{transform:translateY(6px) rotate(45deg)}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .nav-toggle[aria-expanded="true"] span:last-child{transform:translateY(-6px) rotate(-45deg)}
  .site-header nav{position:absolute;top:100%;right:0;left:0;display:grid;gap:0;margin:0;padding:9px 20px 15px;background:#ad8a50;box-shadow:0 15px 24px rgba(28,17,12,.2);visibility:hidden;opacity:0;transform:translateY(-10px);transition:opacity .2s ease,transform .25s ease,visibility .25s}
  .site-header nav.is-open{visibility:visible;opacity:1;transform:translateY(0)}
  .site-header nav a{padding:13px 0 12px;border-bottom:1px solid rgba(255,255,255,.23);font-size:11px;text-align:right}
  .site-header nav a:nth-child(n+4){display:block}
  .site-header nav a::after{right:0;bottom:7px;left:auto;width:42px}
}

@media (prefers-reduced-motion:reduce){.site-header nav,.site-header nav a::after,.nav-toggle span,.artist-link::after{transition:none}}

/* Optional Customizer spacing values are additive, preserving the approved layout at zero. */
.site-header{margin-bottom:var(--tkp-section-margin,0)}
.site-nav-wrap{padding-block:var(--tkp-section-padding,0)}
.hero{padding-block:var(--tkp-section-padding,0);margin-bottom:var(--tkp-section-margin,0)}
.idea{padding-top:calc(80px + var(--tkp-section-padding,0));padding-bottom:calc(80px + var(--tkp-section-padding,0));margin-bottom:var(--tkp-section-margin,0)}
.documentary,.story,.mosaic,.artists{padding-top:calc(112px + var(--tkp-section-padding,0));padding-bottom:calc(112px + var(--tkp-section-padding,0));margin-bottom:var(--tkp-section-margin,0)}
.conversation{padding-top:calc(124px + var(--tkp-section-padding,0));padding-bottom:calc(122px + var(--tkp-section-padding,0));margin-bottom:var(--tkp-section-margin,0)}
.opportunities{padding-top:calc(112px + var(--tkp-section-padding,0));padding-bottom:var(--tkp-section-padding,0);margin-bottom:var(--tkp-section-margin,0)}
.site-footer{margin-bottom:var(--tkp-section-margin,0)}
.site-footer__content{grid-template-columns:1fr auto 1fr;min-height:128px;padding:calc(28px + var(--tkp-section-padding,0)) clamp(24px,5vw,72px)}
.site-footer__artist-link{color:var(--paper);font:400 26px/1.05 var(--serif);letter-spacing:.025em;text-decoration:none;transition:color .2s ease}.site-footer__artist-link--brett{text-align:left}.site-footer__artist-link--kari{text-align:right}.site-footer__artist-link span{display:block;margin-top:7px;color:rgba(251,248,241,.58);font:400 11px/1 var(--display);letter-spacing:.08em;text-transform:uppercase}.site-footer__artist-link:hover,.site-footer__artist-link:focus-visible{color:var(--gold)}
.site-footer__meta{display:flex;max-width:1152px;margin:0 auto;padding:18px clamp(24px,5vw,72px) 25px;border-top:1px solid rgba(173,138,80,.35);align-items:center;justify-content:center;gap:12px;color:rgba(251,248,241,.58);font-size:11px;line-height:1.35;text-align:center}.site-footer__meta a{color:inherit;text-underline-offset:4px;transition:color .2s ease}.site-footer__meta a:hover,.site-footer__meta a:focus-visible{color:var(--gold)}.site-footer__meta span+span::before,.site-footer__meta a+span::before,.site-footer__meta span+a::before{margin-right:12px;color:rgba(251,248,241,.28);content:"•"}
.back-to-top{position:fixed;right:20px;bottom:20px;z-index:25;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 15px;border:1px solid rgba(255,255,255,.66);border-radius:999px;color:#fff;background:rgba(37,23,17,.9);box-shadow:0 8px 25px rgba(37,23,17,.24);font:400 12px/1 var(--serif);letter-spacing:.04em;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease,background .2s ease;cursor:pointer}
.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover,.back-to-top:focus-visible{background:var(--gold)}.back-to-top span[aria-hidden]{font-size:18px}

@media (max-width:800px){
  .site-header nav{position:fixed;inset:0;display:grid;grid-template-columns:1fr;align-content:center;gap:0;width:100%;min-height:100dvh;padding:118px 34px 46px;background:#ad8a50;box-shadow:none;visibility:hidden;opacity:0;pointer-events:none;transform:scale(.985);transition:opacity .28s ease,transform .36s cubic-bezier(.2,.7,.2,1),visibility .36s}
  .site-header nav.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:none}
  .site-header .brand,.site-header .nav-toggle{z-index:61}
  .site-header nav a,.site-header nav a:nth-child(n+4){display:flex;min-height:54px;align-items:center;justify-content:center;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.3);font:400 clamp(25px,7.5vw,34px)/1 var(--display);letter-spacing:.035em;text-align:center}
  .site-header nav a::after{right:50%;bottom:7px;left:auto;width:62px;transform:translateX(50%) scaleX(0)}
  .site-header nav a:hover::after,.site-header nav a:focus-visible::after{transform:translateX(50%) scaleX(1)}
  .back-to-top{right:14px;bottom:14px;padding:0 13px;font-size:11px}
  .idea,.documentary,.story,.mosaic,.artists,.conversation,.opportunities{padding-top:calc(75px + var(--tkp-section-padding,0));padding-bottom:calc(75px + var(--tkp-section-padding,0))}
  .opportunities{padding-bottom:var(--tkp-section-padding,0)}
  .site-footer__content{grid-template-columns:1fr auto 1fr;gap:12px;padding:30px 24px}.site-footer__logo{width:128px}.site-footer__artist-link{font-size:19px}.site-footer__artist-link span{font-size:9px}.site-footer__meta{flex-wrap:wrap;gap:7px;padding:17px 24px 24px;font-size:10px}.site-footer__meta span+span::before,.site-footer__meta a+span::before,.site-footer__meta span+a::before{margin-right:7px}
}

@media (prefers-reduced-motion:reduce){.back-to-top{transition:none}.site-header nav{transition:none}}

/* Keep the footer centred and safely inside the viewport at every desktop width. */
.site-footer__content,.site-footer__meta{width:100%;box-sizing:border-box}
.back-to-top.is-near-footer{opacity:0;pointer-events:none;transform:translateY(12px)}
.site-nav-wrap{box-sizing:border-box;border-top:var(--tkp-nav-rule-size,0px) solid var(--tkp-nav-rule-colour,#f4eee2);border-bottom:var(--tkp-nav-rule-size,0px) solid var(--tkp-nav-rule-colour,#f4eee2)}
.motion-ready .footer-feet-reveal{clip-path:inset(0 0 100% 0);opacity:0;transform:translateY(26px);transition:clip-path .9s cubic-bezier(.2,.7,.2,1),opacity .45s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.motion-ready .footer-feet-reveal.is-visible{clip-path:inset(0);opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.motion-ready .footer-feet-reveal{clip-path:none;opacity:1;transform:none;transition:none}}
@media (min-width:801px) and (max-width:1100px){
  .site-footer__content{gap:18px;padding-inline:clamp(24px,4vw,44px)}
  .site-footer__artist-link{font-size:clamp(21px,2.5vw,26px)}
  .site-footer__logo{width:clamp(128px,15vw,164px)}
}

/* Canonical spacing: defaults must be lengths, otherwise CSS drops the whole
   calc() rule when no Customizer value has been saved yet. */
.site-header{margin-bottom:var(--tkp-section-margin,0px)}
.site-nav-wrap{padding-block:var(--tkp-section-padding,0px)}
.hero{padding-block:var(--tkp-section-padding,0px);margin-bottom:var(--tkp-section-margin,0px)}
.idea{padding-top:calc(80px + var(--tkp-section-padding,0px));padding-bottom:calc(80px + var(--tkp-section-padding,0px));margin-bottom:var(--tkp-section-margin,0px)}
.documentary,.story,.mosaic,.artists{padding-top:calc(112px + var(--tkp-section-padding,0px));padding-bottom:calc(112px + var(--tkp-section-padding,0px));margin-bottom:var(--tkp-section-margin,0px)}
.conversation{padding-top:calc(124px + var(--tkp-section-padding,0px));padding-bottom:calc(122px + var(--tkp-section-padding,0px));margin-bottom:var(--tkp-section-margin,0px)}
.opportunities{padding-top:calc(112px + var(--tkp-section-padding,0px));padding-bottom:var(--tkp-section-padding,0px);margin-bottom:var(--tkp-section-margin,0px)}

/* Keep section headings clear of the sticky navigation when linked directly. */
.idea,.documentary,.story,.mosaic,.artists,.conversation,.opportunities{scroll-margin-top:148px}

/* A more deliberate footer hierarchy: artists first, quiet credits second. */
.site-footer{margin-top:64px}
.site-footer__content{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);min-height:156px;gap:clamp(24px,4vw,64px);padding:calc(36px + var(--tkp-section-padding,0px)) clamp(28px,6vw,88px);align-items:center}
.site-footer__logo{width:clamp(138px,14vw,172px)}
.site-footer__artist-link{font-size:clamp(23px,2.2vw,28px);line-height:1.05}
.site-footer__artist-link span{margin-top:8px;font-size:10px;letter-spacing:.14em}
.site-footer__meta{max-width:none;padding:17px clamp(28px,6vw,88px) 28px;gap:10px;font-size:10px;letter-spacing:.01em}
@media (max-width:800px){
  .idea,.documentary,.story,.mosaic,.artists,.conversation,.opportunities{padding-top:calc(75px + var(--tkp-section-padding,0px));padding-bottom:calc(75px + var(--tkp-section-padding,0px))}
  .opportunities{padding-bottom:var(--tkp-section-padding,0px)}
  .idea,.documentary,.story,.mosaic,.artists,.conversation,.opportunities{scroll-margin-top:96px}
  .site-footer{margin-top:44px}
  .site-footer__content{min-height:142px;gap:16px;padding:32px 24px}
  .site-footer__logo{width:124px}
}

/* ==========================================================================
   4. Original layout-safety stylesheet (mosaic explorer frame, gallery grid, video frames, phone tour)
   ========================================================================== */
/* Keep the video hero within the visible area below the site header. */
.hero--video {
	height: calc(100vh - var(--tkp-site-header-height, 210px));
	height: calc(100svh - var(--tkp-site-header-height, 210px));
	min-height: 0 !important;
}

/* The marker coordinate system and detail panel use the artwork's exact frame. */
.mosaic__stage {
	position: relative;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
}
.mosaic__stage figure {
	position: relative;
	min-width: 0;
	aspect-ratio: auto !important;
}
.mosaic-artwork-frame {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 1;
	overflow: hidden;
}
.mosaic-artwork-frame > img {
	display: block;
	width: 100%;
	height: 100%;
	 aspect-ratio: 1;
	object-fit: cover;
}
.mosaic__stage .mosaic-marker {
	z-index: 4;
}
.mosaic__stage .marker-one { left: 57% !important; top: 22% !important; }
.mosaic__stage .marker-two { left: 74% !important; top: 43% !important; }
.mosaic__stage .marker-three { left: 43% !important; top: 75% !important; }
.mosaic__stage .marker-four { left: 22% !important; top: 56% !important; }
.mosaic-detail {
	box-sizing: border-box;
	min-width: 0;
	width: 100%;
	height: var(--tkp-artwork-height, auto) !important;
	padding: clamp(20px, 3vw, 44px);
	overflow: auto !important;
	overscroll-behavior: contain;
}
.mosaic-detail > :last-child {
	margin-bottom: 0;
}

/* Preserve six distinct gallery items in a responsive, even grid. */
.artists-gallery {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-flow: row;
	grid-auto-rows: clamp(180px, 28vw, 360px);
	align-items: stretch;
	max-width: min(100%, 1320px);
	margin-inline: auto;
	gap: 12px;
}
.artists-gallery > div {
	display: contents;
}
.artists-gallery [data-gallery-item] {
	min-width: 0;
	height: 100%;
	overflow: hidden;
}
.artists-gallery [data-gallery-item] img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Vimeo players fill more of large displays without adding a second brown panel. */
.video-shell,
.video-shell__placeholder {
	background: transparent !important;
}
.video-shell,
.video-shell iframe {
	width: min(100%, 1320px);
}

/* Keep both homepage film players in the same natural widescreen frame. */
#documentary .video-shell,
#conversation .video-shell {
	position: relative !important;
	width: min(100%, 1320px) !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	aspect-ratio: 16 / 9 !important;
	overflow: hidden !important;
}
#documentary .video-shell iframe,
#conversation .video-shell iframe {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
	border: 0 !important;
}


/* Give the closing copy a clear rhythm and preserve its outer breathing room. */
.opportunities__closing {
	display: grid;
	gap: 22px;
	line-height: 1.5;
}
.opportunities__closing p {
	margin: 0;
}
.form-note[data-state="sent"] { color: #365c33; }
.form-note[data-state="failed"],
.form-note[data-state="invalid"] { color: #8c2d21; }

/* The mobile artwork stays visible while each detail is revealed by scrolling. */
.mosaic-mobile-tour,
.mosaic-mobile-tour__canvas {
	display: contents;
}
.mosaic-mobile-tour__steps {
	display: none;
}

@media (max-width: 800px) {
	.hero,
	.hero--video {
		height: calc(100svh - var(--tkp-site-header-height, 62px));
		min-height: 0;
	}
	.mosaic__stage {
		display: grid;
		grid-template-columns: minmax(0, 1fr) !important;
		align-items: initial;
		gap: 0;
	}
	.mosaic__stage figure {
		width: min(100%, 42svh);
		aspect-ratio: auto;
		margin-inline: auto;
	}
	.mosaic-detail {
		position: relative;
		z-index: 2;
		display: grid;
		grid-template-columns: minmax(82px, .42fr) minmax(0, 1fr);
		grid-template-rows: auto auto;
		align-items: center;
		gap: 4px 14px;
		width: 100%;
		min-height: 0 !important;
		height: auto !important;
		padding: 22px 20px calc(30px + env(safe-area-inset-bottom, 0px)) !important;
		overflow: visible !important;
	}
	.mosaic-detail img {
		grid-column: 1;
		grid-row: 1 / 3;
		width: 100%;
		height: auto;
		max-height: 92px;
		min-height: 0;
		aspect-ratio: 1.35 !important;
		object-fit: cover;
	}
	.mosaic-detail .detail-count {
		grid-column: 2;
		align-self: end;
		margin: 0;
		color: #ad8a50;
		font-size: 10px;
		letter-spacing: .12em;
	}
	.mosaic-detail .detail-caption {
		grid-column: 2;
		align-self: start;
		margin: 0;
		font-size: clamp(15px, 4.2vw, 20px);
		line-height: 1.3;
		overflow-wrap: anywhere;
	}
	.mosaic-detail p,
	.mosaic-detail h3 {
		overflow-wrap: anywhere;
	}
	.artists-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-auto-rows: 46vw;
		gap: 8px;
	}
	#documentary .video-shell,
	#conversation .video-shell { min-height: 0 !important; }
	.mosaic-mobile-tour {
		display: block;
	}
.mosaic-mobile-tour__canvas {
		position: sticky;
		top: calc(var(--tkp-site-header-height, 62px) + 8px);
		z-index: 5;
		display: block;
	background: #251711;
	}
.mosaic-mobile-tour__steps {
 position: relative;
 z-index: 6;
 display: grid;
 gap: 0;
 background: transparent;
}
.mosaic-mobile-tour__canvas .mosaic-detail,
.mosaic-mobile-tour__canvas .detail-explainer {
	 display: none !important;
}
.mosaic-mobile-tour__step {
		display: flex;
		min-height: 68vh;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		gap: 12px;
		width: 100%;
		padding: 30px 24px calc(30px + env(safe-area-inset-bottom, 0px));
		border: 0;
		border-top: 1px solid rgba(247, 243, 234, .2);
 background: linear-gradient(180deg, rgba(37, 23, 17, .08) 0%, rgba(37, 23, 17, .12) 48%, #251711 100%);
		color: #f7f3ea;
		text-align: left;
		cursor: pointer;
	}
	.mosaic-mobile-tour__image {
		display: block;
		width: min(100%, 420px);
		max-height: 28svh;
		aspect-ratio: 1.45;
		object-fit: cover;
	}
	.mosaic-mobile-tour__step.is-active {
		border-top-color: #ad8a50;
	}
.mosaic-mobile-tour__number {
	color: #ad8a50;
	font: 500 clamp(28px, 8vw, 48px) / 1 var(--tkp-studio-body-font, "Cormorant Garamond", serif);
}
.mosaic-mobile-tour__caption {
	font: 400 clamp(22px, 6vw, 34px) / 1.15 var(--tkp-studio-heading-font, "Poiret One", sans-serif);
}
.mosaic-mobile-tour__hint {
	color: rgba(247, 243, 234, .7);
	font: 500 10px / 1.3 var(--tkp-studio-body-font, "Cormorant Garamond", serif);
		letter-spacing: .12em;
		text-transform: uppercase;
	}
	.mosaic-mobile-tour__step:focus-visible {
		outline: 2px solid #ad8a50;
		outline-offset: -4px;
	}
}

/* ==========================================================================
   5. Section colours and sizes. Change a colour here to change it everywhere
   ========================================================================== */
:root{--tkp-header_background:#ad8a50;--tkp-header_text:#fbf8f1;--tkp-hero_overlay:#241610;--tkp-idea_background:#fbf8f1;--tkp-idea_text:#2a1c15;--tkp-documentary_background:#251711;--tkp-documentary_text:#fbf8f1;--tkp-story_background:#fbf8f1;--tkp-story_text:#2a1c15;--tkp-mosaic_background:#f4eee2;--tkp-mosaic_text:#2a1c15;--tkp-mosaic_detail_background:#251711;--tkp-artists_background:#fbf8f1;--tkp-artists_text:#2a1c15;--tkp-conversation_background:#251711;--tkp-conversation_text:#fbf8f1;--tkp-opportunities_background:#f4eee2;--tkp-opportunities_text:#2a1c15;--tkp-footer_background:#251711;--tkp-footer_text:#fbf8f1;--tkp-hero-overlay-opacity:13%;--tkp-idea-title-size:29px;--tkp-idea-lead-size:18px;--tkp-detail-caption-size:32px;}
:root{--tkp-header-background:#ad8a50;--tkp-header-text:#fbf8f1;--tkp-idea-background:#fbf8f1;--tkp-idea-text:#2a1c15;--tkp-documentary-background:#251711;--tkp-documentary-text:#fbf8f1;--tkp-story-background:#fbf8f1;--tkp-story-text:#2a1c15;--tkp-mosaic-background:#f4eee2;--tkp-mosaic-text:#2a1c15;--tkp-artists-background:#fbf8f1;--tkp-artists-text:#2a1c15;--tkp-conversation-background:#251711;--tkp-conversation-text:#fbf8f1;--tkp-opportunities-background:#f4eee2;--tkp-opportunities-text:#2a1c15;--tkp-footer-background:#251711;--tkp-footer-text:#fbf8f1;--tkp-nav-rule-size:0px;--tkp-nav-rule-colour:#f4eee2;}

/* ==========================================================================
   6. Original spacing settings (all zero)
   ========================================================================== */
.site-header{--tkp-section-padding:0px;--tkp-section-margin:0px;}.hero{--tkp-section-padding:0px;--tkp-section-margin:0px;}.idea{--tkp-section-padding:0px;--tkp-section-margin:0px;}.documentary{--tkp-section-padding:0px;--tkp-section-margin:0px;}.story{--tkp-section-padding:0px;--tkp-section-margin:0px;}.mosaic{--tkp-section-padding:0px;--tkp-section-margin:0px;}.artists{--tkp-section-padding:0px;--tkp-section-margin:0px;}.conversation{--tkp-section-padding:0px;--tkp-section-margin:0px;}.opportunities{--tkp-section-padding:0px;--tkp-section-margin:0px;}.site-footer{--tkp-section-padding:0px;--tkp-section-margin:0px;}

/* ==========================================================================
   7. Final layout overrides the original added in the page head
   ========================================================================== */
:root{}html{--tkp-site-header-height:210px}.hero{height:calc(100svh - var(--tkp-site-header-height));min-height:420px}.hero__video{object-fit:cover}.mosaic__stage{align-items:start}.mosaic__stage figure{display:block;align-self:start;aspect-ratio:1}.mosaic__stage figure>img{width:100%;height:100%;aspect-ratio:1;object-fit:cover}.mosaic-detail{height:var(--tkp-artwork-height,auto);min-height:0;align-self:start;overflow:hidden}.mosaic-detail img{aspect-ratio:1.35!important}.mosaic-marker{transform:translate(-50%,-50%)}.mosaic-marker:hover,.mosaic-marker:focus-visible,.mosaic-marker.is-active{transform:translate(-50%,-50%) scale(1.12)}.video-shell,.video-shell__placeholder{background:transparent!important}.video-shell,.video-shell iframe{width:min(100%,1320px)}#documentary .video-shell,#conversation .video-shell{position:relative!important;aspect-ratio:16/9!important;height:auto!important;min-height:0!important;padding:0!important;overflow:hidden!important}#documentary .video-shell iframe,#conversation .video-shell iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;border:0!important}.opportunities__closing{display:grid;gap:22px;line-height:1.5}.opportunities__closing p{margin:0}.form-note[data-state="sent"]{color:#365c33}.form-note[data-state="failed"],.form-note[data-state="invalid"]{color:#8c2d21}@media(max-width:800px){html{--tkp-site-header-height:62px}.hero,.hero--video{height:calc(100svh - var(--tkp-site-header-height));min-height:0}.mosaic__stage{align-items:initial}.mosaic__stage figure{aspect-ratio:1}.mosaic-detail{height:auto}}#opportunities{box-sizing:border-box!important;padding-bottom:64px!important;margin-bottom:0!important}.site-footer{margin-top:0!important}
.mosaic__stage{position:relative}.mosaic__stage figure{min-width:0}.mosaic-detail{box-sizing:border-box;min-width:0;padding:clamp(20px,3vw,44px)}.mosaic-detail>*:last-child{margin-bottom:0}@media(max-width:800px){.mosaic__stage{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.mosaic-detail{position:relative;z-index:2;width:100%;min-height:0;padding:28px 24px;overflow:visible}.mosaic-detail p,.mosaic-detail h3{overflow-wrap:anywhere}.mosaic-marker{z-index:4}}

/* ==========================================================================
   8. Block adaptations (new). The original page was hand-written HTML; these
   rules make the WordPress block versions of the same elements look identical.
   ========================================================================== */

/* Header and footer template parts must not get in the way of the sticky header. */
.wp-block-template-part{display:contents}

/* Image blocks wrap the picture in a <figure>; the original had the bare image. */
figure.wp-block-image{margin-top:0;margin-bottom:0}
figure.wp-block-image img{display:block;width:100%;height:auto}
figure.artists__hero{aspect-ratio:auto}
.artists__hero img{aspect-ratio:1.78;object-fit:cover;object-position:center}
.opportunities__image img{max-height:680px;object-fit:cover;object-position:center}

/* Swirl ornament before each mosaic fact (was an <img> in the original). */
.mosaic-facts li::before{content:"";display:inline-block;width:21px;height:21px;flex:0 0 21px;background:url("../images/spiral.svg") center/contain no-repeat}
.mosaic-facts li:hover::before{filter:invert(1)}

/* Artist roles: a list with swirls between the words (was one paragraph with images). */
.artists__bios .roles{display:flex;align-items:center;gap:8px;margin:0 0 34px;padding:0;list-style:none;font-size:18px;font-style:italic}
.artists__bios .roles li{display:flex;align-items:center;gap:8px}
.artists__bios .roles li+li::before{content:"";display:inline-block;width:21px;height:21px;flex:0 0 21px;background:url("../images/spiral.svg") center/contain no-repeat}

/* Artist name links (the original's .artist-link). */
.artists__bios h3 a{position:relative;color:inherit;text-decoration:none}
.artists__bios h3 a::after{position:absolute;right:0;bottom:-5px;left:0;height:1px;content:"";background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform .25s ease}
.artists__bios h3 a:hover::after,.artists__bios h3 a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.artists__bios h3 a:focus-visible{outline:1px solid var(--gold);outline-offset:6px}
@media (prefers-reduced-motion:reduce){.artists__bios h3 a::after{transition:none}}

/* "Read the ABC article": the paragraph carries the original link styling. */
p.abc-link{margin-bottom:0}
p.abc-link a{color:inherit;text-decoration:none}

/* ==========================================================================
   9. Phase 2 additions (new): enquiry wording and form, updates sign-up band.
   Built from the existing styles: Poiret One headings, Cormorant text,
   underline-only inputs, dark buttons that turn gold on hover.
   ========================================================================== */

/* Opportunities: the new "Interested in The Kissing Project?" block. */
.opportunities h3.enquiry-title{max-width:620px;margin:40px 0 12px;font-size:25px;line-height:1.25}
.enquiry-intro{max-width:620px;margin:0 0 12px;font-size:20px;line-height:1.45}
.enquiry-heading{max-width:620px;margin:30px 0 0;color:var(--gold);font-size:13px;letter-spacing:.16em;text-transform:uppercase}

/* Enquiry form: drop-down styled like the underlined inputs; text button. */
.enquiry-form select{width:100%;min-height:39px;padding:0 24px 6px 0;border:0;border-bottom:1px solid currentColor;border-radius:0;color:inherit;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232a1c15' stroke-width='1.3'/%3E%3C/svg%3E") right 4px center/12px 8px no-repeat;font:inherit;-webkit-appearance:none;appearance:none;outline-offset:4px;cursor:pointer}
.enquiry-form button,.signup-form button{justify-self:end;width:auto;height:auto;min-height:44px;padding:0 24px;border:0;color:var(--paper);background:var(--dark);font:400 13px/1 var(--serif);letter-spacing:.16em;cursor:pointer;transition:background .2s ease,transform .2s ease}
.enquiry-form button:hover,.enquiry-form button:focus-visible,.signup-form button:hover,.signup-form button:focus-visible{background:var(--gold);transform:translateX(3px)}

/* Updates sign-up band, between Opportunities and the footer. */
.signup{display:flex;flex-direction:column;align-items:center;padding-top:96px;padding-bottom:40px;color:var(--ink);background:var(--paper);text-align:center;scroll-margin-top:148px}
.signup h2{max-width:720px;margin:0;font:400 var(--tkp-idea-title-size)/1.25 var(--serif)}
.signup .lead{max-width:620px;margin:13px 0 22px;font:italic var(--tkp-idea-lead-size)/1.5 var(--serif)}
.signup p:not(.lead):not(.form-note){max-width:620px;margin:0 0 12px;font-size:20px;line-height:1.45}
.signup-form{display:grid;gap:20px;width:min(100%,900px);margin-top:26px;text-align:left}
.signup-form__fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 28px}
.signup-form label{display:grid;gap:3px;font-size:18px}
.signup-form__fields input{width:100%;min-height:39px;padding:0 0 6px;border:0;border-bottom:1px solid currentColor;border-radius:0;color:inherit;background:transparent;outline-offset:4px}
.signup-form label.signup-form__consent{display:flex;align-items:flex-start;gap:10px;font-size:18px;line-height:1.35;cursor:pointer}
.signup-form__consent input{flex:0 0 auto;width:18px;height:18px;margin:3px 0 0;accent-color:var(--dark)}
.signup-form button{justify-self:center}
.signup-form .form-note{text-align:center}
.signup .form-note[data-state="sent"]{color:#365c33}
.signup .form-note[data-state="failed"],.signup .form-note[data-state="invalid"]{color:#8c2d21}

@media (max-width:800px){
  .opportunities h3.enquiry-title{margin-top:32px;font-size:22px}
  .enquiry-intro{font-size:19px}
  .signup{padding:75px 24px 32px;scroll-margin-top:96px}
  .signup h2{font-size:calc(var(--tkp-idea-title-size) - 3px)}
  .signup .lead{font-size:calc(var(--tkp-idea-lead-size) - 1px)}
  .signup p:not(.lead):not(.form-note){font-size:19px}
  .signup-form__fields{grid-template-columns:1fr}
}

/* ==========================================================================
   10. Opportunities as two options (Kari, 3 Oct 2026): intro on the left,
   "Make an enquiry" / "Join the Updates" buttons on the right, each opening
   its form. Without JavaScript the two show as simple fold-outs.
   ========================================================================== */
.opportunities__intro .section-label{margin:0 0 30px;font-size:40px}
.opportunities__intro h2{margin-bottom:15px}
.opportunities__options{max-width:620px}
.opportunities__tabs{display:flex;flex-wrap:wrap;gap:12px}
.opportunities__tabs button{min-height:46px;padding:0 22px;border:1px solid var(--dark);color:var(--dark);background:transparent;font:400 13px/1 var(--serif);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}
.opportunities__tabs button:hover,.opportunities__tabs button:focus-visible{border-color:var(--gold);color:var(--gold)}
.opportunities__tabs button[aria-expanded="true"]{border-color:var(--dark);color:var(--paper);background:var(--dark)}
.opportunity{margin:0}
.opportunity > summary{display:inline-block;margin:0 12px 12px 0;padding:14px 22px;border:1px solid var(--dark);font-size:13px;letter-spacing:.16em;text-transform:uppercase;list-style:none;cursor:pointer}
.opportunity > summary::-webkit-details-marker{display:none}
.opportunities__options.is-enhanced .opportunity > summary{display:none}
.opportunity[open]{padding-top:8px}
.opportunity .enquiry-title:first-of-type{margin-top:22px}
.enquiry-lead{max-width:620px;margin:0 0 14px;font:italic var(--tkp-idea-lead-size)/1.5 var(--serif)}
.opportunity .signup-form{width:100%;margin-top:18px}
.opportunity .signup-form__fields{grid-template-columns:1fr;gap:16px}
.opportunity .signup-form button{justify-self:end}
.opportunity .signup-form .form-note{text-align:left}
.signup-form .form-note[data-state="sent"]{color:#365c33}
.signup-form .form-note[data-state="failed"],.signup-form .form-note[data-state="invalid"]{color:#8c2d21}
@media (max-width:800px){
  .opportunities__intro .section-label{margin-bottom:22px;font-size:29px}
  .opportunities__tabs button{flex:1 1 auto}
}
