/* Conference-specific composition. Global navigation and brand styles belong to the site shell. */
.conference-v7{--conf7-head:104px;--conf7-nav:64px;background:var(--paper)}
.conference-v7 #main{overflow:visible}
.conference-v7 h1,.conference-v7 h2,.conference-v7 h3{overflow-wrap:normal;text-wrap:balance}
.conference-v7 .conf7-opening{display:grid;grid-template-columns:1.12fr 1fr;min-height:calc(100svh - var(--conf7-head));background:#e5ded0}
.conf7-arrival-image{position:relative;min-width:0;min-height:650px;overflow:hidden;background:#354336}
.conf7-arrival-image>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 48%}
.conf7-arrival-image::after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(0deg,#0008,transparent);pointer-events:none}
.conference-v7 .conf7-arrival-image>figcaption{position:absolute;bottom:25px;left:var(--gutter);z-index:1;color:#fff;font-size:12px;letter-spacing:.06em;padding:0}
.conf7-arrival-copy{padding:44px max(var(--gutter),4vw) 54px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.conf7-arrival-copy>.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:24px}
.conf7-facts{display:flex;flex-wrap:wrap;list-style:none;gap:7px 20px;padding:0;margin:0 0 34px;width:100%;border-top:1px solid #b4ab9d;border-bottom:1px solid #b4ab9d}
.conf7-facts>li{font-size:11px;line-height:1.6;padding:12px 0}
.conference-v7 .conf7-arrival-copy>h1{font-size:clamp(56px,4.7vw,91px);line-height:.98;letter-spacing:-.045em;max-width:10ch;margin:0 0 28px}
.conf7-arrival-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;max-width:470px;margin:0 0 22px}
.conf7-arrival-copy>p.conf7-availability{font-size:12px;line-height:1.6;max-width:360px;margin-bottom:24px}
.conf7-arrival-copy>.button{font-size:12px;gap:24px;max-width:100%}
.conf7-local-nav{position:sticky;top:var(--conf7-head);z-index:12;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:var(--conf7-nav);padding:14px var(--gutter);border-bottom:1px solid var(--line);background:var(--paper)}
.conf7-local-nav>span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.conf7-local-nav>div{display:flex;align-items:center;gap:35px}
.conf7-local-nav a{display:flex;align-items:center;min-height:44px;font-size:12px;line-height:1.5;border-bottom:1px solid transparent;padding:5px 0}
.conf7-local-nav a:hover,.conf7-local-nav a:focus-visible,.conf7-local-nav a[aria-current=location]{border-color:currentColor}
.conf7-invitation,.conf7-section-heading,.conf7-planning{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:95px var(--gutter)}
.conf7-invitation{background:var(--green);color:var(--paper);align-items:center}
.conf7-invitation h2{max-width:550px;font-size:clamp(44px,4.3vw,78px);line-height:1.02}
.conf7-invitation .eyebrow{font-size:10px;color:#d6d9c8}
.conf7-invitation>div>p:not(.eyebrow){font-size:17px;line-height:1.85;max-width:580px;margin:0}
.conf7-invitation>div>p.conf7-archive-note{font-size:11px;line-height:1.8;color:#d6d9c8;margin-top:25px;max-width:430px}
.conf7-programme{padding-bottom:70px;background:var(--paper);scroll-margin-top:calc(var(--conf7-head) + var(--conf7-nav) + 24px)}
.conf7-section-heading{padding-bottom:50px;align-items:end}
.conf7-section-heading h2{font-size:clamp(42px,4.1vw,76px);line-height:1.06;max-width:650px}
.conf7-section-heading>p{font-size:16px;line-height:1.85;max-width:460px;margin:0}
.conf7-section-heading .eyebrow{font-size:10px;margin-bottom:23px}
.conf7-programme-layout{margin:0 var(--gutter)}
.conf7-visual{display:none}
.conf7-chapters{list-style:none;padding:0;margin:0}
.conf7-chapter{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding:65px 0;border-top:1px solid var(--line)}
.conf7-chapter-copy{max-width:500px}
.conf7-chapter-index,.conf7-detail-index{display:block;font-size:12px;letter-spacing:.08em;margin-bottom:27px}
.conf7-chapter h3{font-size:clamp(36px,3.7vw,66px);line-height:1.06;margin:0 0 26px;max-width:12ch}
.conf7-chapter p{font-size:17px;line-height:1.85;max-width:440px;margin:0}
.conf7-inline-scene>img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 48%}
.conf7-inline-scene>figcaption{font-size:11px;line-height:1.7;padding-top:13px;max-width:450px}
.conf7-included{background:#e4ddce;padding-bottom:75px;scroll-margin-top:calc(var(--conf7-head) + var(--conf7-nav) + 24px)}
.conf7-inclusions{display:grid;grid-template-columns:repeat(3,1fr);gap:4.5vw;margin:0 var(--gutter)}
.conf7-inclusions>article{border-top:1px solid #afa696;padding-top:24px;min-width:0}
.conf7-detail-index{margin-bottom:38px;font-size:11px}
.conf7-inclusions h3{font-size:clamp(29px,2.8vw,45px);line-height:1.08;margin:0 0 24px;max-width:15ch}
.conf7-inclusions p{font-size:15px;line-height:1.85;margin:0}
.conf7-places-note{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:65px var(--gutter) 0;padding-top:24px;border-top:1px solid #afa696;font-size:12px}
.conf7-places-note .text-link{font-size:12px}
.conf7-planning{scroll-margin-top:calc(var(--conf7-head) + var(--conf7-nav) + 24px);align-items:start;background:#fff}
.conf7-planning h2{font-size:clamp(44px,4.2vw,76px);line-height:1.05;max-width:11ch}
.conf7-planning .eyebrow{font-size:10px}
.conf7-planning>div>p{font-size:16px;line-height:1.85;max-width:560px}
.conf7-planning>div>p.conf7-booking-note{font-size:12px;line-height:1.8;border-top:1px solid var(--line);padding-top:22px;margin-top:28px;color:var(--muted)}
.conf7-planning .button{display:flex;max-width:max-content;font-size:13px;margin-top:28px;margin-bottom:17px}
.conf7-planning .text-link{font-size:12px}

@media(min-width:1001px) and (min-height:700px){
  .conf7-motion .conf7-programme-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
  .conf7-motion .conf7-visual{display:block;grid-column:2;grid-row:1;position:sticky;top:calc(var(--conf7-head) + var(--conf7-nav) + 30px);height:calc(100svh - var(--conf7-head) - var(--conf7-nav) - 75px);max-height:780px;min-height:380px}
  .conf7-motion .conf7-chapters{grid-column:1;grid-row:1}
  .conf7-motion .conf7-chapter{display:flex;align-items:center;min-height:calc(82svh - var(--conf7-head));padding:70px 0}
  .conf7-motion .conf7-chapter:last-child{min-height:calc(100svh - var(--conf7-head) - var(--conf7-nav));padding-bottom:120px}
  .conf7-motion .conf7-inline-scene{display:none}
}
.conf7-scene-label{display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:11px;line-height:1.6;padding:0 0 15px;border-bottom:1px solid var(--line);margin-bottom:17px}
.conf7-scene-label>span:first-child{font-variant-numeric:tabular-nums}
.conf7-scene-stack{position:relative;height:calc(100% - 65px)}
.conf7-scene{position:absolute;inset:0;opacity:0;transition:opacity .4s ease;pointer-events:none}
.conf7-scene.is-current{opacity:1;pointer-events:auto}
.conf7-scene>img{width:100%;height:calc(100% - 52px);object-fit:cover;object-position:50% 48%}
.conf7-scene:nth-child(2)>img{object-position:50% 50%}
.conf7-scene:nth-child(3)>img{object-position:55% 58%}
.conference-v7 .conf7-scene>figcaption{font-size:10px;line-height:1.65;padding-top:12px;max-width:470px;color:var(--muted)}
.conf7-visual-track{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.conf7-visual-track>span{height:2px;background:var(--line);transition:background .2s}
.conf7-visual-track>span.is-current{background:var(--ink)}

@media(max-width:1200px){
  .conf7-arrival-copy{padding:36px var(--gutter) 40px}
  .conference-v7 .conf7-arrival-copy>h1{font-size:clamp(52px,5.4vw,72px)}
  .conf7-arrival-copy>p:not(.eyebrow){font-size:15px}
  .conf7-arrival-copy>p.conf7-availability{font-size:11px}
  .conf7-facts{gap:4px 18px;margin-bottom:27px}
  .conf7-facts>li{font-size:10px;padding:9px 0}
  .conf7-local-nav>div{gap:24px}
}
@media(max-width:1000px){
  .conference-v7{--conf7-head:92px;--conf7-nav:58px}
  .conference-v7 .conf7-opening{grid-template-columns:1fr 1fr;min-height:0}
  .conf7-arrival-image{min-height:650px}
  .conf7-arrival-copy{padding:38px var(--gutter)}
  .conference-v7 .conf7-arrival-copy>h1{font-size:clamp(45px,5.3vw,62px)}
  .conf7-facts{display:block;padding:7px 0}
  .conf7-facts>li{padding:3px 0;font-size:11px}
  .conf7-local-nav{position:relative;top:auto}
  .conf7-local-nav>span{display:none}
  .conf7-local-nav>div{justify-content:space-between;width:100%;gap:20px}
  .conf7-invitation,.conf7-section-heading,.conf7-planning{padding-top:70px;padding-bottom:70px;gap:6vw}
  .conf7-invitation h2,.conf7-section-heading h2,.conf7-planning h2{font-size:48px}
  .conf7-invitation>div>p:not(.eyebrow){font-size:16px}
  .conf7-invitation>div>p.conf7-archive-note{font-size:11px}
  .conf7-inclusions{grid-template-columns:1fr;gap:35px}
  .conf7-inclusions>article{display:grid;grid-template-columns:40px .8fr 1.2fr;gap:20px;align-items:start}
  .conf7-detail-index{margin:4px 0 0}
  .conf7-inclusions h3{font-size:31px;margin:0}
  .conf7-inclusions p{font-size:15px}
  .conf7-programme,.conf7-included,.conf7-planning{scroll-margin-top:calc(var(--conf7-head) + 25px)}
}
@media(max-width:1000px) and (min-height:700px){
  .conf7-motion .conf7-programme-layout{display:block}
  .conf7-motion .conf7-visual{display:block;position:sticky;top:var(--conf7-head);z-index:7;height:28svh;min-height:190px;max-height:300px;margin:0 calc(-1*var(--gutter));padding:8px var(--gutter) 15px;background:var(--paper);border-bottom:1px solid var(--line)}
  .conf7-motion .conf7-scene-label{font-size:9px;padding-bottom:5px;margin-bottom:6px;border:0}
  .conf7-motion .conf7-scene-stack{height:calc(100% - 24px)}
  .conf7-motion .conf7-scene>img{height:calc(100% - 27px);object-position:50% 48%}
  .conference-v7 .conf7-motion .conf7-scene>figcaption{font-size:8px;line-height:1.4;padding-top:5px;max-width:100%}
  .conf7-motion .conf7-visual-track{display:none}
  .conf7-motion .conf7-chapter{display:flex;align-items:center;min-height:60svh;padding:65px 0}
  .conf7-motion .conf7-chapter:last-child{padding-bottom:90px}
  .conf7-motion .conf7-inline-scene{display:none}
  .conf7-motion .conf7-chapter-copy{max-width:620px}
}
@media(max-width:700px){
  .conference-v7{--conf7-head:88px}
  .conference-v7 .conf7-opening{display:flex;flex-direction:column}
  .conf7-arrival-image{min-height:0;height:44svh;min-height:290px;max-height:450px}
  .conference-v7 .conf7-arrival-image>figcaption{bottom:19px;font-size:10px}
  .conf7-arrival-copy{padding:32px var(--gutter) 42px}
  .conf7-arrival-copy>.eyebrow{font-size:9px;margin-bottom:18px}
  .conf7-facts{display:flex;gap:4px 18px;padding:10px 0;margin-bottom:27px}
  .conf7-facts>li{font-size:10px;padding:0}
  .conference-v7 .conf7-arrival-copy>h1{font-size:clamp(48px,12vw,74px);line-height:1.02;max-width:11ch;margin-bottom:25px}
  .conf7-arrival-copy>p:not(.eyebrow){font-size:15px;line-height:1.85}
  .conf7-arrival-copy>p.conf7-availability{font-size:11px;line-height:1.65}
  .conf7-arrival-copy>.button{font-size:12px;width:100%;justify-content:space-between}
  .conf7-local-nav{padding-top:12px;padding-bottom:12px;min-height:60px}
  .conf7-local-nav>div{gap:15px}
  .conf7-local-nav a{font-size:11px;padding:8px 0}
  .conf7-invitation,.conf7-section-heading,.conf7-planning{grid-template-columns:1fr;gap:28px;padding:58px var(--gutter)}
  .conf7-invitation h2{font-size:44px;max-width:11ch}
  .conf7-invitation>div>p:not(.eyebrow){font-size:15px}
  .conf7-invitation>div>p.conf7-archive-note{font-size:10px;margin-top:22px}
  .conf7-section-heading{padding-bottom:30px}
  .conf7-section-heading h2{font-size:43px}
  .conf7-section-heading>p{font-size:15px}
  .conf7-section-heading .eyebrow{font-size:9px;margin-bottom:20px}
  .conf7-programme{padding-bottom:35px}
  .conf7-chapter{grid-template-columns:1fr;gap:30px;padding:42px 0}
  .conf7-chapter-index{font-size:10px;margin-bottom:22px}
  .conf7-chapter h3{font-size:clamp(36px,10vw,53px);margin-bottom:24px;max-width:12ch}
  .conf7-chapter p{font-size:15px;line-height:1.85}
  .conf7-inline-scene>figcaption{font-size:10px}
  .conf7-included{padding-bottom:50px}
  .conf7-inclusions{gap:32px}
  .conf7-inclusions>article{grid-template-columns:24px 1fr;gap:12px 16px;padding-top:21px}
  .conf7-detail-index{font-size:10px;margin-top:4px}
  .conf7-inclusions h3{font-size:32px;line-height:1.1;max-width:none}
  .conf7-inclusions p{grid-column:2;font-size:14px;line-height:1.85}
  .conf7-places-note{display:block;margin-top:42px;padding-top:20px;font-size:11px}
  .conf7-places-note>span{display:block;margin-bottom:16px}
  .conf7-places-note .text-link{font-size:11px}
  .conf7-planning h2{font-size:44px}
  .conf7-planning>div>p{font-size:15px}
  .conf7-planning>div>p.conf7-booking-note{font-size:11px}
  .conf7-planning .button{font-size:12px;max-width:100%;gap:22px}
  .conf7-planning .text-link{font-size:11px}
}
@media(max-width:360px){
  .conf7-local-nav>div{gap:11px}
  .conf7-local-nav a{font-size:10px}
  .conference-v7 .conf7-arrival-copy>h1{font-size:45px}
}
/* The complete illustrated programme remains available without animation. */
@media(prefers-reduced-motion:reduce){
  .conf7-motion .conf7-programme-layout{display:block}
  .conf7-motion .conf7-visual{display:none}
  .conf7-motion .conf7-chapter{display:grid;min-height:0;padding:55px 0;grid-template-columns:1fr 1fr;gap:6vw}
  .conf7-motion .conf7-inline-scene{display:block}
  .conf7-scene,.conf7-visual-track>span{transition:none}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){
  .conf7-motion .conf7-chapter{grid-template-columns:1fr;gap:28px;padding:42px 0}
}
@media print{
  .conf7-local-nav,.conf7-visual{display:none!important}
  .conf7-arrival-image{min-height:0;height:260px}
  .conference-v7 .conf7-opening{display:block}
  .conf7-arrival-copy,.conf7-invitation,.conf7-section-heading,.conf7-planning{padding:25px 0}
  .conf7-motion .conf7-programme-layout{display:block}
  .conf7-motion .conf7-chapter{display:grid;grid-template-columns:1fr 1fr;gap:25px;min-height:0;padding:25px 0;break-inside:avoid}
  .conf7-motion .conf7-inline-scene{display:block}
}
