/* Scoped exclusively to the hero; all other sections retain their original styles. */
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:660px;max-height:none;background:#18212c url('assets/madrid-hero.png') center 53%/cover no-repeat;color:#fffaf2}
.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,18,29,.85) 0%,rgba(12,18,29,.72) 40%,rgba(12,18,29,.27) 100%)}
.hero .hero-copy{width:100%;max-width:1400px;margin:auto;padding:78px 8%;position:relative;z-index:1}
.hero .hero-copy h1{font-size:clamp(48px,5.4vw,82px);line-height:1.08;color:#fffaf2;max-width:800px;text-shadow:0 2px 20px #0002}
.hero .hero-copy h1 em{color:#e9c9a1}
.hero .eyebrow{color:#fff5e7;max-width:650px}.hero .line{background:#dcb78c}
.hero .hero-description{color:#f3ede4;max-width:420px;margin:28px 0;font-size:16px;line-height:1.75}
.hero .hero-book{background:#f5eadb;color:#282a2c;border-color:#f5eadb}.hero .hero-book:hover{background:#fffaf2;color:#282a2c}
.hero .hero-phone{color:#fffaf2;border-color:#ffffff70;display:inline-flex;gap:8px;margin-left:22px}
.hero .hero-footnote{color:#f3ede4;margin-top:30px}.hero .hero-visual{display:none}
@media(min-width:1600px){.hero{min-height:720px}}
@media(max-width:760px){.hero{min-height:650px;background-position:58% center}.hero:before{background:linear-gradient(90deg,#0c121dcc,#0c121d80),linear-gradient(0deg,#0c121d66,transparent)}.hero .hero-copy{padding:58px 7%}.hero .hero-copy h1{font-size:clamp(40px,8.8vw,58px)}.hero .hero-description{max-width:380px}.hero .hero-phone{display:flex;width:fit-content;margin:12px 0 0}.hero .hero-footnote{font-size:11px;margin-top:24px}.hero .eyebrow{line-height:1.6}}
@media(max-width:360px){.hero .hero-copy h1{font-size:37px}.hero .hero-copy{padding-top:44px;padding-bottom:44px}.hero{min-height:620px}}.hero .hero-phone span{color:#fffaf2}.hero .hero-phone:hover,.hero .hero-phone:hover span{color:#e9c9a1}
/* Integrated header, scoped to the cover and its navigation. */
.topline{display:none}
.header{position:fixed;inset:0 0 auto;height:96px;padding:0 5.5%;background:transparent;border-bottom:1px solid #ffffff29;color:#fffaf2;transition:background .2s,color .2s,box-shadow .2s}
.header .brand-name{font-size:42px}.header .brand-dot{color:#e9c9a1}.header .brand-small{font-size:8px}.header .brand-city{font-size:7px}
.header nav{gap:28px}.header nav a:hover,.header nav a[aria-current="location"]{color:#e9c9a1}
.header .languages button,.header .languages button[aria-pressed=true]{color:#fffaf2}
.header .desktop-cta{background:#f5eadb;color:#282a2c;border-color:#f5eadb;min-height:46px;padding:12px 19px}
.header .desktop-cta:hover{background:#fffaf2}.header .menu-toggle span{background:currentColor}
.header.is-solid{background:var(--paper);color:var(--ink);border-color:var(--line);box-shadow:0 2px 16px #00000008}
.header.is-solid .brand-dot{color:var(--rust)}.header.is-solid .languages button{color:var(--muted)}.header.is-solid .languages button[aria-pressed=true]{color:var(--ink)}
.header.is-solid .desktop-cta{background:var(--rust);color:white;border-color:var(--rust)}
.header.is-solid nav a:hover,.header.is-solid nav a[aria-current="location"]{color:var(--rust)}
.hero{min-height:760px;min-height:max(700px,94svh);background-position:center 55%}
.hero:before{background:linear-gradient(180deg,#0b1324b3 0%,transparent 32%),linear-gradient(90deg,#0b1423d9 0%,#0b1423a6 40%,#0b142326 100%)}
.hero .hero-copy{padding:162px 8% 70px}.hero .hero-copy h1{font-size:clamp(48px,5.2vw,82px)}
.hero .hero-phone{margin-left:0;margin-top:18px;gap:10px;align-items:center}.hero .hero-phone>span:first-child{font-size:12px;color:#e6dfd6}.hero .hero-footnote{margin-top:28px}
.header a:focus-visible,.header button:focus-visible,.hero a:focus-visible{outline-color:#e9c9a1}
@media(min-width:1600px){.hero{min-height:820px;min-height:max(760px,92svh)}}
@media(max-width:1100px){.header nav{gap:20px}.header-actions{gap:12px}}
@media(max-width:760px){.header{height:82px;padding:0 7%}.header .brand-name{font-size:37px}.header .brand{width:104px}.header nav{top:82px;background:var(--paper);color:var(--ink)}.header nav a:hover{color:var(--rust)}.header .brand-small{font-size:8px}.header .brand-city{font-size:7px}.header .languages{font-size:11px}.hero{min-height:730px;min-height:max(700px,92svh);background-position:57% center}.hero .hero-copy{padding:142px 7% 64px}.hero .hero-copy h1{font-size:clamp(39px,8.8vw,58px)}.hero .hero-description{margin-top:25px;margin-bottom:26px}.hero .hero-footnote{margin-top:25px}.hero:before{background:linear-gradient(180deg,#0b1324a6,transparent 35%),linear-gradient(90deg,#0b1423d1,#0b14236b)}}
@media(max-width:360px){.hero .hero-copy h1{font-size:37px}.hero .hero-copy{padding-top:128px;padding-bottom:54px}.hero{min-height:700px}}
@media(prefers-reduced-motion:reduce){.header{transition:none}}
.header .menu-toggle{color:inherit}
