/* Destination window: one photographic focal point, quiet utility surfaces. */
.home {
  --home-forest:#123d31;
  --home-mist:#ddf2e6;
  --home-caption:#5b6164;
  --home-ease:cubic-bezier(.22,1,.36,1);
  --home-gutter:clamp(20px,4vw,64px);
  --home-photo-height:clamp(280px,25vw,400px);
}
.editorial-opening{max-width:1440px;box-sizing:border-box;margin:24px auto 80px;padding:40px var(--home-gutter);display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(32px,5vw,80px);align-items:center;text-align:left;background:var(--home-forest);color:white;border-radius:28px}
@media(min-width:1441px){.editorial-opening{max-width:calc(100% - 80px)}}
@media(min-width:769px) and (max-width:1480px){.editorial-opening{margin-left:24px;margin-right:24px}}
.editorial-opening .hello{padding:0;margin:0;max-width:none;min-width:0}
.editorial-opening .hello h1{font-size:clamp(48px,5.2vw,80px);font-weight:600;line-height:1.17;letter-spacing:-.035em;color:white;margin:0;text-wrap:balance}
.editorial-opening .hello p{font-size:17px;margin:28px 0;max-width:28em;line-height:1.9;color:var(--home-mist);text-wrap:pretty}
.editorial-opening .hello .editorial-kicker{font-size:15px;color:var(--home-mist);margin:0 0 32px}
.editorial-opening .hello-cta{justify-content:flex-start;gap:16px 24px;margin-top:36px}
.editorial-opening .hello-cta .el-button{border-radius:999px;padding:15px 24px;min-height:48px;font-size:15px;line-height:1.2;transition:background-color .2s var(--home-ease),transform .2s var(--home-ease)}
.editorial-opening .hello-cta .el-button--primary{background:var(--home-mist);border-color:var(--home-mist);color:var(--home-forest)}
.editorial-opening .hello-cta .el-button--primary:hover{background:white;border-color:white}
.editorial-opening .hello-cta .hello-tickets{border:0;padding:15px 0;background:transparent;color:white}
.editorial-opening .hello-cta a:active{transform:scale(.98)}
.editorial-opening a:focus-visible{outline:3px solid var(--home-mist);outline-offset:6px}
.editorial-opening .hello .editorial-detail{font-size:14px;color:var(--home-mist);margin:36px 0 0}
.editorial-opening--solo{grid-template-columns:1fr;min-height:420px}
.editorial-opening--solo .hello{max-width:800px;margin:24px auto;text-align:center}
.editorial-opening--solo .hello p{margin-left:auto;margin-right:auto}
.editorial-opening--solo .hello-cta{justify-content:center}
.editorial-feature{position:relative;display:block;min-width:0;overflow:hidden;border-radius:18px;text-decoration:none;color:var(--ink);background:white;isolation:isolate;box-shadow:0 16px 56px #06281e33}
.editorial-feature>img{display:block;height:var(--home-photo-height);width:100%;object-fit:cover;transition:transform .7s var(--home-ease);transform-origin:center center;background:var(--home-forest)}
.editorial-feature-error{display:grid;align-content:center;text-align:center;box-sizing:border-box;width:100%;height:var(--home-photo-height);padding:64px 24px 24px;background:var(--home-forest);color:var(--home-mist);font-size:16px;line-height:1.8}
.editorial-feature>img[hidden],.editorial-feature-error[hidden]{display:none}
.editorial-feature-stamp{position:absolute;top:20px;left:20px;z-index:1;padding:9px 14px;border-radius:999px;background:#fff;color:var(--home-forest);font-size:14px;font-weight:500;line-height:1.5}
.editorial-feature-copy{position:relative;padding:24px 28px;background:#fff;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start}
.editorial-feature-copy h2{font-size:clamp(24px,2.2vw,34px);line-height:1.35;letter-spacing:-.025em;margin:0 0 10px;color:var(--ink);overflow-wrap:anywhere}
.editorial-feature-copy p{font-size:15px;line-height:1.7;margin:4px 0;color:var(--home-caption);max-width:100%;overflow-wrap:anywhere}
.editorial-feature-copy .editorial-budget{font-size:14px;max-width:65ch}
.editorial-feature-copy b{display:flex;gap:20px;align-items:center;padding-top:16px;margin-top:16px;font-size:15px;border-top:1px solid var(--line);width:100%;font-weight:600;justify-content:space-between;color:var(--action)}
.editorial-feature-arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--fill);font-size:20px;flex-shrink:0;transition:transform .25s var(--home-ease),background-color .25s var(--home-ease),color .25s var(--home-ease)}
@media(hover:hover) and (pointer:fine){
 .editorial-feature:hover>img{transform:scale(1.025)}
 .editorial-feature:hover .editorial-feature-arrow{transform:rotate(45deg);background:var(--action);color:white}
 .feat-card:hover img{transform:scale(1.035)}
 .editorial-tool-links a:hover b{transform:translateX(4px);color:var(--action)}
}
.editorial-feature:focus-visible .editorial-feature-arrow{background:var(--action);color:white}
.editorial-feature:active .editorial-feature-arrow{transform:scale(.92)}
@media(prefers-reduced-motion:no-preference){
 .editorial-feature>img{animation:home-photo-arrive .8s var(--home-ease)}
 @keyframes home-photo-arrive{from{transform:scale(1.035)}to{transform:scale(1)}}
}
.editorial-section-head{max-width:1280px;box-sizing:border-box;margin:0 auto 40px;padding:0 var(--home-gutter);display:flex;justify-content:space-between;align-items:flex-end;gap:24px;text-align:left}
.editorial-section-head h2{font-size:clamp(28px,3vw,40px);line-height:1.35;letter-spacing:-.025em;margin:0;max-width:18ch}
.editorial-section-head p{font-size:15px;line-height:1.7;color:var(--ink-2);margin:0;max-width:30ch}
.home-gallery{padding:0 0 28px;background:#fff;margin:0}
.home .gallery-toolbar{padding-top:24px;gap:12px 20px}
.home .gallery-modes{padding:4px;background:var(--fill);border-radius:999px;gap:2px}
.home .gallery-modes button{min-height:44px;padding:9px 18px;border:0;border-radius:999px;background:transparent;font-size:14px;color:var(--ink-2);transition:background-color .2s var(--home-ease),color .2s var(--home-ease)}
.home .gallery-modes button[aria-pressed=true]{color:var(--ink);background:white;box-shadow:0 1px 5px #00000012}
.home .gallery-modes button:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.home .carousel-status{color:var(--home-caption);font-size:14px;margin-top:14px}
.home .stats{padding:28px 24px 48px;gap:64px;background:#fff}
.home .stats b{font-size:20px;font-variant-numeric:tabular-nums}
.home .stats span{font-size:14px}
.home .feat{max-width:1280px;box-sizing:border-box;padding:64px var(--home-gutter);text-align:left}
.feat-head{margin-bottom:36px;align-items:baseline}
.feat-head h2{font-size:clamp(28px,3vw,40px);font-weight:600;letter-spacing:-.025em}
.feat-head a{padding:12px 0;min-height:44px;box-sizing:border-box;font-size:15px}
.feat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}
.feat-img{border-radius:16px;overflow:hidden}
.feat-img img{transition:transform .6s var(--home-ease)}
.feat-name{font-size:20px;line-height:1.5;margin-top:16px;letter-spacing:-.01em}
.feat-sub{font-size:14px;margin-top:8px}
.feat-card{min-width:0}
.feat-card:first-child{grid-column:span 2;grid-row:span 2}
.feat-card:first-child .feat-img{aspect-ratio:1.28}
.feat-card:first-child .feat-name{font-size:28px}
.feat-card:focus-visible{outline:3px solid var(--action);outline-offset:6px;border-radius:16px}
.feat-budget{margin:8px 0 0;font-size:14px;color:var(--home-caption);line-height:1.6;overflow-wrap:anywhere}
.editorial-toolbox{max-width:1280px;box-sizing:border-box;margin:24px auto 0;padding:64px var(--home-gutter);display:grid;grid-template-columns:1fr 1fr;gap:80px;text-align:left;background:var(--fill);border-radius:24px}
.editorial-toolbox h2{font-size:clamp(28px,3vw,40px);line-height:1.4;letter-spacing:-.025em;margin:0}
.editorial-toolbox p{font-size:16px;color:var(--ink-2);line-height:1.8;margin-top:24px;max-width:30ch}
.editorial-tool-links a{display:block;padding:20px 0;text-decoration:none;border-bottom:1px solid var(--line)}
.editorial-tool-links a:first-child{padding-top:0}
.editorial-tool-links a:last-child{border:0;padding-bottom:0}
.editorial-tool-links span{display:block;font-size:14px;color:var(--home-caption);margin-bottom:10px}
.editorial-tool-links b{display:block;font-size:18px;font-weight:500;color:var(--ink);line-height:1.5;transition:transform .2s var(--home-ease),color .2s var(--home-ease)}
.editorial-tool-links a:focus-visible{outline:2px solid var(--action);outline-offset:6px;border-radius:4px}
@media(max-width:1000px){
 .editorial-opening{padding:32px;gap:32px;margin-bottom:64px}
 .editorial-opening .hello h1{font-size:48px}
 .editorial-feature-copy{padding:20px}
 .editorial-feature-copy h2{font-size:26px}
 .editorial-opening .hello p{font-size:16px}
 .editorial-section-head{display:block}
 .editorial-section-head p{max-width:none;margin-top:16px}
}
@media(max-width:768px){
 .editorial-opening{display:flex;flex-direction:column;align-items:stretch;margin:12px 12px 48px;padding:28px 20px 20px;gap:28px;border-radius:22px}
 .editorial-opening .hello h1{font-size:clamp(36px,9.5vw,56px);line-height:1.2}
 .editorial-opening .hello p{font-size:16px;margin:20px 0;line-height:1.7}
 .editorial-opening .hello .editorial-kicker{margin-bottom:20px;font-size:14px}
 .editorial-opening .hello-cta{margin-top:20px;gap:8px 20px}
 .editorial-opening .hello-cta .el-button{font-size:14px;padding:14px 18px;min-height:44px}
 .editorial-opening .hello-cta .hello-tickets{padding:14px 0}
 /* The same catalogue count appears below the gallery; don't repeat it above the destination. */
 .editorial-opening .hello .editorial-detail{display:none}
 .editorial-opening--solo .hello{margin:0;text-align:left}
 .editorial-opening--solo .hello-cta{justify-content:flex-start}
 .editorial-feature{border-radius:14px}
 .editorial-feature>img,.editorial-feature-error{height:auto;aspect-ratio:16/9}
 .editorial-feature-stamp{top:14px;left:14px;padding:7px 12px;font-size:14px}
 .editorial-feature-copy{padding:20px}
 .editorial-feature-copy h2{font-size:26px}
 .editorial-feature-copy b{justify-content:flex-start;gap:12px}
 .editorial-section-head{padding:0 24px;margin-bottom:28px}
 .editorial-section-head h2{font-size:28px;line-height:1.4}
 .home .stats{gap:24px;padding:16px 20px 32px}
 .home .stats b{font-size:20px}.home .stats span{font-size:14px}
 .home .feat{padding:40px 24px}
 .feat-head{align-items:center;gap:16px}.feat-head h2{font-size:28px}
 .feat-head a{margin-right:0;white-space:nowrap;font-size:14px}
 .feat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}
 .feat-card:first-child{grid-row:auto}.feat-card:first-child .feat-img{aspect-ratio:16/10}
 .feat-card:first-child .feat-name{font-size:24px}.feat-name{font-size:18px;margin-top:12px}
 .feat-sub,.feat-budget{font-size:14px;line-height:1.6}
 .editorial-toolbox{grid-template-columns:1fr;gap:24px;padding:32px 24px;margin:16px 12px 0;border-radius:22px}
 .editorial-toolbox h2{font-size:28px}.editorial-toolbox p{margin-top:16px}
 .editorial-tool-links b{font-size:17px}
}
@media(max-width:359px){.home .stats{gap:12px}.home .stats span{font-size:14px;max-width:7em}.editorial-opening{padding-left:16px;padding-right:16px}}
@media(prefers-reduced-motion:reduce){
 .home *, .home *::before, .home *::after{animation:none!important;transition:none!important}
 .editorial-feature:hover>img,.feat-card:hover img,.editorial-tool-links a:hover b{transform:none}
 .editorial-feature:hover .editorial-feature-arrow{transform:none}
}
