/* LOTE 2.7B continuation: clear navigation, daylight heroes and light page endings. */
.ah-v121{--paper:#fafbf8;--cream:#f4f6ee;--muted:#455e64;background:#fff;color:#173d43}
/* The mark remains untouched; dark pixels inside the small original logo are not a navigation band. */
.ah-v121>header,.ah-v121 .top,.ah-v121 .topbar{position:sticky;inset:auto;top:0;z-index:40;background:#fdfefb;color:#173d43;border-bottom:1px solid #dce6df;box-shadow:0 3px 16px #173d4308;backdrop-filter:none}
.ah-v121>header{padding-block:0}
.ah-v121 .nav{min-height:76px}
.ah-v121 header :where(a,.back,.nav-cta){color:#173d43}
.ah-v121 header :where(.back,.select,.language-select,.menu-toggle){background:#fff;color:#173d43;border-color:#bacfc6}
.ah-v121 header :where(.nav-cta){border-color:#ba913f;background:#faf5e8}
.ah-v121 header .lang{color:#355b58}
.ah-v121 header .lang.active{background:#e9c777;color:#173d43}
.ah-v121 header .languages{border-color:#c8d9d2}
.ah-v121 .menu{background:#fdfefb;color:#173d43}
.ah-v121 .menu a{color:#173d43;border-color:#dce6df}
.ah-v121 header :where(.select,.language-select) option{background:#fff;color:#173d43}
/* No final green wall followed by a black wall. */
.ah-v121.ah-v121.ah-v121 :where(.cta,.closing,.final-cta,.ah-final,.contact-bar,.cta-panel,.cta-panel:last-child,.ls-final){background:#eff6ee;color:#173d43;box-shadow:none}
.ah-v121.ah-v121.ah-v121 :where(.cta,.closing,.final-cta,.ah-final,.contact-bar,.cta-panel) :where(.title,h1,h2,h3,strong){color:#173d43}
.ah-v121.ah-v121.ah-v121 :where(.cta,.closing,.final-cta,.ah-final,.contact-bar,.cta-panel) p{color:#455e64}
.ah-v121.ah-v121.ah-v121 :where(.cta,.closing,.final-cta,.ah-final,.contact-bar,.cta-panel) :where(.eyebrow,.kicker){color:#846020}
.ah-v121.ah-v121.ah-v121 :where(.cta,.closing,.final-cta,.ah-final,.contact-bar,.cta-panel) :where(.secondary,.collection-cta .btn){color:#173d43;border-color:#17646b;background:#fff}
.ah-v121 .ah-final .ah-quick a{background:#fff;color:#173d43;border-color:#c8d9d2}
.ah-v121 footer{background:#f7f5ec;color:#355b58;border-top:1px solid #dce3d7}
.ah-v121 footer :where(strong,a,.footer-copy strong){color:#173d43}
.ah-v121 footer :where(.footer-copy,.foot,.footer){color:#455e64}
/* Original photographs remain. A light copy panel permits almost no full-image shade. */
.ah-v121:not(.ah-v-home) .hero{min-height:640px;color:#173d43;background-color:#eef5f2}
.ah-v121:not(.ah-v-home) .hero:after{background:linear-gradient(0deg,rgba(255,255,255,.08),transparent 45%);pointer-events:none}
.ah-v121:not(.ah-v-home) .hero :where(.hero-copy,.hero-content){background:rgba(255,255,255,.94);color:#173d43;border-radius:20px;padding:32px 36px;margin-block:56px;max-width:780px;width:min(780px,calc(100% - 40px));box-shadow:0 8px 30px #173d4308}
.ah-v121:not(.ah-v-home) .hero :where(h1,.lead,.hero-note,.eyebrow){color:#173d43}
.ah-v121:not(.ah-v-home) .hero h1 em{color:#17646b}
.ah-v121:not(.ah-v-home) .hero :where(.lead,.campaign span){color:#455e64}
.ah-v121:not(.ah-v-home) .hero :where(.secondary,.hero-note){color:#173d43;border-color:#a8c4b9;background:#fff}
.ah-v121:not(.ah-v-home) .hero .campaign{border-color:#bcd0c5;color:#173d43}
.ah-v121:not(.ah-v-home) .hero .campaign small{color:#846020}
.ah-v121:not(.ah-v-home) .hero-grid{background:rgba(255,255,255,.94);color:#173d43;border-radius:20px;padding:36px;margin-block:48px;gap:34px}
.ah-v121:not(.ah-v-home) .hero-grid .video{box-shadow:none;border-color:#d5e3db}
/* Existing background gradients embedded in these heroes are cleared without replacing photography. */
.ah-v121.ah-v-support .hero,.ah-v121.ah-v-iceland .hero{background-image:url('images/destinations/cards/editorial-v101/iceland-card.webp')}
.ah-v121.ah-v-christmas .hero{background-image:url('christmas-strasbourg.jpg')}
.ah-v121.ah-v-newyear .shade{background:transparent}
.ah-v121.ah-v-newyear .hero-copy{z-index:3}
.ah-v121.ah-v-gift .hero:after,.ah-v121.ah-v-cruise .hero:after{background:transparent}
.ah-v121.ah-v-hub .hero{min-height:320px;background:#eaf3f0}
.ah-v121.ah-v-hub .hero-copy{background:transparent;box-shadow:none;margin-block:20px;padding:38px 0;max-width:1220px;width:min(1220px,calc(100% - 40px))}
.ah-v121 .partner-hero{background:#eef5f0;color:#173d43}
.ah-v121 .partner-hero p{color:#455e64}
/* Secondary dark blocks in campaign and support pages become clear information surfaces. */
.ah-v121.ah-v121.ah-v121 :where(.before,.moods,.route#roteiro,.company,.how,.property-markets){background:#f1f6f0;color:#173d43}
.ah-v121.ah-v121.ah-v121 :where(.before,.moods,.route#roteiro,.company,.how,.property-markets) :where(.title,h2,h3){color:#173d43}
.ah-v121.ah-v121.ah-v121 :where(.before,.moods,.route#roteiro,.company,.how,.property-markets) :where(p,li){color:#455e64}
.ah-v121.ah-v121.ah-v121 :where(.before,.moods,.route#roteiro,.company,.how,.property-markets) :where(.eyebrow,.kicker){color:#846020}
.ah-v121 .before .official-link{background:#fff;border-color:#c8d9d2;color:#173d43}
.ah-v121 .before .official-link span{color:#455e64}
.ah-v121 .note{background:#e7f1e9;color:#173d43}
.ah-v121 .note :where(h3,p,ul){color:#173d43}
.ah-v121.ah-v121 .local-services .ls-provider{background:#e5f1e8;color:#173d43}
.ah-v121.ah-v121 .local-services .ls-provider :where(h3,p,.ls-eyebrow,.ls-steps,.ls-steps span){color:#173d43}
.ah-v121.ah-v121 .local-services .ls-provider .secondary{background:#fff;color:#173d43;border-color:#9fbeac}
.ah-v121.ah-v121 .local-services .ls-provider .ls-steps li{border-color:#a8c7b3}
.ah-v121.ah-v121 .local-services .ls-provider-visual{background:#f6faf3;border-color:#a8c7b3}
.ah-v121.ah-v121 .local-services .ls-provider-visual>span{color:#846020}
.ah-v121.ah-v121 .local-services .ls-provider-visual div{color:#355b58}
.ah-v121 .wellness-intents,.ah-v121 .wellness-continuity,.ah-v121 .property-markets{background:#edf5ec;color:#173d43}
.ah-v121 .wellness-intents :where(h3,h4,p),.ah-v121 .wellness-continuity :where(h3,h4,p),.ah-v121 .property-markets :where(h3,h4,p){color:#173d43}
/* Plain static legacy campaigns: no source changes to photography, text or controls. */
.ah-v121[data-visual-page="marrocos"] .hero:after,.ah-v121[data-visual-page="cabo-verde"] .hero:after{background:transparent}
.ah-v121[data-visual-page="pascoa-2027"] .hero{background-image:url('easter-seville.jpg')}
/* Strong buttons remain signatures rather than full-page backgrounds. */
.ah-v121.ah-v121.ah-v121 :where(.btn.primary,.button.primary){color:#173d43}
.ah-v121.ah-v-home .hero .primary,.ah-v121 .local-services .primary{background:#17646b;color:#fff}
.ah-v121 .ah-final .ah-quick a:hover{background:#e2efdf;color:#173d43}
@media(max-width:960px){
 .ah-v121 .menu{background:#fdfefb;border:1px solid #dce6df;box-shadow:0 12px 28px #173d4312}
 .ah-v121 .menu-toggle{background:#fff;color:#173d43;border-color:#bacfc6}
 .ah-v121 .menu .nav-cta{background:#faf5e8;color:#173d43;border-color:#ba913f}
}
@media(max-width:700px){
 .ah-v121>header,.ah-v121 .top,.ah-v121 .topbar{background:#fdfefb;color:#173d43}
 .ah-v121 .nav{min-height:68px;gap:10px}
 .ah-v121:not(.ah-v-home) .hero{min-height:560px}
 .ah-v121:not(.ah-v-home) .hero :where(.hero-copy,.hero-content){padding:25px 22px;margin-block:32px;border-radius:16px;width:calc(100% - 28px)}
 .ah-v121:not(.ah-v-home) .hero h1{font-size:clamp(2.4rem,9vw,3.25rem);line-height:1.08}
 .ah-v121:not(.ah-v-home) .hero-grid{padding:25px 22px;margin-block:28px;grid-template-columns:minmax(0,1fr);width:calc(100% - 28px)}
 .ah-v121.ah-v-hub .hero{min-height:260px}
 .ah-v121.ah-v-hub .hero-copy{padding:26px 0;background:transparent}
 .ah-v121.ah-v-destination[data-visual-lot="1"] .hero{background-color:#fff;background-size:100% auto;min-height:0;color:#173d43}
 .ah-v121.ah-v-destination[data-visual-lot="1"] .hero:after{background:linear-gradient(180deg,transparent 42vw,#fff 65vw)}
 .ah-v121.ah-v-destination[data-visual-lot="1"] .hero-copy{background:#fff;margin-block:0;padding:calc(62.5vw + 20px) 0 42px;border-radius:0;box-shadow:none;color:#173d43}
 .ah-v121.ah-v121.ah-v121 :where(.cta,.closing,.final-cta,.ah-final,.cta-panel,.ls-final){background:#eff6ee;color:#173d43}
 .ah-v121 footer{background:#f7f5ec;color:#355b58}
 .ah-v121 header :where(.back,.select,.language-select){max-width:100%;font-size:.75rem}
 .ah-v121.ah-v121.ah-v121 :where(.actions,.ls-actions){gap:10px}
 .ah-v121.ah-v121.ah-v121 :where(.actions,.ls-actions) :where(.btn,.button){min-height:52px;max-width:100%}
 .ah-v121.ah-v121.ah-v121 :where(.hero-grid,.hero-copy,.hero-content,.nav)>*{min-width:0}
}
@media(prefers-reduced-motion:reduce){.ah-v121 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.ah-v121.ah-v121.ah-v121 .ah-final{background:#eff6ee;color:#173d43}
.ah-v121.ah-v121.ah-v121 .ah-final .title{color:#173d43}
.ah-v121.ah-v121.ah-v121 .ah-final .ah-quick a{background:#fff;color:#173d43;border-color:#c8d9d2}
.ah-v121.ah-v121 .property-markets :where(h3,h4,p,li){color:#173d43}
.ah-v121 .hero :where(h1,h2,p){overflow-wrap:break-word}
@media(max-width:700px){
 .ah-v121>header,.ah-v121 .top,.ah-v121 .topbar{height:auto}
 .ah-v121 header .nav{height:auto;min-height:68px;padding-block:8px}
 .ah-v121 header :where(.tools,.nav-tools){display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:0;max-width:calc(100% - 120px)}
 .ah-v121 header .logo{width:110px;height:54px;flex-shrink:0}
 .ah-v121 header .brand-logo{width:140px;height:54px}
 .ah-v121 header :where(.back,.select,.language-select){min-height:38px;height:auto;line-height:1.35}
 .ah-v121 header .back{padding-block:7px;white-space:normal;text-align:center}
}
