/* Final public concept: one layout, three editorial campaigns. */
body{--campaign-bg:#0e3a5c;--campaign-ink:#ffffff;--campaign-accent:#13a8e1;--campaign-muted:#ffffff;--campaign-rule:#ffffff35}
body[data-campaign=canvas]{--campaign-bg:#d1d2d442;--campaign-ink:#0e3a5c;--campaign-accent:#ff5f00;--campaign-muted:#58585a;--campaign-rule:#a8bbc8}
.opening{background:var(--campaign-bg);color:var(--campaign-ink);grid-template-rows:minmax(0,1fr) 104px;transition:background-color .35s,color .35s}
.hero-copy>.eyebrow,.hero-reassurance{color:var(--campaign-muted)}
.opening .accent{color:var(--campaign-accent)}
.opening .hero-description{color:var(--campaign-ink)}
.opening .hero-actions .primary{background:var(--yellow);color:var(--navy)}
.opening .text-button{color:var(--campaign-ink)}
.hero-copy:after{background:var(--campaign-accent)}
.hero-visual:after{background:var(--campaign-accent)}
.hero-visual{padding-bottom:23px}
.photo-frame{height:100%;clip-path:polygon(0 0,87% 0,100% 14%,100% 100%,0 100%)}
.yellow-corner{display:none}
.photo-label{color:white}
.blueprint-card{display:none}
.campaign-bar{grid-column:1/-1;display:flex;align-items:center;gap:26px;border-top:1px solid var(--campaign-rule);z-index:4;position:relative}
.campaign-intro{min-width:210px}.campaign-intro .eyebrow{font-size:9px;color:var(--campaign-muted);display:block;margin-bottom:7px}.campaign-intro strong{font-size:17px;font-weight:400}
.campaign-options{display:grid;grid-template-columns:repeat(3,1fr);flex:1;gap:16px}
.campaign-options button{display:flex;align-items:center;gap:12px;border:0;border-top:2px solid transparent;background:transparent;color:var(--campaign-ink);padding:16px 0;text-align:left;min-height:58px}
.campaign-options button>span{font-size:12px;color:var(--campaign-muted);font-variant-numeric:tabular-nums}
.campaign-options strong{font-size:16px;font-weight:400}.campaign-options b{font-size:22px;font-weight:400;margin-left:auto;opacity:.45;transition:transform .2s}
.campaign-options button[aria-pressed=true]{border-top-color:var(--campaign-accent)}
.campaign-options button[aria-pressed=true] b{color:var(--campaign-accent);opacity:1}
.campaign-options button:hover b{transform:translate(2px,-2px);opacity:1}
.campaign-bar .motion-button{color:var(--campaign-ink);min-width:64px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body[data-campaign=destination]{--campaign-bg:#0e3a5c;--campaign-accent:#ffdd00}
body[data-campaign=destination] .hero-visual{position:absolute;inset:0;width:auto;height:auto;padding:0;z-index:0;display:block;opacity:1}
body[data-campaign=destination] .photo-frame{clip-path:none;height:100%;width:100%}
body[data-campaign=destination] .image-shade{inset:0;height:100%;background:linear-gradient(90deg,#0e3a5ced 0%,#0e3a5ca8 48%,#0e3a5c33 100%),linear-gradient(0deg,#0e3a5cbd,transparent 50%)}
body[data-campaign=destination] .photo-label{display:none}
body[data-campaign=destination] .image-caption{left:auto;right:var(--gutter);bottom:140px;max-width:270px;text-align:right;font-size:12px;letter-spacing:.1em;line-height:1.7}
body[data-campaign=destination] .diagonal-arrow,body[data-campaign=destination] .hero-visual:after{display:none}
.intro.section{background:#98d5e82f}.intro h2 em{color:#34657f}.proof strong{color:#0e3a5c}
.start-section{background:#ffffff}.journey-card{border-radius:0}.journey-card.first{background:#98d5e835}.journey-card.second{background:#ff5f001b}.journey-card.third{background:#0e3a5c;color:white}
.journey-card.third p{color:#ffffff}.journey-card.third .card-link{border-color:#ffffff40}
.spaces-section{background:#d1d2d442}.guide-section{background:#98d5e835}.guide-section h2 em{color:#34657f}.closing{background:#0e3a5c;color:white}.closing h2 em{color:#34657f}.closing .eyebrow{color:#ffffff}.round-cta{background:#ffdd00;color:#0e3a5c}
@media(max-width:1120px){.campaign-bar{gap:20px}.campaign-intro{min-width:180px}.campaign-options{gap:14px}.campaign-options strong{font-size:15px}.campaign-options button{gap:8px}}
@media(max-height:730px) and (min-width:761px){.opening{grid-template-rows:minmax(0,1fr) 88px}.hero-visual{padding-bottom:18px}.campaign-options button{padding:12px 0}.campaign-intro{min-width:180px}body[data-campaign=destination] .image-caption{bottom:118px}}
@media(max-width:760px){
 .opening{grid-template-rows:minmax(0,1fr) auto;padding-top:24px;min-height:568px}
 .hero-copy h1{font-size:clamp(43px,12.3vw,64px)}
 .hero-copy>.eyebrow{font-size:8px;max-width:none}
 .hero-description{font-size:15px;max-width:420px;min-height:4.5em}
 .hero-copy:after{margin-top:18px;width:48px;height:3px;background:var(--campaign-accent)}
 .hero-visual{display:none!important}
 .campaign-bar{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px 0 20px;align-self:end}
 .campaign-intro{min-width:0}.campaign-intro strong{font-size:15px}.campaign-intro .eyebrow{font-size:8px;margin-bottom:3px}
 .campaign-options{grid-row:2;grid-column:1/-1;gap:12px}
 .campaign-options button{display:grid;grid-template-columns:auto 1fr;gap:5px;padding:12px 0 0;align-content:start;min-height:70px}
 .campaign-options button>span{font-size:10px}.campaign-options strong{grid-row:2;grid-column:1/-1;font-size:13px;white-space:nowrap}.campaign-options b{grid-row:1;grid-column:2;font-size:17px;line-height:1}
 .campaign-bar .motion-button{grid-row:1;grid-column:2;font-size:12px;min-width:54px}
 body[data-campaign=destination] .hero-visual{display:block!important}
 body[data-campaign=destination] .image-caption{display:none}
 body[data-campaign=destination] .image-shade{background:linear-gradient(90deg,#0e3a5ce8,#0e3a5c90),linear-gradient(0deg,#0e3a5cd9,transparent 75%)}
 .opening .hero-actions{grid-template-columns:1.3fr 1fr}.opening .hero-actions .button{font-size:14px}.opening .hero-actions .text-button{font-size:13px}
}
@media(max-width:380px){.hero-copy h1{font-size:44px}.hero-copy>.eyebrow{font-size:7px}.opening{padding-top:22px}.campaign-options{gap:8px}.campaign-options strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){.opening,.campaign-options b{transition:none}}

.opening .hero-actions .instant-hero-cta {
  border: 1px solid var(--campaign-ink);
  color: var(--campaign-ink);
  gap: 16px;
}
.opening .hero-actions .instant-hero-cta small {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  font-weight: 400;
}
.opening .hero-actions { align-items: stretch; }
.opening .hero-actions .instant-hero-cta:hover {
  background: var(--campaign-ink);
  color: var(--campaign-bg);
}
.opening .hero-guide {
  font-size: 14px;
  gap: 8px;
  min-height: 44px;
  margin-top: 6px;
}
.opening .hero-guide .web-arrow { width: 16px; height: 16px; }
@media (max-width: 760px) {
  .opening .hero-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .opening .hero-actions .instant-hero-cta { gap: 5px; }
  .opening .hero-actions .web-arrow { width: 17px; height: 17px; }
}
